On this page

Send assessment invites, schedule live interviews and read results from your own backend over the Litmus REST API.

REST API

Use the Litmus API to invite candidates, schedule live interviews, and read assessment results from your backend or applicant tracking system.

Base URL: https://litmushiring.com/api/v1

Authenticate with an organization API key in Authorization: Bearer $LITMUS_API_KEY. Requests and responses use JSON. Include Content-Type: application/json when sending a request body. See Authentication and scopes.

Choose a workflow

Your goalStart here
Send a take-home assessmentInvites
Let a candidate choose a live interview timeLive interview invitations
Have your automation book an interviewSchedule a live interview
Use your own calendar and send a Litmus candidate linkExternal scheduling
Keep another system synchronizedSynchronize interview changes
Retrieve a candidate's resultSubmissions

An assessment is an exercise delivered as a take-home, live interview, or work trial. An invite gives the candidate access to the flow configured for that assessment. For a live interview, it asks the candidate to choose a time. An interview booking reserves the time your integration selects.

The same key and scopes also work with the MCP server. Each interface exposes its own operations; REST pipeline reads return rounds, while MCP get_pipeline_status returns candidate counts by stage.

Endpoints

Send assessments

MethodPathDescriptionScope
GET/rolesList your roles and cohorts.roles:read
GET/postings/{id}/pipelineRead a role's rounds and their ids.roles:read or interviews:read
POST/invitesInvite a candidate to an assessment.invites:write

Read results

MethodPathDescriptionScope
GET/submissions/{id}Read a submission's score and decision.submissions:read

Schedule live interviews

MethodPathDescriptionScope
GET/postings/{id}/interviewersRead all interviewers for a role.interviews:read
PUT/postings/{id}/interviewersReplace all interviewers for a role.interviews:write
GET/postings/{id}/slotsFind available interview times.interviews:read
POST/postings/{id}/slotsAdd interviewer availability.interviews:write
DELETE/postings/{id}/slotsRemove interviewer availability.interviews:write
GET/interviewsList live interviews.interviews:read
POST/interviewsBook a live interview.interviews:write
GET/interviews/{id}Read one interview.interviews:read
PATCH/interviews/{id}Change the assigned interviewer.interviews:write
DELETE/interviews/{id}Cancel an interview.interviews:write

Also see

These reference pages are the current public endpoint contract. A machine-readable OpenAPI schema is not published yet.

    Overview · Litmus docs