Access & visibility
Allow webhooks.PrepareWebhook 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.
urlstringRequiredAn HTTPS endpoint on a public host.
At least 1 character. At most 2048 characters.
eventstringRequiredEvent name. Supported values: meeting.completed, resource.created, resource.updated, resource.deleted. See the event reference for payloads and delivery contracts.
At least 1 character. At most 64 characters.
resource_typesarray of stringOptionalExplicit resource type identifiers, such as core:Company or a workspace app's qualified type. Discover the exact values from resource on the record operations returned by GET /v1/operations using a key with access to those records. These are resource types, not app names or operation namespaces. Required and non-empty for resource.created, resource.updated and resource.deleted; omit for legacy meeting.completed. Only selected, published shared types are included; new types are never added automatically. See webhook resource selection.
Response
Returns 200 OK with a JSON body.
configurationobjectRequiredProposed webhook settings for a person to approve in Brigg; this is not an active subscription.
Nested fields
urlstringRequiredAbsolute URL, including its scheme.
eventstringRequiredEvent name. Supported values: meeting.completed, resource.created, resource.updated, resource.deleted. See the event reference for payloads and delivery contracts.
resource_typesarray of stringRequiredExplicit resource type identifiers, such as core:Company or a workspace app's qualified type. Discover the exact values from resource on the record operations returned by GET /v1/operations using a key with access to those records. These are resource types, not app names or operation namespaces. Required and non-empty for resource.created, resource.updated and resource.deleted; omit for legacy meeting.completed. Only selected, published shared types are included; new types are never added automatically. See webhook resource selection.
approval_urlstringRequiredPath in the Brigg application where an administrator reviews this exact proposal. Open it on your Brigg application origin. Preparing a proposal does not create a subscription.
messagestringRequiredInstructions or outcome for the webhook action.
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
JSON schemas
Use the complete schemas for validation or client generation.
Full request JSON schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 2048,
"description": "An HTTPS endpoint on a public host."
},
"event": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Event name. Supported values: `meeting.completed`, `resource.created`, `resource.updated`, `resource.deleted`. See the [event reference](/developers/events) for payloads and delivery contracts."
},
"resource_types": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Explicit resource type identifiers, such as `core:Company` or a workspace app's qualified type. Discover the exact values from `resource` on the record operations returned by `GET /v1/operations` using a key with access to those records. These are resource types, not app names or operation namespaces. Required and non-empty for `resource.created`, `resource.updated` and `resource.deleted`; omit for legacy `meeting.completed`. Only selected, published shared types are included; new types are never added automatically. See [webhook resource selection](/developers/webhooks#choose-resource-types)."
}
},
"required": [
"url",
"event"
],
"additionalProperties": false,
"examples": [
{
"url": "https://example.com/webhooks/brigg",
"event": "resource.updated",
"resource_types": [
"core:Company"
]
}
]
}Full response JSON schema
{
"type": "object",
"properties": {
"configuration": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Absolute URL, including its scheme."
},
"event": {
"type": "string",
"description": "Event name. Supported values: `meeting.completed`, `resource.created`, `resource.updated`, `resource.deleted`. See the [event reference](/developers/events) for payloads and delivery contracts."
},
"resource_types": {
"type": "array",
"items": {
"type": "string"
},
"description": "Explicit resource type identifiers, such as `core:Company` or a workspace app's qualified type. Discover the exact values from `resource` on the record operations returned by `GET /v1/operations` using a key with access to those records. These are resource types, not app names or operation namespaces. Required and non-empty for `resource.created`, `resource.updated` and `resource.deleted`; omit for legacy `meeting.completed`. Only selected, published shared types are included; new types are never added automatically. See [webhook resource selection](/developers/webhooks#choose-resource-types)."
}
},
"required": [
"url",
"event",
"resource_types"
],
"additionalProperties": false,
"description": "Proposed webhook settings for a person to approve in Brigg; this is not an active subscription."
},
"approval_url": {
"type": "string",
"description": "Path in the Brigg application where an administrator reviews this exact proposal. Open it on your Brigg application origin. Preparing a proposal does not create a subscription."
},
"message": {
"type": "string",
"description": "Instructions or outcome for the webhook action."
}
},
"required": [
"configuration",
"approval_url",
"message"
],
"additionalProperties": false,
"examples": [
{
"configuration": {
"url": "https://example.com/webhooks/brigg",
"event": "resource.updated",
"resource_types": [
"core:Company"
]
},
"approval_url": "/settings/webhooks?webhook_proposal=%7B%22url%22%3A%22https%3A%2F%2Fexample.com%2Fwebhooks%2Fbrigg%22%2C%22event%22%3A%22resource.updated%22%2C%22resource_types%22%3A%5B%22core%3ACompany%22%5D%7D",
"message": "Review the endpoint and resource access in Brigg Settings."
}
]
}