Source alignment¶
The SDK is built from resources/openapi.yaml, which serves as the endpoint-coverage authority for the 30 service operations.
Okatana integration documentation informs response conventions, pagination, error behavior, scopes, retry safety, and operational examples.
Deliberate distinctions¶
API host¶
The supplied OpenAPI server value is relative: /api/v1. The SDK requires an explicit deployment URL and never defaults to the documentation domain.
Response schemas¶
Some endpoint responses lack a JSON schema. The SDK does not enforce strict object types for these responses. It returns ApiResponse and offers component models only for schemas defined by the contract: Project, Board, Ticket, Document (including document tags), and Error (ApiError).
page query parameter¶
Integration documentation describes Laravel pagination, while OpenAPI list operations expose per_page but not page. TicketListOptions and DocumentListOptions include an optional page parameter for compatibility. Verify this behavior with your deployment.
Ticket tag_ids¶
Integration documentation outlines a comma-separated tag_ids filter not present in the OpenAPI operation. TicketListOptions::tagIds exposes this parameter but it remains outside the official OpenAPI contract.
Updating the SDK¶
When the source specification changes:
- replace
resources/openapi.yaml; - run
composer test; - inspect the failing OpenAPI coverage test;
- add or update service methods and request objects;
- update endpoint and scope documentation;
- add request-emission tests for every changed operation.