API Changelog
Changes to what the API sends and accepts: new fields, exception types and levels, delivery behaviour, limits and removals. It covers the service itself, so it applies whether you use the Python client or call the HTTP API directly. Changes to the Python client alone are in its release notes.
Compatibility policy
- Additive changes can arrive at any time. A new field in a message, a new enum value (an ask type, an exception type or level, a page type), a new optional form field, or a new header on a callback. Build your parser to ignore fields and enum values it does not know, rather than to reject the message.
- Callback delivery is at least once. The same message can reach your endpoint twice; see Delivery rules.
- Breaking changes are announced here before they take effect. Removing or renaming a field, changing a field's type, or removing an ask. Deprecated v1 ask types are removed after 90 days without use, as described in Upgrading from V1.
- Where a change could break older clients, it is gated on the client version. The server sends it only to clients that report a version known to parse it, as noted in each entry.
Changes
2026-09-25: READ_INCOMPLETE warning on COMPLETED
A read that finished with part of its output missing now says so: its COMPLETED message carries one exception with exception_level WARNING and exception_type READ_INCOMPLETE. WARNING is a new exception level, and the exception model gained two optional fields, ask_type and reason, which this warning leaves unset. The message stays successful and every result delivered stands. Sent only to requests reporting werk24 2.8.0 or newer, which no released client does yet. Requests without a client_version, such as direct HTTP API calls, are to receive it too; that is not in effect yet and will get its own entry here. See Incomplete reads.
2026-09-25: Callback requests are limited to about 4.6 MB (documented)
A request to /techread/read-with-callback carries the drawing in its own body, which is limited to 6 MiB after base64 encoding: about 4.6 MB for the whole request. The limit is not new; the docs previously quoted 10 MiB for this route. See Drawing File Size Limit.
2026-09-24: Callback delivery is retried, and carries X-Werk24-Delivery-Attempt
A callback POST that times out is now retried. A POST is tried up to 3 times in about 20 seconds when it could not connect, timed out, or was answered 408, 425, 429, 500, 502, 503 or 504. Every attempt carries the header X-Werk24-Delivery-Attempt (1, 2, 3), so a redelivery can be recognised: delivery is at least once. See Delivery rules.
2026-08-06: W24AskSheetAnonymization and W24AskSheetRebranding removed (documented)
Requests that still include these v1 ask types complete without a result for them. Use AskRedaction.
2026-07-16: DRAWING_PAGE_COUNT_TOO_LARGE (documented)
A redaction is refused for documents over 5 pages with this exception type. Sent only to clients reporting a version newer than 2.5.0. See Error Handling.