Developers
API reference
REST under /api/v1. Authenticate with Bearer API keys on Growth and Scale plans. Machine-readable OpenAPI is always available at the JSON endpoint.
Base URL https://app.otter.diy/api/v1
Auth Authorization: Bearer <api_key>
Keys Create in Settings → API keys. Each key is bound to one workspace, stored hashed, and shown once. No tenant header needed.
Spec: /api/v1/openapi.json · MCP install
/api/v1API root / capability discovery
/api/v1/jobsList jobs
Returns jobs for the authenticated tenant (DB-backed). Requires Growth+.
/api/v1/jobs/{id}Get a job
/api/v1/candidatesList or search candidates
Pass `q` for free-text search (name, email, headline, company). DB-backed. Requires Growth+.
/api/v1/candidates/{id}Get a candidate
/api/v1/applicationsList applications
/api/v1/applications/{id}Get an application
/api/v1/interviewsList interviews
/api/v1/notesList notes
/api/v1/notesCreate a note
Attach a note to a candidate (optionally tied to an application). Requires a read & write key. The note is authored by the key's creator and appears on the candidate timeline.
Errors
Errors return { "error": string, "code": string } with HTTP status 400 / 401 / 403 / 404 / 503. List responses use { data: { items, next_cursor, meta } }.