Calendars
Route group for calendar identity CRUD, summary composition, and bounded maintenance of the calendar's date, session, and event rows. Child date, session, and event routes are scoped to a path calendar uid.
GET /api/v1/calendar/- supports
response_format=frontend_list - supports
search,limit, andoffset - supports exact filters for
unique_identifier,calendar_type,source, andsource_identifier - supports
unique_identifier_contains - returns the library
msm.api.calendars.Calendarcontract POST /api/v1/calendar/- creates one calendar identity row
- request body uses the library
CalendarCreatecontract - returns the created
Calendarrow GET /api/v1/calendar/{uid}/- supports
response_format=frontend_detail - returns one library
Calendarrow by uid GET /api/v1/calendar/{uid}/summary/- returns the reusable
FrontEndDetailSummaryresponse for calendar detail pages - resolves the calendar by
uid - includes calendar identity, type/timezone badges, validity horizon, label management placeholders, and related date/session/event route links
PATCH /api/v1/calendar/{uid}/- updates mutable calendar identity fields
- request body uses the library
CalendarUpdatecontract - returns the updated
Calendarrow DELETE /api/v1/calendar/{uid}/- deletes one calendar identity row
- returns
nullon success - related date, session, and event rows are removed by database cascade
GET /api/v1/calendar/{calendar_uid}/dates/- lists
CalendarDaterows for one calendar - supports
start_date,end_date, flag filters,limit, andoffset POST /api/v1/calendar/{calendar_uid}/dates/- creates one date row under the path calendar uid
POST /api/v1/calendar/{calendar_uid}/dates/bulk-upsert/- bulk upserts date rows under the path calendar uid
GET,PATCH, andDELETE /api/v1/calendar/{calendar_uid}/dates/{date_uid}/- manage one date row and require it to belong to the path calendar uid
GET /api/v1/calendar/{calendar_uid}/sessions/- lists
CalendarSessionrows for one calendar - supports
start_date,end_date,session_label,is_primary,limit, andoffset POST /api/v1/calendar/{calendar_uid}/sessions/- creates one session row under the path calendar uid
POST /api/v1/calendar/{calendar_uid}/sessions/bulk-upsert/- bulk upserts session rows under the path calendar uid
GET,PATCH, andDELETE /api/v1/calendar/{calendar_uid}/sessions/{session_uid}/- manage one session row and require it to belong to the path calendar uid
GET /api/v1/calendar/{calendar_uid}/events/- lists
CalendarEventrows for one calendar - supports
start_date,end_date,event_type,event_label,target_type,target_uid,target_identifier,limit, andoffset POST /api/v1/calendar/{calendar_uid}/events/- creates one event row under the path calendar uid
POST /api/v1/calendar/{calendar_uid}/events/bulk-upsert/- bulk upserts event rows under the path calendar uid
GET,PATCH, andDELETE /api/v1/calendar/{calendar_uid}/events/{event_uid}/- manage one event row and require it to belong to the path calendar uid