Tài liệu tham khảo API Lịch trực
Các giá trị có thể dùng cho từng trường
Loại giới hạn
| Giá trị | Mô tả |
|---|---|
NONE | Không giới hạn |
TIMEOFDAY | Giới hạn theo một giờ cụ thể trong ngày |
TIMEINTERVALS | Giới hạn theo các khoảng thời gian cụ thể |
Loại luân phiên
| Giá trị | Mô tả |
|---|---|
DAILY | Luân phiên diễn ra hằng ngày |
WEEKLY | Luân phiên diễn ra hằng tuần |
CUSTOM | Luân phiên theo một lịch tùy chỉnh |
Ngày trong tuần
| Giá trị | Mô tả |
|---|---|
SATURDAY | Thứ Bảy |
SUNDAY | Chủ Nhật |
MONDAY | Thứ Hai |
TUESDAY | Thứ Ba |
WEDNESDAY | Thứ Tư |
THURSDAY | Thứ Năm |
FRIDAY | Thứ Sáu |
Lấy danh sách thành viên của lịch trực
Endpoint:
GET /on-call-schedules/:id/members
Yêu cầu ví dụ
GET /on-call-schedules/clzmgn2ze40301poblv9e1pq5/members
Phản hồi ví dụ
{"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}]}
Tạo lịch trực
Endpoint:
POST /on-call-schedules
Yêu cầu ví dụ
{"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"}]}]}
Phản hồi ví dụ
{"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"}]}]}
Cập nhật lịch trực
Endpoint:
PUT /on-call-schedules/:id
Yêu cầu ví dụ
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"}]}]}
Phản hồi ví dụ
{"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"}]}]}
Xóa lịch trực
Endpoint:
DELETE /on-call-schedules/:id
Yêu cầu ví dụ
DELETE /on-call-schedules/schedule-id-1
Phản hồi ví dụ
204 No Content