API & integration
API
A public, structured API reference with the full endpoint catalog, scopes, and cURL samples is at API reference.
Base URL: https://getokta.io/api/apps. Auth:
Authorization: Bearer <installation_token>.
Available endpoints (whoami, entity + entity/children (+ /{id} and
/{id}/logo) + entity/ancestors, education., employees.directory,
reports.builder. — see commit a164484 for the full table). Report
templates — the school's own letterheads — are GET /reports/templates and
POST /reports/templates/{id}/render, with reports.builder.write adding
POST/PATCH/DELETE /reports/templates for an app that proposes one; see
Printing on the school's letterhead.
Full list: https://partners.getokta.io/docs/openapi.json.
Every read of an entity's data (education/*, employees/directory,
tool-keys/*, reports/*) accepts ?entities=<ulid>,<ulid> or
?entity=<ulid> to read the entities beneath from a complex — for a person
holding tenants.children.view_members, never for an installation token. See
the chapter «Companies and complexes: the tree and its schools' data».
Pagination: ?page=2&per_page=50 (max 100/page). Responses include
data, total, per_page, current_page, last_page.
Idempotency: write operations accept Idempotency-Key: <uuid>.
Same key within 24 hours returns the cached response.