Creates a new override shift from provided data
curl --request POST \
--url https://api.rootly.com/v1/schedules/{schedule_id}/override_shifts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/vnd.api+json' \
--data '
{
"data": {
"type": "shifts",
"attributes": {
"starts_at": "2023-11-07T05:31:56Z",
"ends_at": "2023-11-07T05:31:56Z",
"user_id": 123
}
}
}
'{
"data": {
"id": "989f4345-b3be-4666-bbe3-f6f5ed9f5593",
"type": "shifts",
"attributes": {
"schedule_id": "dd6c6e69-1cdb-4210-80b0-9afeafc31d07",
"rotation_id": null,
"user_id": 447,
"starts_at": "2025-12-19T20:17:34.000-08:00",
"ends_at": "2025-12-20T18:17:34.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "57e736ab-1fad-4f05-a0e0-ca6bbef36cf6",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "447",
"type": "users"
}
},
"assignee": {
"data": {
"id": "447",
"type": "users"
}
}
}
}
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Show child attributes
returns assignee relationship when schedule nesting enabled
Show child attributes
Was this page helpful?
curl --request POST \
--url https://api.rootly.com/v1/schedules/{schedule_id}/override_shifts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/vnd.api+json' \
--data '
{
"data": {
"type": "shifts",
"attributes": {
"starts_at": "2023-11-07T05:31:56Z",
"ends_at": "2023-11-07T05:31:56Z",
"user_id": 123
}
}
}
'{
"data": {
"id": "989f4345-b3be-4666-bbe3-f6f5ed9f5593",
"type": "shifts",
"attributes": {
"schedule_id": "dd6c6e69-1cdb-4210-80b0-9afeafc31d07",
"rotation_id": null,
"user_id": 447,
"starts_at": "2025-12-19T20:17:34.000-08:00",
"ends_at": "2025-12-20T18:17:34.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "57e736ab-1fad-4f05-a0e0-ca6bbef36cf6",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "447",
"type": "users"
}
},
"assignee": {
"data": {
"id": "447",
"type": "users"
}
}
}
}
}