Fire a trigger now
POST/api/v1/triggers/{id}/run
scope
runs:startIdempotentCosts 10 rate-limit unitsFires the trigger immediately, whatever its schedule says, and starts a run per resolved target. Preview first — this spends. Refused with 402 when the monthly AI budget is exhausted.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | string (uuid) | Trigger id |
Request
curl -X POST "https://your-crm.example.com/api/v1/triggers/4b5c6d7e-8f9a-4b0c-8d1e-2f3a4b5c6d7e/run" \
-H "Authorization: Bearer $RAABTA_API_KEY" \
-H "Idempotency-Key: 6f1c2a9e-3b4d-4c5e-8f7a-9b0c1d2e3f4a"Response · 202 Accepted
{
"data": {
"started": 12,
"run_ids": [
"3f9a1c2e-5b7d-4e8f-9a0b-1c2d3e4f5a6b"
],
"excluded": 3
}
}Response
Wrapped in { data: … }| Name | Type | Description |
|---|---|---|
startedrequired | integer | Runs actually started |
run_idsrequired | string (uuid)[] | The runs that were started |
excludedrequired | integer | Contacts skipped, for the same reasons preview reports |
Errors
| Status | Code | When |
|---|---|---|
| 400 | validation_error | The body or query failed validation. `details` lists each failing field with a `path` and a `message`. |
| 401 | unauthorized | No usable API key: the Authorization header is missing or malformed, or the key is unknown, revoked or expired. The three are deliberately indistinguishable. |
| 402 | plan_limit_reached | The account has reached a plan limit for this resource. `details[0].limit` is the cap; ask the account owner to raise it. |
| 403 | forbidden | The key is valid but lacks the scope this endpoint requires, or the request came from an address outside the key’s IP allowlist. The message says which. |
| 403 | account_suspended | The account this key belongs to is suspended. Rotating the key will not help; contact support. |
| 404 | not_found | No such resource in this account. A resource that exists in another account also returns this. |
| 409 | conflict | The request conflicts with current state: a duplicate phone number on create, an invalid state transition, or an idempotent request that is still in flight. |
| 422 | unprocessable | The request was well-formed but cannot be carried out. `reason` is a stable string saying why (for example `outside_window` or `stage_not_in_pipeline`). |
| 429 | rate_limited | The per-key budget, or the per-IP budget for failed authentication, is exhausted. Honour `Retry-After` before retrying. |
| 500 | internal | Something failed on our side. Safe to retry with the same Idempotency-Key; quote `request_id` if it persists. |