POST and PATCH endpoint pages document every field. This page covers the
behavior behind them — the parts that will surprise you if you assume a plain
CRUD resource.
Creating
id and grantedTo:
grantedTo is how many people can now see the event. Your key’s user is one of
them; the rest are their approvers.
The organization comes from your key, so any organizationId in the body is
ignored.
Updating
PATCH /v1/events/{id} takes only the fields you are changing.
Omitted means unchanged; null means cleared
Omitted means unchanged; null means cleared
A field you leave out is not touched. Sending
null clears it. That
distinction is deliberate — there is no way to accidentally blank a field by
omitting it, and no way to clear one by guessing at an empty value.All or nothing
All or nothing
If any field is rejected, nothing is written and the response lists every
problem at once. A
400 therefore always means the event is untouched, so it
is safe to correct and retry without checking what partially landed.Some fields are derived, not writable
Some fields are derived, not writable
location is derived from formattedLocations, and event_dates from the
union of your guestroom nights and agenda date ranges. Neither is accepted as
input — send the inputs and the derived values follow.Editing the agenda
The agenda is edited by operation, not by replacement. SendagendaOperations with add, update or remove, each addressed by a session
id from a prior GET:
sessionId is an error rather than a silent no-op.
Two refusals worth planning for
A cancelled event cannot be edited. You get409; reopen it in Nowadays
first.
Shrinking the agenda dates is refused if any session would lose a date. Also
409, with the affected sessions named in orphanedSessions:
Limits
A single request is bounded so one call cannot monopolise the service:
Exceeding one returns
400 with the offending field named, and — as always —
nothing is written.