Base URL
https://cool.jobmojito.com/functions/v1/job-interview-create.
Conventions
- Method: actions that create or change something use
POST; read-only lookups and lists useGET(with parameters in the query string). - Auth: every request needs
Authorization: Bearer <token>- see Authentication. - Request body:
application/json(one endpoint, the binary resume upload, usesmultipart/form-data). - Response body:
application/json. - IDs: resources are identified by UUIDs.
Environments and testing
Each interview has anenvironment: production (the default), uat, development or demo. You set it in the admin app (Interview ▸ Edit ▸ Custom integration ▸ Environment), or with the environment field on job-interview-update.
Each webhook is also registered for one environment. When a result fires an event, it goes only to the webhooks whose environment matches the environment of that interview. Your API token plays no part in this routing. A typical test set-up:
- Create the test interview with
environment: "uat". - Register a
uatwebhook that points at your test system (for example your ATS sandbox). - Invite test candidates with
is_test: trueonjob-interview-register-users. Test links work on draft interviews too, and their results are flagged as tests.
Errors
When a request fails, you get a non-2xx status and a JSON error envelope:error- a human-readable message.name- present for field-level validation problems; the name of the offending field.
Status codes
Batch endpoints return per-row results
Endpoints that act on a list -invite-users and job-interview-register-users - process each row independently and always return HTTP 200 with a results array. A bad row doesn’t fail the whole request; instead that row carries an error while the others succeed:
result field rather than relying on the HTTP status alone.
Credits
Some actions consume your account’s credits - for example creating an interview, running a pre-screen, or generating a PDF report. A few options add cost on top (e.g. translating a report to another language, or enabling full-session recording). Your current balance and usage are visible in the admin. See How credits work for per-action costs, plans and top-ups.OpenAPI specification & MCP
The entire API is described by a machine-readable OpenAPI 3.1 document, which powers this reference and can be imported into your own tooling:Endpoints
Interviews & assessments
Coaching catalogue
A directory lists a coaching session when the session’s
tags contain every tag in the directory’s tags_interview_set_filter — so tags on the interview and tags_interview_set_filter on the directory are the two halves of the same mapping.
Candidates & invitations
Results & reports
Pre-screening
Knowledge base
Merchant reads (lists & status)
Read-only endpoints scoped to the merchant from your token (or amerchant_id query parameter). Being reads, these use GET.
See the API Reference for each endpoint’s exact request and response schema, or fetch the OpenAPI spec.