Skip to main content
POST
Create an employee creation intent

Authorizations

Authorization
string
header
required

Use your Primo API key in the Authorization header as Bearer <API_KEY>.

Body

application/json
onboardingId
string
required

The onboarding the employee is created for, from getOnboardings. Fixed once created.

Pattern: ^[a-f\d]{24}$
firstName
string | null
Minimum string length: 1
lastName
string | null
Minimum string length: 1
email
string<email> | null

Work email address the employee is created with.

Pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
personalEmail
string<email> | null
Pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
phone
string | null
startDate
string<date-time> | null

First day of the employee (ISO 8601), past or future.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
employmentType
enum<string> | null
Available options:
INTERNAL,
CONTRACTOR
job
object | null

Job title.

workLocation
object | null

Office. Null for a remote employee.

teams
object[]

Teams the employee joins, replaced whole.

managerId
string | null

Primo employee id of the manager, from getEmployees.

Pattern: ^[a-f\d]{24}$
address
object | null

Personal (home) address of the employee.

parentTicketId
string | null

The untyped ticket the task belongs to. Omit it and Primo opens a ticket to hold the task.

Pattern: ^[a-f\d]{24}$
scheduleDate
string<date-time> | null

Creates the task SCHEDULED until this date: it cannot be executed before it wakes up as PENDING.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$

Response

default - application/json
id
string
required

Intent id — pass it to updateEmployeeCreationIntent and executeEmployeeCreationIntent

taskId
string | null
required

The EMPLOYEE_CREATION task that tracks this employee creation

ticketId
string | null
required

The ticket holding that task: the parentTicketId sent, or the one Primo opened. Null if it could not be read back.

onboardingId
string
required
firstName
string | null
required
lastName
string | null
required
email
string | null
required
personalEmail
string | null
required
phone
string | null
required
startDate
string<date-time> | null
required
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
employmentType
enum<string> | null
required
Available options:
INTERNAL,
CONTRACTOR
job
object | null
required
workLocation
object | null
required
teams
object[]
required
managerId
string | null
required
address
object | null
required
employeeId
string | null
required

The employee created on execute, null until then

executedAt
string<date-time> | null
required

When the intent was executed; null while it can still change

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
createdAt
string<date-time>
required
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
updatedAt
string<date-time>
required
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$