Change meeting status
/meetings/:meetingId/statusHandles approve, reject, cancel, re-allow and undo-cancel in one endpoint. Whether a transition is permitted depends on the current status and the caller's role in the meeting.
| Auth | Login required |
|---|
Path parameters
meetingIdstringrequiredMeeting ID.
Request body
statusstringrequiredThe new status (REQUESTED / CONFIRMED / CANCELED / REJECTED).
Notes
Permitted transitions: REQUESTED → CONFIRMED (approve, toUserId only), REQUESTED → REJECTED (reject, toUserId only), REJECTED → REQUESTED (re-allow, only the rejectedBy user), REQUESTED / CONFIRMED → CANCELED (either party), CANCELED → undo cancel (only the canceledBy user; status may be either CONFIRMED or REQUESTED — a meeting that had been approved returns to CONFIRMED, one that was withdrawn before approval returns to REQUESTED). Anything else returns 400 (errorCode 40006). Once the event has ended, every transition returns 400 (errorCode 20001).
Canceling releases the spot, time and table number so other meetings can take the slot. After undoing a cancel, the spot and time must be set again.
A status change appends a system message to the chat room and notifies the other party.
Response
| Field | Type | Description |
|---|---|---|
meeting | Meeting | The updated meeting. |
curl https://api.4s.link/meetings/MEETING_ID/status \-X PUT \-H "Authorization: Bearer 4s_at_..." \-H "Content-Type: application/json" \-d '{"status": "CONFIRMED"}'
{"meeting": {"id": "mt1a2b3c-...","status": "CONFIRMED","canceledBy": null,"rejectedBy": null}}