Skip to content

Update meeting configuration for the current tenant

PUT
/api/v1/meetings/config

Persist the tenant’s meeting config to tenants.settings JSONB.

Merges meeting_config into the existing settings dict so unrelated keys are preserved. A bulk JSONB-aware UPDATE is issued to avoid racing with concurrent writes to other settings keys.

Args: config: The new :class:MeetingConfig payload (validated). user: Authenticated user context. db: Async DB session.

Returns: Envelope {"data": MeetingConfig} echoing the stored config.

Authorizations

Request Body required

User-configurable meeting settings stored in tenants.settings JSONB.

Read from tenant.settings["meeting_config"]. All fields have sensible defaults so a tenant with no config still gets meetings at 8am standup / 5pm retro.

Attributes: standup_hour: Hour (0-23) for morning standup in tenant timezone. standup_minute: Minute for standup (always 0 for v16.0). retro_hour: Hour (0-23) for evening retro in tenant timezone. retro_minute: Minute for retro (always 0 for v16.0). attendance_mode: “autonomous” (auto-publish) or “mandatory” (hold for user approval). enabled: Whether daily meetings are enabled for this tenant.

object
attendance_mode
string
default: autonomous
Allowed values: autonomous mandatory
enabled
boolean
default: true
retro_hour
integer
default: 17 <= 23
retro_minute
integer
<= 59
standup_hour
integer
default: 8 <= 23
standup_minute
integer
<= 59

Responses

200

Successful Response

object
key
additional properties
any

422

Validation Error

object
detail
Array<object>
object
ctx
object
input
loc
required
Array
msg
required
string
type
required
string