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": "51c9eee5-e5f7-4950-8023-c027600a156d",
"type": "shifts",
"attributes": {
"schedule_id": "8f8b4a3e-f2c4-4a28-9420-8ca945735d2a",
"rotation_id": null,
"user_id": 444,
"starts_at": "2025-12-18T10:39:52.000-08:00",
"ends_at": "2025-12-19T08:39:52.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "05597329-6455-4290-982d-40568ff53299",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "444",
"type": "users"
}
},
"assignee": {
"data": {
"id": "444",
"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": "51c9eee5-e5f7-4950-8023-c027600a156d",
"type": "shifts",
"attributes": {
"schedule_id": "8f8b4a3e-f2c4-4a28-9420-8ca945735d2a",
"rotation_id": null,
"user_id": 444,
"starts_at": "2025-12-18T10:39:52.000-08:00",
"ends_at": "2025-12-19T08:39:52.000-08:00",
"is_override": true
},
"relationships": {
"shift_override": {
"data": {
"id": "05597329-6455-4290-982d-40568ff53299",
"type": "shift_overrides"
}
},
"user": {
"data": {
"id": "444",
"type": "users"
}
},
"assignee": {
"data": {
"id": "444",
"type": "users"
}
}
}
}
}