POST
/
hris
/
absences
Create absence
curl --request POST \
  --url https://api.kombo.dev/v1/hris/absences \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-Integration-Id: <x-integration-id>' \
  --data '{
  "employee_id": "wXJMxwDvPAjrJ4CyqdV9",
  "absence_type_id": "3YKtQ7qedsrcCady1jSyAkY1",
  "start_date": "2019-09-17",
  "end_date": "2019-09-21",
  "start_time": "08:30:00",
  "end_time": "16:00:00",
  "start_half_day": false,
  "end_half_day": false,
  "employee_note": "Visiting the aliens"
}'
{
"status": "success",
"data": {
"id": "22st2Ji8XpncEYEak8mvQgQF",
"remote_id": "1348",
"employee_id": "JDdUy9kiH5APaGizFrgNmQjM",
"approver_id": "AgXEispYPP1BbToHpqnqcpxy",
"start_date": "2022-08-04",
"end_date": "2022-08-05",
"start_half_day": true,
"end_half_day": false,
"start_time": "13:15:00",
"end_time": "17:00:00",
"amount": 2,
"unit": "DAYS",
"status": "APPROVED",
"employee_note": "Visiting my family.",
"type_id": "xzZoKssDaMZAd62kxayzzQvD",
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": "2022-08-07T14:01:29.196Z",
"remote_data": null
},
"warnings": [
{
"message": "This is an example warning!"
}
]
}
Check this page for a detailed guide.
This endpoint requires the permission Manage absences to be enabled in your scope config.

Example Request Body

{
  "employee_id": "wXJMxwDvPAjrJ4CyqdV9",
  "absence_type_id": "3YKtQ7qedsrcCady1jSyAkY1",
  "start_date": "2019-09-17",
  "end_date": "2019-09-21",
  "start_time": "08:30:00",
  "end_time": "16:00:00",
  "start_half_day": false,
  "end_half_day": false,
  "employee_note": "Visiting the aliens"
}

Authorizations

Authorization
string
header
required

Create an API key on the Secrets page in the Kombo dashboard.

Headers

X-Integration-Id
string
required

ID of the integration you want to interact with.

Body

application/json

POST /hris/absences Request body

employee_id
string
required

The ID of the employee in Kombo or their ID in the remote system by prefixing it with remote: (e.g., remote:12312)

absence_type_id
string
required

The ID of the absence type in Kombo (not its remote_id).

start_date
string<date-time>
required

The date that the absence starts. This is a plain date (i.e., yyyy-MM-dd), with all time information discarded.

end_date
string<date-time>
required

When the absence ends.The date that the absence ends. This is a plain date (i.e., yyyy-MM-dd), with all time information discarded.

employee_note
string | null
required

A note describing the reason for this absence.

status
enum<string>
default:REQUESTED

The state that the absence should be created in. Some tools may approve absences automatically if they were created for an absence type that does not require approval.

Available options:
REQUESTED,
APPROVED
start_half_day
boolean
default:false

true if the absence should start in the middle of the day.

end_half_day
boolean
default:false

true if the absence should end in the middle of the day.

amount
number

The amount of time of the absence. Specifying this also requires specifying unit. This is supported by very few tools.

Required range: x >= 0
unit
enum<string>

The time unit of the amount value. Specifying this also requires specifying amount.

Available options:
HOURS,
DAYS
start_time
string

The time of when the absence begins. Follows the format HH:mm or HH:mm:ss (e.g., 14:45:15). If start_time is specified, end_time has to be specified as well.

end_time
string

The time of when the absence ends. Follows the format HH:mm or HH:mm:ss (e.g., 14:45:15). If end_time is specified, start_time has to be specified as well.

remote_fields
object

Additional fields that we will pass through to specific HRIS systems.

Response

POST /hris/absences Positive response

status
string
required
Allowed value: "success"
data
object
required
Examples:
{
"id": "22st2Ji8XpncEYEak8mvQgQF",
"remote_id": "1348",
"employee_id": "JDdUy9kiH5APaGizFrgNmQjM",
"approver_id": "AgXEispYPP1BbToHpqnqcpxy",
"start_date": "2022-08-04",
"end_date": "2022-08-05",
"start_half_day": true,
"end_half_day": false,
"start_time": "13:15:00",
"end_time": "17:00:00",
"amount": 2,
"unit": "DAYS",
"status": "APPROVED",
"employee_note": "Visiting my family.",
"type_id": "xzZoKssDaMZAd62kxayzzQvD",
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": "2022-08-07T14:01:29.196Z",
"remote_data": null
}
warnings
object[]
required

These are the interaction warnings that are shown in the dashboard. They are meant to provide debug information to you. We recommend logging them to the console.