Riferimento API dei turni di reperibilità
Valori possibili per i campi
Tipo di limitazione
| Valore | Descrizione |
|---|---|
NONE | Nessuna limitazione |
TIMEOFDAY | Limitazione basata su un orario preciso |
TIMEINTERVALS | Limitazione basata su intervalli di tempo |
Tipo di rotazione
| Valore | Descrizione |
|---|---|
DAILY | La rotazione avviene ogni giorno |
WEEKLY | La rotazione avviene ogni settimana |
CUSTOM | La rotazione segue una pianificazione personalizzata |
Giorni della settimana
| Valore | Descrizione |
|---|---|
SATURDAY | Sabato |
SUNDAY | Domenica |
MONDAY | Lunedì |
TUESDAY | Martedì |
WEDNESDAY | Mercoledì |
THURSDAY | Giovedì |
FRIDAY | Venerdì |
Ottenere i membri di un turno di reperibilità
Endpoint:
GET /on-call-schedules/:id/members
Esempio di richiesta
GET /on-call-schedules/clzmgn2ze40301poblv9e1pq5/members
Esempio di risposta
{"currentMembers": [{"id": "clh8nmaan72592bfokqjqd95s1","name": null,"email": "member1@email.com","phone": null,"avatar": "https://example.com/avatar.jpg"}],"nextMembers": [{"id": "clzajmm98115510h5olxn5i7ljr","name": null,"email": "member2@email.com","phone": null,"avatar": null}],"allMembers": [{"id": "clh8nmaan72592bfokqjqd95s1","name": null,"email": "member1@email.com","phone": null,"avatar": "https://example.com/avatar.jpg"},{"id": "clzajmm98115510h5olxn5i7ljr","name": null,"email": "member2@email.com","phone": null,"avatar": null}]}
Creare un turno di reperibilità
Endpoint:
POST /on-call-schedules
Esempio di richiesta
{"name": "Primary On-call Schedule","description": "This schedule is for the primary on-call team.","onCallShifts": [{"name": "Primary","members": [{"workspaceMemberId": "member123","color": "#FF5733"},{"workspaceMemberId": "member456","color": "#33C4FF"}],"rotationType": "WEEKLY","customRotationTypeValue": null,"customRotationTypeUnit": null,"startDate": "2023-08-08T08:00:00Z","endDate": "2024-08-21T08:42:00.000Z","restrictionType": "TIMEINTERVALS","timeOfDayRestrictionStartTime": null,"timeOfDayRestrictionEndTime": null,"timeIntervals": [{"startDay": "SATURDAY","startDayTime": "1970-01-01T21:00:00.000Z","endDay": "SUNDAY","endDayTime": "1970-01-01T03:00:00.000Z"}]}]}
Esempio di risposta
{"id": "clzmgn2ze40301poblv9e1pq5","name": "Primary On-call Schedule","description": "This schedule is for the primary on-call team.","status": "ACTIVE","onCallShifts": [{"id": "clzmgn2zt40361pobj78giwf7","name": "Primary","order": 1,"members": [{"id": "clzmgn2zt40401pobjzq0pwjd","order": 3,"color": "#0470a6","workspaceMember": {"id": "member123","user": {"id": "clh8nmaan72592bfokqjqd95s1","name": null,"email": "member12@email.com","avatar": null}}},{"id": "clzmgn2zt40381pob690bwaxx","order": 1,"color": "#195397","workspaceMember": {"id": "member456","user": {"id": "clzajmm98115510h5olxn5i7ljr","name": null,"email": "member45@email.com","avatar": null}}}],"rotationType": "WEEKLY","customRotationTypeValue": null,"customRotationTypeUnit": null,"startDate": "2024-08-09T08:42:34.557Z","endDate": "2024-08-21T08:42:00.000Z","restrictionType": "TIMEINTERVALS","timeOfDayRestrictionStartTime": null,"timeOfDayRestrictionEndTime": null,"timeIntervals": [{"id": "clzmjq8bn313521ioblyzg7hic","startDay": "SATURDAY","startDayTime": "1970-01-01T21:00:00.000Z","endDay": "SUNDAY","endDayTime": "1970-01-01T03:00:00.000Z"}]}]}
Aggiornare un turno di reperibilità
Endpoint:
PUT /on-call-schedules/:id
Esempio di richiesta
PUT /on-call-schedules/clzmgn2ze40301poblv9e1pq5
{"id": "clzmgn2ze40301poblv9e1pq5","name": "Name Update","description": "This schedule is for the primary on-call team.","status": "ACTIVE","onCallShifts": [{"id": "clzmgn2zt40361pobj78giwf7","name": "Primary","order": 1,"members": [{"id": "clzmgn2zt40401pobjzq0pwjd","order": 3,"color": "#0470a6","workspaceMember": {"id": "member123","user": {"id": "clh8nmaan72592bfokqjqd95s1","name": null,"email": "member12@email.com","avatar": null}}},{"id": "clzmgn2zt40381pob690bwaxx","order": 1,"color": "#195397","workspaceMember": {"id": "member456","user": {"id": "clzajmm98115510h5olxn5i7ljr","name": null,"email": "member45@email.com","avatar": null}}}],"rotationType": "WEEKLY","customRotationTypeValue": null,"customRotationTypeUnit": null,"startDate": "2024-08-09T08:42:34.557Z","endDate": "2024-08-21T08:42:00.000Z","restrictionType": "TIMEINTERVALS","timeOfDayRestrictionStartTime": null,"timeOfDayRestrictionEndTime": null,"timeIntervals": [{"id": "clzmjq8bn313521ioblyzg7hic","startDay": "SATURDAY","startDayTime": "1970-01-01T21:00:00.000Z","endDay": "SUNDAY","endDayTime": "1970-01-01T03:00:00.000Z"}]}]}
Esempio di risposta
{"id": "clzmgn2ze40301poblv9e1pq5","name": "Name Update","description": "This schedule is for the primary on-call team.","status": "ACTIVE","onCallShifts": [{"id": "clzmgn2zt40361pobj78giwf7","name": "Primary","order": 1,"members": [{"id": "clzmgn2zt40401pobjzq0pwjd","order": 3,"color": "#0470a6","workspaceMember": {"id": "member123","user": {"id": "clh8nmaan72592bfokqjqd95s1","name": null,"email": "member12@email.com","avatar": null}}},{"id": "clzmgn2zt40381pob690bwaxx","order": 1,"color": "#195397","workspaceMember": {"id": "member456","user": {"id": "clzajmm98115510h5olxn5i7ljr","name": null,"email": "member45@email.com","avatar": null}}}],"rotationType": "WEEKLY","customRotationTypeValue": null,"customRotationTypeUnit": null,"startDate": "2024-08-09T08:42:34.557Z","endDate": "2024-08-21T08:42:00.000Z","restrictionType": "TIMEINTERVALS","timeOfDayRestrictionStartTime": null,"timeOfDayRestrictionEndTime": null,"timeIntervals": [{"id": "clzmjq8bn313521ioblyzg7hic","startDay": "SATURDAY","startDayTime": "1970-01-01T21:00:00.000Z","endDay": "SUNDAY","endDayTime": "1970-01-01T03:00:00.000Z"}]}]}
Eliminare un turno di reperibilità
Endpoint:
DELETE /on-call-schedules/:id
Esempio di richiesta
DELETE /on-call-schedules/schedule-id-1
Esempio di risposta
204 No Content