Skip to content

Update meeting configuration for the current tenant

PUT
/api/v1/meetings/config
curl --request PUT \
--url https://api.ultimateteam.ai/api/v1/meetings/config \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "attendance_mode": "autonomous", "enabled": true, "retro_hour": 17, "retro_minute": 0, "standup_hour": 8, "standup_minute": 0 }'

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.

Media typeapplication/json
MeetingConfig

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
Attendance Mode
string
default: autonomous
Allowed values: autonomous mandatory
enabled
Enabled
boolean
default: true
retro_hour
Retro Hour
integer
default: 17 <= 23
retro_minute
Retro Minute
integer
0 <= 59
standup_hour
Standup Hour
integer
default: 8 <= 23
standup_minute
Standup Minute
integer
0 <= 59

Successful Response

Media typeapplication/json
Response Update Meeting Config Api V1 Meetings Config Put
object
key
additional properties
any
Examplegenerated
{}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}