Create an applicant

Submits a hired candidate into Bob as a pending hire. The record is added to
ATS Pending Hires; an employee is created only after HR activates the New Hire
flow. Only fields that are part of that New Hire flow are populated on the
employee. One applicant per request.

A 201 response does not guarantee all documents were uploaded. Always inspect
warnings. When every document downloads successfully (or the request carries
none), the body is { "id": ... } with no warnings key. When one or more
documents fail to download, warnings lists each failed file; the applicant
is still stored.

OAuth scopes (app-user): applicants:write

Rate limit: 10 requests per minute per authenticated company.

Submits a hired candidate into Bob as a pending hire. The record is added to
ATS Pending Hires; an employee is created only after HR activates the New Hire
flow. Only fields that are part of that New Hire flow are populated on the
employee. One applicant per request.

A 201 response does not guarantee all documents were uploaded. Always inspect
warnings. When every document downloads successfully (or the request carries
none), the body is { "id": ... } with no warnings key. When one or more
documents fail to download, warnings lists each failed file; the applicant
is still stored.

OAuth scopes (app-user): applicants:write

Rate limit: 10 requests per minute per authenticated company.

Body Params
fields
object
required

Flat map of Bob employee field id to value. Keys come from
GET /v1/company/people/fields (for example root.firstName). The supported
value shape depends on the field type: JSON scalars (string, number,
boolean) or nested objects for complex types (for example
payroll.salary.payment: { "value": 85000, "currency": "GBP" }). Dates use
YYYY-MM-DD strings. See
Field types

for the full catalog.

Required: root.firstName (string), root.surname (string).

Recommended: root.email (string), work.startDate (YYYY-MM-DD),
work.title (string), work.department (string), work.siteId (site name
string, for example "London", not a numeric id).

Computed fields (for example work.durationOfEmployment) are ignored and
logged. Unresolved complex values are dropped and logged; the request still
succeeds when the required fields are present.

documents
array of objects | null

Files to attach to the pending hire. Each item is an object with name
(string), url (string), and folderId (int64 JSON number). Each file is
downloaded from url and stored under the Bob folder folderId (from
GET /v1/docs/folders/metadata). When omitted, no documents are attached.

documents
Responses

Language
Credentials
Bearer
OAuth 2.0
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json