Skip to content

API reference

Get voice catalog

voice.GetVoiceCatalogReadAPI key

List available team-inbox voice capabilities, their revisions, configured bindings and eligible booking links.

POST/v1/operations/voice.GetVoiceCatalog
On this page

Access & visibility

Allow voice.GetVoiceCatalog on your API key. Resource read permissions: core:Inbox.

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.

Set up authentication · Choose permissions

Request

No parameters. Send an empty JSON object ({}).

Bind a capability to an inbox

Get voice catalogue returns team/inbox offerings and existing bindings. An offering supplies a capability such as booking; it is not a speech voice. Copy its key to the request's offering_key, and copy revision exactly. Only enable an available offering. For built-in meeting booking, supply settings.booking_link_id from the catalogue's meetings: the link must be active and must not require extra questions unsupported by phone booking.

Select the request's inbox_id from List inboxes. The inbox must have an assigned agent and the acting member must have inbox-management authority. A personal assistant instead requires its owner's identity; workspace delegation does not bypass that ownership check. The public catalogue describes the team/inbox workflow.

Add creates a binding. Update requires the binding's existing id and its original inbox; it cannot move a binding between inboxes. Binding responses call these fields inbox_id and offering_key; requests use inbox_id and offering_key. Submit the complete desired offering_key, revision, enabled and settings: update is not a partial settings patch. Read the catalogue first to preserve settings you want to retain.

A 409 means an offering is no longer available or its revision changed. Re-read the catalogue, review the new capability and submit a new logical request with the reviewed revision. A 400 can mean invalid booking settings; 403 means the acting member cannot manage the target. Inspect the error message for the cause. Test the inbox with Start voice test after changing its capabilities.

Response

Returns 200 OK with a JSON body.

offeringsarray of VoiceOfferingRequired

Available voice capabilities that can be bound to an inbox assistant.

Item fields
keystringRequired

Stable key identifying this option within its collection; distinct from its display label.

sourceobjectRequired

App or integration supplying the voice capability.

Nested fields
kindstringRequired

Category identifying which variant of this model applies.

Allowed: "app", "builtin", "integration".

idstringRequired

Unique identifier. Use the value returned by a create or list operation.

labelstringRequired

Human-readable label shown for this item; use its ID or key in API calls.

revisionstringRequired

Revision identifying the version of this capability or configuration.

source_versionstringRequired

Published source version used by this capability.

capabilityobjectRequired

Voice capability exposed by an app or integration.

Nested fields
kindstringRequired

Category identifying which variant of this model applies.

Allowed: "read", "write".

labelstringRequired

Human-readable label shown for this item; use its ID or key in API calls.

descriptionstringRequired

Descriptive text.

idstringRequired

Unique identifier. Use the value returned by a create or list operation.

changesmap of object (3 variants)Required

Setting changes to apply to the existing binding.

Nested fields

Variant 1

valuenull or string or number or false or trueRequired

Literal value to write when this capability applies the change.

Variant 2

fromFieldstringRequired

Read the change value from this field on the selected record.

Variant 3

fromInputstringRequired

Read the change value from this named capability input.

inputmap of JSON valuesOptional

A JSON Schema document describing the accepted value. See https://json-schema.org/understanding-json-schema/.

sourcestringOptional

App or integration supplying the voice capability.

settingsobjectOptional

Configuration fields defined by this voice capability.

Nested fields
targetobjectOptional

Record or operation targeted by this capability.

Nested fields
wheremap of null or string or number or false or true or objectRequired

Record-selection conditions used by the capability.

Nested fields

Variant 6

fromInputstringRequired

Read the change value from this named capability input.

typestringRequired

Type identifying which variant of this model applies.

fieldsarray of stringRequired

Named fields applicable to this item.

bundle_idstringRequired

Bundle identifier.

owner_fieldstringRequired

Field identifying the capability's owning record.

owner_typestringRequired

Resource type of the capability's owning record.

Allowed: "company", "person".

builtinstringOptional

Whether the capability is supplied by Brigg.

Allowed: "take_message", "book_meeting", "manage_calendar", "search_knowledge", "transfer_call", "end_call".

availablebooleanRequired

Whether this voice capability is available for the selected inbox.

Allowed: false, true.

reasonstringOptional

Explanation of why this outcome occurred.

follows_deploybooleanOptional

Whether this binding follows new deployments of its source capability.

Allowed: true.

bindingsarray of objectRequired

Configured connections between an inbox assistant and voice capabilities.

Item fields
idstringRequired

Unique identifier. Use the value returned by a create or list operation.

inbox_idstringRequired

Inbox identifier.

offering_keystringRequired

Stable key identifying a published voice capability.

revisionstringRequired

Revision identifying the version of this capability or configuration.

enabledbooleanRequired

Whether this feature is enabled.

settingsVoiceBindingSettingsOptional

Configuration fields defined by this voice capability.

VoiceBindingSettings
meetingsarray of objectRequired

Booking links available to the voice assistant.

Item fields
idstringRequired

Unique identifier. Use the value returned by a create or list operation.

labelstringRequired

Human-readable label shown for this item; use its ID or key in API calls.

ownerstringRequired

Record to which the voice capability belongs.

Errors & retries

This operation reads data. It needs no idempotency key and can be retried after a transient failure.

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.
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.

Next steps

Download OpenAPI · Versioning & retirement

JSON schemas

Use the complete schemas for validation or client generation.

Full request JSON schema
{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "examples": [
    {}
  ]
}
Full response JSON schema
{
  "type": "object",
  "properties": {
    "offerings": {
      "type": "array",
      "items": {
        "title": "VoiceOffering",
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "Stable key identifying this option within its collection; distinct from its display label."
          },
          "source": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "app",
                  "builtin",
                  "integration"
                ],
                "description": "Category identifying which variant of this model applies."
              },
              "id": {
                "type": "string",
                "description": "Unique identifier. Use the value returned by a create or list operation."
              },
              "label": {
                "type": "string",
                "description": "Human-readable label shown for this item; use its ID or key in API calls."
              }
            },
            "required": [
              "kind",
              "id",
              "label"
            ],
            "additionalProperties": false,
            "description": "App or integration supplying the voice capability."
          },
          "revision": {
            "type": "string",
            "description": "Revision identifying the version of this capability or configuration."
          },
          "source_version": {
            "type": "string",
            "description": "Published source version used by this capability."
          },
          "capability": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "read",
                  "write"
                ],
                "description": "Category identifying which variant of this model applies."
              },
              "label": {
                "type": "string",
                "description": "Human-readable label shown for this item; use its ID or key in API calls."
              },
              "description": {
                "type": "string",
                "description": "Descriptive text."
              },
              "id": {
                "type": "string",
                "description": "Unique identifier. Use the value returned by a create or list operation."
              },
              "changes": {
                "type": "object",
                "additionalProperties": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "value": {
                          "anyOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "string"
                            },
                            {
                              "type": "number"
                            },
                            {
                              "type": "boolean",
                              "const": false
                            },
                            {
                              "type": "boolean",
                              "const": true
                            }
                          ],
                          "description": "Literal value to write when this capability applies the change."
                        }
                      },
                      "required": [
                        "value"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "fromField": {
                          "type": "string",
                          "description": "Read the change value from this field on the selected record."
                        }
                      },
                      "required": [
                        "fromField"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "fromInput": {
                          "type": "string",
                          "description": "Read the change value from this named capability input."
                        }
                      },
                      "required": [
                        "fromInput"
                      ],
                      "additionalProperties": false
                    }
                  ]
                },
                "description": "Setting changes to apply to the existing binding."
              },
              "input": {
                "type": "object",
                "additionalProperties": true,
                "description": "A JSON Schema document describing the accepted value. See https://json-schema.org/understanding-json-schema/."
              },
              "source": {
                "type": "string",
                "description": "App or integration supplying the voice capability."
              },
              "settings": {
                "type": "object",
                "properties": {
                  "booking_link_id": {
                    "type": "string",
                    "description": "Booking link identifier."
                  }
                },
                "required": [],
                "additionalProperties": false,
                "description": "Configuration fields defined by this voice capability."
              },
              "target": {
                "type": "object",
                "properties": {
                  "where": {
                    "type": "object",
                    "additionalProperties": {
                      "anyOf": [
                        {
                          "type": "null"
                        },
                        {
                          "type": "string"
                        },
                        {
                          "type": "number"
                        },
                        {
                          "type": "boolean",
                          "const": false
                        },
                        {
                          "type": "boolean",
                          "const": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "fromInput": {
                              "type": "string",
                              "description": "Read the change value from this named capability input."
                            }
                          },
                          "required": [
                            "fromInput"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    },
                    "description": "Record-selection conditions used by the capability."
                  },
                  "type": {
                    "type": "string",
                    "description": "Type identifying which variant of this model applies."
                  },
                  "fields": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Named fields applicable to this item."
                  },
                  "bundle_id": {
                    "type": "string",
                    "description": "Bundle identifier."
                  },
                  "owner_field": {
                    "type": "string",
                    "description": "Field identifying the capability's owning record."
                  },
                  "owner_type": {
                    "type": "string",
                    "enum": [
                      "company",
                      "person"
                    ],
                    "description": "Resource type of the capability's owning record."
                  }
                },
                "required": [
                  "where",
                  "type",
                  "fields",
                  "bundle_id",
                  "owner_field",
                  "owner_type"
                ],
                "additionalProperties": false,
                "description": "Record or operation targeted by this capability."
              },
              "builtin": {
                "type": "string",
                "enum": [
                  "take_message",
                  "book_meeting",
                  "manage_calendar",
                  "search_knowledge",
                  "transfer_call",
                  "end_call"
                ],
                "description": "Whether the capability is supplied by Brigg."
              }
            },
            "required": [
              "kind",
              "label",
              "description",
              "id",
              "changes"
            ],
            "additionalProperties": false,
            "description": "Voice capability exposed by an app or integration."
          },
          "available": {
            "type": "boolean",
            "enum": [
              false,
              true
            ],
            "description": "Whether this voice capability is available for the selected inbox."
          },
          "reason": {
            "type": "string",
            "description": "Explanation of why this outcome occurred."
          },
          "follows_deploy": {
            "type": "boolean",
            "enum": [
              true
            ],
            "description": "Whether this binding follows new deployments of its source capability."
          }
        },
        "required": [
          "key",
          "source",
          "revision",
          "source_version",
          "capability",
          "available"
        ],
        "additionalProperties": false
      },
      "description": "Available voice capabilities that can be bound to an inbox assistant."
    },
    "bindings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier. Use the value returned by a create or list operation."
          },
          "inbox_id": {
            "type": "string",
            "description": "Inbox identifier."
          },
          "offering_key": {
            "type": "string",
            "description": "Stable key identifying a published voice capability."
          },
          "revision": {
            "type": "string",
            "description": "Revision identifying the version of this capability or configuration."
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether this feature is enabled."
          },
          "settings": {
            "description": "Configuration fields defined by this voice capability.",
            "title": "VoiceBindingSettings",
            "type": "object",
            "properties": {
              "booking_link_id": {
                "type": "string",
                "description": "Booking link identifier."
              }
            },
            "required": [],
            "additionalProperties": false
          }
        },
        "required": [
          "id",
          "inbox_id",
          "offering_key",
          "revision",
          "enabled"
        ],
        "additionalProperties": false
      },
      "description": "Configured connections between an inbox assistant and voice capabilities."
    },
    "meetings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier. Use the value returned by a create or list operation."
          },
          "label": {
            "type": "string",
            "description": "Human-readable label shown for this item; use its ID or key in API calls."
          },
          "owner": {
            "type": "string",
            "description": "Record to which the voice capability belongs."
          }
        },
        "required": [
          "id",
          "label",
          "owner"
        ],
        "additionalProperties": false
      },
      "description": "Booking links available to the voice assistant."
    }
  },
  "required": [
    "offerings",
    "bindings",
    "meetings"
  ],
  "additionalProperties": false,
  "examples": [
    {
      "offerings": [
        {
          "key": "[\"builtin\",\"brigg\",\"book_meeting\"]",
          "source": {
            "kind": "builtin",
            "id": "brigg",
            "label": "Brigg"
          },
          "revision": "revision_booking_1",
          "source_version": "1",
          "capability": {
            "kind": "write",
            "label": "Book a meeting",
            "description": "Book a time using an active meeting link.",
            "id": "book_meeting",
            "changes": {},
            "builtin": "book_meeting"
          },
          "available": true
        }
      ],
      "bindings": [
        {
          "id": "voice_binding_booking",
          "inbox_id": "e_inbox_support",
          "offering_key": "[\"builtin\",\"brigg\",\"book_meeting\"]",
          "revision": "revision_booking_1",
          "enabled": true,
          "settings": {
            "booking_link_id": "booking_support"
          }
        }
      ],
      "meetings": [
        {
          "id": "booking_support",
          "label": "Support consultation",
          "owner": "Alex Morgan"
        }
      ]
    }
  ]
}

Search by operation name or what you want to build.

Use arrow keys to browse. Enter opens a result.