Update a meeting schedule
Replaces a meeting's details, and is also how you cancel one. Nobody is notified.
Authorization
AuthorizationstringrequiredPath parameters
meetingScheduleIdstringrequiredThe meeting to change.
Body
application/json
Every field is replaced wholesale. There is no partial update, so send the values you want to keep as well as the ones you are changing.
titlestringrequiredThe meeting's title. Up to 200 characters.
descriptionstringWhat the meeting is about. Up to 1,000 characters.
linkstringThe joining link. Up to 200 characters.
startTimestring · date-timerequiredWhen the meeting starts, in the company's timezone. Must be in the future.
endTimestring · date-timerequiredWhen the meeting ends, in the company's timezone. Must not be before startTime.
startTimeUtcstring · date-timeThe start time as an absolute moment with an offset. Overrides startTime when given.
endTimeUtcstring · date-timeThe end time as an absolute moment with an offset. Overrides endTime when given.
externalProviderstringThe calendar system this came from. Up to 100 characters.
externalIdentifierstringThe event's id in that calendar system. Up to 100 characters.
cancelledstring · date-timeSet this to mark the meeting cancelled. Leave it out to keep it active — sending it without a value clears an existing cancellation.
cancellationReasonstringWhy it was cancelled. Up to 500 characters.
Response
200 · The updated meeting.
idstringThe meeting schedule.
sourceenum<string>manual means it was entered in MagicDoor; external that it came from a calendar somewhere else.
titlestringThe meeting's title.
descriptionstringWhat the meeting is about.
linkstringThe joining link, for a video call.
startTimestring · date-timeWhen the meeting starts.
endTimestring · date-timeWhen the meeting ends.
statusenum<string>Worked out from the clock and cancelled, not stored: cancelled if it was cancelled, ended if endTime has passed, active otherwise.
cancelledstring · date-timeWhen it was cancelled. Absent when it was not.
cancellationReasonstringWhy it was cancelled.
externalProviderstringThe calendar system it came from, for an external meeting.
externalIdentifierstringThe event's id in that calendar system.
metadataobjectFree-form key/value data stored with the meeting. Empty for meetings created through this API.
400 · `title` is empty, `startTime` is in the past, or `endTime` is before `startTime`.
401 · The access token is missing, expired, or not valid.
404 · No meeting schedule with that id belongs to your company.
A meeting schedule is a calendar record inside MagicDoor. Creating, changing, or deleting one sends no invitation, email, or SMS to anybody.
To cancel a meeting rather than delete it, send cancelled with the moment it was called off and a cancellationReason. The meeting stays in the list with a status of cancelled.
startTime and endTime carry no timezone offset and are read in the company's timezone, like every other timestamp in this API. If you would rather send UTC directly, use startTimeUtc and endTimeUtc instead — when either is present it wins over the matching plain field.
startTime must still be in the future, so a meeting that has already started cannot be edited through this endpoint.