Process a chapter
Starts assemble and/or ocr on an uploaded chapter. On an assembled chapter assemble is skipped and OCR reads only pages not read yet, so it is safe to repeat. Runs in the background — poll GET /ext/v1/chapters/{id}/pipeline.
OCR is charged once per chapter, for the whole chapter, at the team's chapter rate (chapter_processing for a webtoon, chapter_processing_page for manga); repeat runs are free, and so is a chapter whose OCR was already paid on the website. 402 means the balance or key limit can't cover that price. The charge happens while processing runs and shows in GET /ext/v1/requests/{id} of the request that started it; it is final once the processing is DONE or FAILED.
apiKeyAuthorizationBearer <nlk_… (team API key)>id*stringuuidIdempotency-Key?stringUp to 255 characters, e.g. a UUID. A repeat with the same key is not done: 409 DUPLICATE_REQUEST.
length <= 255application/json- body
Processing steps; at least one must be true.
assemble?booleanBuild pages from the images: a webtoon strip is sliced into about pages pages, a manga image is one page.
width?|Page width: webtoon 600–800 (default 690), manga 600–1500 (default — the typical image width).
int32600 <= value <= 1500pages?|Webtoon only, required with assemble: about how many pages to slice into.
int321 <= value <= 500ocr?booleanFind and read text on every page not read yet. Needs assemble until the chapter is assembled.
language?LanguageSource language for ocr, not UND. Default — the project's (required if the project has none); a passed value is saved to the project.
"AR""AZ""BE""BG""BN""BS""CS""DA""DE""EL""EN""ES""ET""FA""FI""FR""HE""HI""HR""HU""HY""ID""IT""JA""KA""KK""KO""KY""LT""LV""MK""MN""MR""MS""NE""NL""NO""PL""PT""RO""RU""SK""SL""SQ""SR""SV""SW""TA""TE""TG""TH""TL""TR""UK""UND""UR""UZ""VI""ZH"Processing started.
application/json- response
Processing of a chapter.
id?stringuuidchapterId?stringuuidrequestId?|The request that started the processing; its cost — GET /ext/v1/requests/{requestId}. null — started on the website.
uuidstatus?stringDONE may still have items with ERROR, BUSY or PAYMENT_REQUIRED — check items.
"RUNNING""DONE""FAILED"wave?integerCurrent stage: -1 — queued (starts within seconds), 0 — assemble, 1 — OCR; higher — steps started on the website.
int32failure?|FAILED only: PAYMENT_REQUIRED — balance or key limit ran out on the way; ASSEMBLE_FAILED — pages could not be built.
"PAYMENT_REQUIRED""ASSEMBLE_FAILED"items?array<>One line per step × page. FINISHED means the operation ended; whether text was found is in the chapter's ocrDone.
createdAt?stringdate-timeupdatedAt?stringdate-timefinishedAt?|date-timecurl -X POST 'https://api.neurolate.com/ext/v1/chapters/497f6eca-6276-4993-bfeb-53cbbbba6f08/pipeline' \
-H 'Content-Type: application/json' \
-d '{}'{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"chapterId": "2a48aff7-27e7-4ab6-9471-1ee9c5632811",
"requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6",
"status": "RUNNING",
"wave": 0,
"failure": "PAYMENT_REQUIRED",
"items": [
{
"step": "ASSEMBLE",
"pageId": "347b9bf8-fe00-46f6-b8ca-1e06b3bd5809",
"status": "DISPATCHED"
}
],
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"finishedAt": "2019-08-24T14:15:22Z"
}List chapters of a project GET
Sorted by chapter number. Free.
Clean text off images POST
Removes text. Each image with something cleaned comes back whole, as a PNG of the same size; `blocks` lists its areas. Areas — your `masks`; for an image without masks we find them: on a BLOCK — the text inside it, on a PAGE — OCR blocks where text was read. - `tier=PREMIUM`, `mode=MASK` — a premium model per area. - `tier=PREMIUM`, `mode=BBOX` — redraws the whole bounding box with a stronger model; for text over a face or a very complex background. Its model cost is higher, so it lands nearer the top of the `api_clean_premium` range. Billing per cleaned area: STANDARD — `api_clean`, PREMIUM — `api_clean_premium`. An area we found adds `api_ocr_mask`: 1 on a BLOCK image, 2 on a PAGE. Before the work a hold is charged, after it the actual cost (see Billing).