Skip to main content
POST
Create an application

Authorizations

Authorization
string
header
required

API key authentication for the public API. Pass your API key as a Bearer token.

Headers

Idempotency-Key
string

Unique key (e.g. a UUID v4) that makes this POST safe to retry: a repeated key replays the original response instead of creating a second resource.

Path Parameters

job_id
string<uuid>
required

Body

application/json

Request body for POST /jobs/{job_id}/applications.

first_name
string
required
Required string length: 1 - 150
phone_number
string
required

Phone number in E.164 format (e.g. +16505551234, +66812345678).

Required string length: 1 - 20
external_id
string | null

Your identifier for this application in your own system. Returned on reads and webhook events. Unique per job posting.

Maximum string length: 255
last_name
string
default:""
Required string length: 1 - 150
email
string<email>
default:""
Minimum string length: 1
custom_fields
object | null

Free-form JSON object of customer-submitted data. Max 64 KB serialized.

cv_url
string<uri> | null

Optional https URL to the candidate's CV (PDF). Downloaded and processed asynchronously.

scheduled_at
string<date-time> | null

When to hold the interview (ISO 8601). Required when the job's interview-config schedule is enabled; must be omitted otherwise (a 409 is returned if provided when scheduling is off).

Response

Full application: adds custom_fields to the list shape.

The interview / insights / CV-evaluation sub-resources are reached via the links block (each is its own typed endpoint), not inlined here.

id
string<uuid>
required
read-only
external_id
string | null
required
read-only

The application's ID in the system that supplied it, in that system's own form. Unique per job posting and source.

status
enum<string>
required
  • applied - Applied
  • screened - Screened
  • interviewed - Interviewed
  • shortlisted - Shortlisted
  • hired - Hired
  • rejected - Rejected
Available options:
applied,
screened,
interviewed,
shortlisted,
hired,
rejected
created_at
string<date-time>
required
read-only
candidate
object
required
job
object
required
interview
object | null
required

Lean interview pointer on an application (full result is its own sub-resource).

custom_fields
unknown
required