Changelog
Changes to komplai's API, newest first. The version is info.version in the OpenAPI document.
1.3.0
The version this documentation describes.
- Complete request and response schemas, with examples, for Chat (GET /v1/models, POST /v1/chat/completions), Decide (POST /v1/decide, POST /v1/decide/batch) and Coding (GET /v1/coding/account, GET /v1/coding/models, POST /v1/coding/chat/completions). Before this version, the document listed these operations and referred to the hub for their requests and responses.
- Every response to a call the API handles carries a
Request-Idheader. SendX-Request-Idwith a UUID to have your own id used. - Every JSON error body has
request_idanddoc_urlbesideserror. The document describes the body ascomponents.schemas.Errorand lists every code with its statuses, meaning and what to do inx-komplai-error-codes. An error event in the Coding stream carries the same two fields. - Every operation and tag has
x-komplai-stability:stable,betaoralpha. Redact'sengineandsourcesare markedpreview. - POST /v1/chat/completions documents
eu_cloud_refused(502): komplai's EU cloud refused the call, so the model did not answer it. - The API accepts browser calls from developers.komplai.dk, so the consoles on this site can send calls, and lets the browser read
Request-Id,Retry-After,Location,Preference-Appliedand theX-RateLimit-*headers. - The document links to this site and to the hub's API area, where a member creates a personal API key.
20 October 2026
Changes to Redact while the document was at version 1.2.0.
Prefer: respond-asyncon POST /v1/redact and POST /v1/redact/file answers 202 with a text job instead of holding the connection. The text may then be as long as a text job allows.- A synchronous run that komplai estimates cannot finish within 300 seconds is refused before anything runs, with 413
use_job,estimatedSecondsandholdSeconds. - An interrupted text job resumes from its encrypted checkpoint. A job that makes no progress for 65 minutes ends with
redact_job_stalled. enginereviewis retired. A request that names it answers 400engine_retired, withhintnaming what to send instead.
1.2.0
Released on 19 October 2026.
- Redact calls can name the NER place (
nerDeployment:eu-deorlocal), the NER model (nerModel) and the language model (model). A place or model that cannot be used is refused by name and never replaced by another. - GET /v1/access lists the NER places and the models a call may name, with whether each can be used now.
1.1.0
Released on 19 October 2026.
- Organisation integration keys (
kp_org_) for Redact and GET /v1/access. - POST /v1/redact/restore puts the originals back into a text with labels such as
[PERSON-1]. - PDF and Word input Beta: POST /v1/redact/file and POST /v1/redact/file/jobs.
- The per-IP limit answers 429
rate_limitedwithRetry-Afterandx-ratelimit-*on every route. - The OpenAPI document gained readable
operationIds, a security scheme for each kind of key, the error codes for each status with an example, and examples for every Redact operation. GET /v1/openapi.json ignores theAuthorizationheader, so import tools that always send a key still get it.
1.0.0
The version before 19 October 2026: personal API keys (kp_live_) for Redact (pseudonymisation, detection and text jobs), GET /v1/access, Chat, Decide and Coding.