Access & visibility
Allow automation.UpdateRule on your API key.
Acting member required. Send Brigg-Act-As with an approved member account ID. The key supplies permissions; the member selects whose data is used.
The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply.
Request fields
Send a JSON object with the following fields. Required fields must be included; omit optional fields you do not need.
rule_idstringRequiredUse the returned rule_id together with its app_id. A rule's display label is not its ID. automation.ListRules.
At least 1 character.
app_idstringOptionalUse the owning app's app_id from ListApps, or core for workspace-native automations. This is not a public operation namespace. Omit only when the request field is optional. workspace.ListApps.
enabledfalseRequiredPause an automation. Creation, resumption and test execution require a person in Brigg because a rule runs later with its owner's permissions.
Always false.
Inspect before changing an automation
Find a rule with List rules, then read Get rule for its current configuration and recent runs. Preserve the rule_id and app_id pair. enabled controls future trigger handling; it is not a report that an earlier run succeeded.
Check can_manage before offering an edit or delete action. Built-in locked rules may be visible without being editable. The public update can pause a rule with enabled: false. It cannot resume a rule or author new actions; perform those steps in Brigg.
Response
Returns 200 OK with a JSON body.
rule_idstringRequiredRule identifier.
app_idstringRequiredApp identifier.
ruleobject or nullRequiredThe definition AS STORED.
Nested fields
rule_idstringRequiredRule identifier.
app_idstringRequiredApp identifier.
descriptionstring or nullOptionalDescriptive text.
triggerobjectOptionalCondition or schedule that starts the automation.
Nested fields
typestringRequiredType identifying which variant of this model applies.
Allowed: "on_cron", "on_create", "on_update", "on_delete", "on_message".
schedulestringOptionalCron expression for an on_cron trigger, typically minute hour day-of-month month day-of-week. For example, 0 9 * * 1-5 runs at 09:00 on weekdays in timezone. Not present on record-change triggers.
timezonestringOptionalIANA time zone, for example Europe/Oslo.
resource_typestringOptionalResource type whose changes can trigger this automation.
fieldsarray of stringOptionalRecord fields whose changes the trigger observes.
transitionobjectOptionalField-value transition that qualifies a record change.
Nested fields
fieldstringRequiredRecord field whose change the trigger observes.
tostring or boolean or numberRequiredDestination value that the field must change to.
channelstringOptionalCommunication channel to which this trigger applies.
enabledbooleanRequiredWhether this feature is enabled.
lockedbooleanRequiredBuilt-in: neither disabled nor deleted.
scopestringRequiredorg for an org-level rule, mine for the caller's own.
can_managebooleanRequiredWhether the acting member can manage this automation.
created_atnumberRequiredCreation time in Unix milliseconds.
enabledbooleanRequiredWhether this feature is enabled.
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. Supply Brigg-Act-As with a member authorized by the key’s delegation grant. The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply. |
| 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. |
Next steps
JSON schemas
Use the complete schemas for validation or client generation.
Full request JSON schema
{
"type": "object",
"properties": {
"rule_id": {
"type": "string",
"minLength": 1,
"description": "Use the returned rule_id together with its app_id. A rule's display label is not its ID. [automation.ListRules](/developers/reference/automation/ListRules)."
},
"app_id": {
"type": "string",
"description": "Use the owning app's app_id from ListApps, or core for workspace-native automations. This is not a public operation namespace. Omit only when the request field is optional. [workspace.ListApps](/developers/reference/workspace/ListApps)."
},
"enabled": {
"type": "boolean",
"const": false,
"description": "Pause an automation. Creation, resumption and test execution require a person in Brigg because a rule runs later with its owner's permissions."
}
},
"required": [
"rule_id",
"enabled"
],
"additionalProperties": false,
"examples": [
{
"rule_id": "e_example",
"enabled": false
}
]
}Full response JSON schema
{
"type": "object",
"properties": {
"rule_id": {
"type": "string",
"description": "Rule identifier."
},
"app_id": {
"type": "string",
"description": "App identifier."
},
"rule": {
"type": [
"object",
"null"
],
"properties": {
"rule_id": {
"type": "string",
"description": "Rule identifier."
},
"app_id": {
"type": "string",
"description": "App identifier."
},
"description": {
"type": [
"string",
"null"
],
"description": "Descriptive text."
},
"trigger": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"on_cron",
"on_create",
"on_update",
"on_delete",
"on_message"
],
"description": "Type identifying which variant of this model applies."
},
"schedule": {
"type": "string",
"description": "Cron expression for an on_cron trigger, typically minute hour day-of-month month day-of-week. For example, 0 9 * * 1-5 runs at 09:00 on weekdays in timezone. Not present on record-change triggers."
},
"timezone": {
"type": "string",
"description": "IANA time zone, for example Europe/Oslo."
},
"resource_type": {
"type": "string",
"description": "Resource type whose changes can trigger this automation."
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Record fields whose changes the trigger observes."
},
"transition": {
"type": "object",
"properties": {
"field": {
"type": "string",
"description": "Record field whose change the trigger observes."
},
"to": {
"type": [
"string",
"boolean",
"number"
],
"description": "Destination value that the field must change to."
}
},
"required": [
"field",
"to"
],
"additionalProperties": false,
"description": "Field-value transition that qualifies a record change."
},
"channel": {
"type": "string",
"description": "Communication channel to which this trigger applies."
}
},
"required": [
"type"
],
"additionalProperties": false,
"description": "Condition or schedule that starts the automation."
},
"enabled": {
"type": "boolean",
"description": "Whether this feature is enabled."
},
"locked": {
"type": "boolean",
"description": "Built-in: neither disabled nor deleted."
},
"scope": {
"type": "string",
"description": "`org` for an org-level rule, `mine` for the caller's own."
},
"can_manage": {
"type": "boolean",
"description": "Whether the acting member can manage this automation."
},
"created_at": {
"type": "number",
"description": "Creation time in Unix milliseconds."
}
},
"required": [
"rule_id",
"app_id",
"enabled",
"locked",
"scope",
"can_manage",
"created_at"
],
"description": "The definition AS STORED.",
"additionalProperties": false
},
"enabled": {
"type": "boolean",
"description": "Whether this feature is enabled."
}
},
"required": [
"rule_id",
"app_id",
"rule",
"enabled"
],
"additionalProperties": false,
"examples": [
{
"rule_id": "e_example",
"app_id": "e_example",
"rule": null,
"enabled": true
}
]
}