On-Call API › Schedules
Get a schedule
GET/api/v1/schedules/{id}
Returns the schedule with its layers, each layer's people in rota order, and its overrides. A schedule that belongs to a team is visible only to callers in that team (and to administrators acting in person); others get 404, as if it did not exist.
Permission (API-key scope): oncall:schedule:read.
Authorization
bearerAuth(oncall:schedule:read)apiKeyHeader(oncall:schedule:read)
Parameters
Path parameters
idstring requiredThe schedule's id.
Responses
200
The schedule.
dataSchedule requiredShow Schedule properties
idstringorg_idstringteam_idstringEmpty for an organization-wide schedule.namestringdescriptionstringtimezonestringIANA timezone every shift is evaluated in.activebooleanlayersarray of ScheduleLayerShow ScheduleLayer properties
idstringschedule_idstringnamestringpriorityintegerLayers with a higher priority win over lower ones.rotation_typeRotationTyperotation_startstring (date-time)When the rota's first turn started.handoff_dayintegerWeekday of the handover for weekly rotas, 0 (Sunday) to 6.handoff_timestringHH:MMof the handover.restrict_to_weekdaysarray of integerrestrict_start_timestringHH:MMrestrict_end_timestringHH:MMrotationsarray of ScheduleRotationShow ScheduleRotation properties
idstringlayer_idstringuser_idstringpositioninteger0-based place in the rota.created_atstring (date-time)
created_atstring (date-time)updated_atstring (date-time)
overridesarray of ScheduleOverrideShow ScheduleOverride properties
idstringschedule_idstringuser_idstringWhom the override covers, when recorded.override_user_idstringWho is on call instead.start_timestring (date-time)end_timestring (date-time)reasonstringcreated_atstring (date-time)
external_sourcestringWhere it was imported from (opsgenie,pagerduty); absent for schedules made in EvoHub.external_idstringcreated_atstring (date-time)updated_atstring (date-time)
successboolean required
401
No API key was sent, or it is unknown, revoked or expired (UNAUTHORIZED).
errorobject requiredcodestring requiredMachine-readable code. Branch on this.messagestring requiredHuman-readable explanation.
403
The key lacks the scope this endpoint needs (FORBIDDEN).
errorobject requiredcodestring requiredMachine-readable code. Branch on this.messagestring requiredHuman-readable explanation.
404
No schedule with this id in your organization (NOT_FOUND).
errorobject requiredcodestring requiredMachine-readable code. Branch on this.messagestring requiredHuman-readable explanation.
429
Too many requests (RATE_LIMITED). Wait Retry-After seconds.
Retry-AfterintegerSeconds to wait.
errorobject requiredcodestring requiredMachine-readable code. Branch on this.messagestring requiredHuman-readable explanation.
500
Something went wrong on EvoHub's side (INTERNAL_ERROR). Retry later.
errorobject requiredcodestring requiredMachine-readable code. Branch on this.messagestring requiredHuman-readable explanation.
Example request
curl -X GET 'https://evohub.io/api/v1/schedules/5b1c7d2e-8f3a-4b9c-a0d1-e2f3a4b5c6d7' \
-H 'Authorization: Bearer <TOKEN>'