Skip to content
WorkLogx
Menu· Open backend findings

Preview: this documentation describes the WorkLogx Public API V1. The V1 rollout to the production environment is not complete yet.

Open backend findings

Not part of the API contract. This page lists known differences between the current backend behaviour, the OpenAPI specification and the intended V1 contract. Items are open and may change. Do not build integrations that depend on the behaviour described here.

The guides document the current, verified behaviour. When a finding is fixed in the backend, the guides, the OpenAPI snapshot, the tests and this page are updated together.

#Behaviour findings

IDFindingStatus
BF-1conflict errors are returned with HTTP status 400, not 409.Open, backend decision pending
BF-2The Location header of 201 Created responses contains /v1/<resource>/<id> without the /api prefix of the public base URL.Open
BF-3Malformed input (an ID that is not a UUID, an invalid date or timestamp parameter, a request body that is not valid JSON) may result in 500 internal_error instead of a 4xx error.Unverified: derived from code reading, not confirmed by a runtime test
BF-4400 invalid_api_client can occur for create requests when the API client is in an internal state the integrator cannot change.Open
BF-5The detail field of problem responses is never set.Open, optional

#OpenAPI specification findings

The API reference is generated from a frozen snapshot of the specification. The following differences are known and are not corrected in the reference:

IDFinding
OAS-1The specification declares an http:// server URL. The reference shows the HTTPS TEST server as a preview.
OAS-2POST operations are documented with status 200. The API returns 201 Created.
OAS-3Error responses are not documented as application/problem+json; some reference unrelated page schemas.
OAS-4The specification contains an internal bearerAuth (JWT) security scheme. Public API requests use API keys only.
OAS-5Required scopes are only mentioned in operation descriptions, not in a machine-readable form.
OAS-6Tag names carry the prefix "Public API –".

#How to handle these findings

  • Treat conflict (BF-1) by its code, not by HTTP status.
  • Build resource URLs from the base URL and the returned id, not from Location (BF-2).
  • Validate IDs and dates on your side before sending requests (BF-3).
  • Expect 201 for successful POST requests regardless of the reference (OAS-2).