Skip to main content
POST
Fire a trigger

Authorizations

Authorization
string
header
default:Bearer brew_your_api_key
required

Send your Brew API key as Authorization: Bearer brew_xxx.

Headers

Idempotency-Key
string

Optional idempotency key for safe retries. Reusing the same key with the same request body returns the original response for 24 hours.

Required string length: 1 - 100
X-Brand-Id
string

The brand this request acts on. REQUIRED for organization-scoped credentials (otherwise 400 BRAND_ID_REQUIRED — there is no default brand); list ids with GET /v1/brands. Brand-scoped credentials may omit it, and sending a different brand returns 403 BRAND_SCOPE_MISMATCH. A brand outside your organization returns 404 BRAND_NOT_FOUND.

Required string length: 1 - 64

Path Parameters

triggerEventId
string
required

Trigger id returned by POST /v1/automations/triggers. Custom triggers use tri_… ids; integration triggers use composite ids (e.g. clerk:org_…:brand_…:user.created, URL-encode the colons).

Required string length: 1 - 256
Example:

"user_signed_up"

Body

application/json
payload
object
required

Event payload — fields and types must match the trigger's payloadSchema. Unknown fields are accepted but reported as unexpected_key warnings.

Response

Idempotent replay: this Idempotency-Key already fired. The ids are the original run’s.

triggerInstanceId
string
required

The persisted inbound row — GET /v1/automations/trigger-instances/{triggerInstanceId} for its match state.

triggerEventId
string
required
Required string length: 1 - 256
status
enum<string>
required

triggered = this call started the runs. replayed = the same Idempotency-Key already fired; nothing ran twice.

Available options:
triggered,
replayed
automationRunIds
string[]
required

The runs this fire started — GET /v1/automations/runs/{automationRunId}.

publishedAutomations
object[]
required
counts
object
required
warnings
object[]
required
receivedAt
string<date-time>
required