Creates a new override shift from provided data. If any existing override shifts overlap with the specified time range, they will be automatically deleted and replaced by the new override.
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": "66a271d9-ed1b-4807-862b-b8357ec092c1",
"type": "shifts",
"attributes": {
"schedule_id": "80e19493-bd09-4cd2-be5c-54fa99ea4e2e",
"rotation_id": null,
"user_id": 812,
"starts_at": "2026-02-03T16:04:00.000-08:00",
"ends_at": "2026-02-04T14:04:00.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "ede84669-075f-468e-a118-bdb851822478",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "812",
"type": "users"
}
},
"assignee": {
"data": {
"id": "812",
"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": "66a271d9-ed1b-4807-862b-b8357ec092c1",
"type": "shifts",
"attributes": {
"schedule_id": "80e19493-bd09-4cd2-be5c-54fa99ea4e2e",
"rotation_id": null,
"user_id": 812,
"starts_at": "2026-02-03T16:04:00.000-08:00",
"ends_at": "2026-02-04T14:04:00.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "ede84669-075f-468e-a118-bdb851822478",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "812",
"type": "users"
}
},
"assignee": {
"data": {
"id": "812",
"type": "users"
}
}
}
}
}