Access & visibility
Allow workspace.UpdatePrivacySettings on your API key.
Workspace access by default. Private member data requires approved member delegation through Brigg-Act-As; the key supplies permissions while private ownership and project boundaries remain enforced.
Request fields
Send a JSON object with the following fields. Required fields must be included; omit optional fields you do not need.
retentionstringOptionalTranscript policy: immediate deletes verbatim text once the closing summary exists; hours24 keeps the archive for one day; days30, days90, days180 and days365 retain it for that many days; forever has no automatic expiry. This governs transcripts, not the meeting's saved summary.
Allowed: "immediate", "hours24", "days30", "days90", "days180", "days365", "forever".
ai_disclosure_reminder_enabledbooleanOptionalWhether Brigg reminds the host at recording start to tell attendees that AI is being used. This does not notify attendees itself.
ai_disclosure_reminder_messagestring or nullOptionalCustom reminder; null or whitespace resets to the localized built-in message. Omit to preserve the current value.
ai_disclosure_notice_enabledbooleanOptionalEnable or disable the invitation notice. The resulting enabled state must have nonblank text; include ai_disclosure_notice_text when none is saved.
ai_disclosure_notice_textstring or nullOptionalText to append to eligible invitations. Omit to preserve it; null or whitespace clears it only when the notice is disabled.
Separate retention, host reminders and attendee notices
These are workspace policies, not the acting member's personal preferences. Any active member can read them; canManage tells you whether that member is a workspace owner or administrator who may change them. The API key needs the update operation as well as approved delegation to that manager.
The reminder is a private prompt to the host when recording starts. The notice adds disclosure text to eligible future Google/Microsoft invitations with a conference URL and an external attendee that Brigg has permission to update. Changing settings does not prove that every provider invitation has already been updated.
Use the exact values in retentionOptions when changing retention. A shorter policy can cause existing archived transcripts to expire; immediate deletes verbatim text after its closing summary exists. Saved summaries are separate. A deleted transcript cannot be recovered by selecting a longer policy later.
Response
Returns 200 OK with a JSON body.
Send only the settings you intend to change. Omitted settings remain unchanged. Read GetPrivacySettings after the save when you also need supported values, localized defaults or management capability.
okbooleanRequiredWhether the action completed successfully.
retentionstringRequiredTranscript policy: immediate deletes verbatim text once the closing summary exists; hours24 keeps the archive for one day; days30, days90, days180 and days365 retain it for that many days; forever has no automatic expiry. This governs transcripts, not the meeting's saved summary.
ai_disclosure_reminder_enabledbooleanRequiredWhether Brigg reminds the host at recording start to tell attendees that AI is being used. This does not notify attendees itself.
ai_disclosure_reminder_messagenull or stringOptionalCustom host-reminder text, or null to use the localized built-in message.
ai_disclosure_notice_enabledbooleanRequiredWhether Brigg adds the disclosure text to eligible connected-calendar invitations. This is separate from the private host reminder.
ai_disclosure_notice_textnull or stringOptionalSaved invitation disclosure text, or null when unset. Enabling the notice requires nonblank saved text.
Errors & retries
Set BRIGG_REQUEST_ID once for each logical action. The samples send it as Idempotency-Key. Reuse the same value and body on retries, including after a timeout; a missing response does not prove the action failed.
For rate limits, follow the server’s retry guidance and back off. See HTTP errors and safe retries and limits.
| HTTP status | Code | What to do |
|---|---|---|
| 400 | invalid_json |
Send a JSON object with Content-Type: application/json. |
| 400 | invalid_input |
Check the request fields and types. Supply a stable Idempotency-Key containing 1–200 characters. |
| 401 | invalid_key |
The workspace API key is missing, invalid or revoked. |
| 403 | forbidden |
Check the key’s operation and resource grants. If Brigg-Act-As is supplied, the key must be authorized to delegate to that member. |
| 404 | not_found |
The requested operation or resource is not available to this credential. |
| 429 | rate_limited |
Wait for Retry-After before retrying. Reuse the original Idempotency-Key. |
| 400 | disclosure_notice_text_required |
The resulting enabled invitation notice has no text. Supply nonblank ai_disclosure_notice_text, or disable the notice when clearing it. |
Next steps
JSON schemas
Use the complete schemas for validation or client generation.
Full request JSON schema
{
"type": "object",
"properties": {
"retention": {
"type": "string",
"enum": [
"immediate",
"hours24",
"days30",
"days90",
"days180",
"days365",
"forever"
],
"description": "Transcript policy: immediate deletes verbatim text once the closing summary exists; hours24 keeps the archive for one day; days30, days90, days180 and days365 retain it for that many days; forever has no automatic expiry. This governs transcripts, not the meeting's saved summary."
},
"ai_disclosure_reminder_enabled": {
"type": "boolean",
"description": "Whether Brigg reminds the host at recording start to tell attendees that AI is being used. This does not notify attendees itself."
},
"ai_disclosure_reminder_message": {
"anyOf": [
{
"type": "string",
"maxLength": 500,
"description": "Custom reminder; null or whitespace resets to the localized built-in message. Omit to preserve the current value."
},
{
"type": "null",
"description": "Custom reminder; null or whitespace resets to the localized built-in message. Omit to preserve the current value."
}
],
"description": "Custom reminder; null or whitespace resets to the localized built-in message. Omit to preserve the current value."
},
"ai_disclosure_notice_enabled": {
"type": "boolean",
"description": "Enable or disable the invitation notice. The resulting enabled state must have nonblank text; include ai_disclosure_notice_text when none is saved."
},
"ai_disclosure_notice_text": {
"anyOf": [
{
"type": "string",
"maxLength": 500,
"description": "Text to append to eligible invitations. Omit to preserve it; null or whitespace clears it only when the notice is disabled."
},
{
"type": "null",
"description": "Text to append to eligible invitations. Omit to preserve it; null or whitespace clears it only when the notice is disabled."
}
],
"description": "Text to append to eligible invitations. Omit to preserve it; null or whitespace clears it only when the notice is disabled."
}
},
"additionalProperties": false,
"examples": [
{
"retention": "days30"
}
]
}Full response JSON schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean",
"description": "Whether the action completed successfully."
},
"retention": {
"type": "string",
"description": "Transcript policy: immediate deletes verbatim text once the closing summary exists; hours24 keeps the archive for one day; days30, days90, days180 and days365 retain it for that many days; forever has no automatic expiry. This governs transcripts, not the meeting's saved summary."
},
"ai_disclosure_reminder_enabled": {
"type": "boolean",
"description": "Whether Brigg reminds the host at recording start to tell attendees that AI is being used. This does not notify attendees itself."
},
"ai_disclosure_reminder_message": {
"description": "Custom host-reminder text, or null to use the localized built-in message.",
"title": "OpenAdThreadSubtaskAgent_phase",
"anyOf": [
{
"type": "null",
"description": "Custom host-reminder text, or null to use the localized built-in message."
},
{
"type": "string",
"description": "Custom host-reminder text, or null to use the localized built-in message."
}
]
},
"ai_disclosure_notice_enabled": {
"type": "boolean",
"description": "Whether Brigg adds the disclosure text to eligible connected-calendar invitations. This is separate from the private host reminder."
},
"ai_disclosure_notice_text": {
"description": "Saved invitation disclosure text, or null when unset. Enabling the notice requires nonblank saved text.",
"title": "OpenAdThreadSubtaskAgent_phase",
"anyOf": [
{
"type": "null",
"description": "Saved invitation disclosure text, or null when unset. Enabling the notice requires nonblank saved text."
},
{
"type": "string",
"description": "Saved invitation disclosure text, or null when unset. Enabling the notice requires nonblank saved text."
}
]
}
},
"required": [
"ok",
"retention",
"ai_disclosure_reminder_enabled",
"ai_disclosure_notice_enabled"
],
"additionalProperties": false,
"examples": [
{
"ok": true,
"retention": "days30",
"ai_disclosure_reminder_enabled": true,
"ai_disclosure_reminder_message": null,
"ai_disclosure_notice_enabled": false,
"ai_disclosure_notice_text": null
}
]
}