scope, a list of conditions that must all hold. Every workspace, member and meeting carries the
result as its settings block.
Scopes
A condition is<kind>:<name>. A scope names exactly one who, a workspace or a member, and may
add a meeting category. A meeting condition stands alone: it implies its workspace.
What you want, as scopes:
A category carries only
recording: { enabled: true }. With only a workspace or member
condition, recording.enabled: true records every meeting.
Coming later, answered 422 not_supported for now: several categories in one scope (“external
meetings I organize”), series: for every occurrence of a recurring meeting, one settings object
reused across workspaces, and named settings.
Set them
A member who has no settings of their own gets them in one call:POST for them
answers 409 scope_taken naming the assignment. Read the object’s settings.assignments, take
the one with own: true, and change its settings:
meeting.updated.
Values and codes
A field is a value or a code, nevernull (422 invalid):
Writing
inherit is not supported yet, except recording.enabled: "inherit" on a meeting’s
settings, which gives the meeting back to its member’s and workspace’s rules.
Which setting wins
For each field of a meeting, the most specific assignment that sets it:meeting:member:with a categorymember:workspace:with a categoryworkspace:- MeetingKit’s default.
settings block on the meeting says what applies and, in sources, which assignment
supplied each field. When none did, reason says why: no_meeting_url, unsupported_platform,
member_paused and bot_cancelled for recording, and happyscribe_default.