RaabtaHQ
Get a trigger

Get a trigger

GET/api/v1/triggers/{id}

scope assistants:read

One trigger, including when it last fired and why the last firing produced no run, if it produced none.

Path parameters

NameTypeDescription
idrequired
string (uuid)Trigger id
Request
curl "https://your-crm.example.com/api/v1/triggers/4b5c6d7e-8f9a-4b0c-8d1e-2f3a4b5c6d7e" \
  -H "Authorization: Bearer $RAABTA_API_KEY"
Response · 200 OK
{
  "data": {
    "id": "4b5c6d7e-8f9a-4b0c-8d1e-2f3a4b5c6d7e",
    "assistant_id": "8f2c1d3e-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
    "name": "Weekly no-show follow-up",
    "enabled": true,
    "kind": "recurring",
    "goal": "Message anyone who missed an appointment this week and offer to rebook.",
    "period": "weekly",
    "send_time": "10:00",
    "day_of_week": 1,
    "day_of_month": null,
    "run_at": null,
    "event_key": null,
    "audience_type": "segment",
    "contact_id": null,
    "segment_id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
    "max_targets": 50,
    "respect_quiet_hours": true,
    "last_fired_at": "2026-09-01T10:00:00.000Z",
    "last_error": null,
    "created_at": "2026-08-10T12:00:00.000Z",
    "updated_at": "2026-09-01T10:00:00.000Z"
  }
}

Response

Wrapped in { data: … }
NameTypeDescription
idrequired
string (uuid)Trigger id
assistant_idrequired
string (uuid)The assistant this fires
namerequired
stringTrigger name
enabledrequired
booleanTriggers are created switched OFF; enable them explicitly
kindrequired
string (enum)What wakes the assistantrecurringonceeventwebhook
goalrequired
stringWhat the assistant is asked to do when this fires
periodrequired
string (enum) | nullRecurring triggers onlydailyweeklymonthly
send_timerequired
string | nullRecurring only, as HH:MM in the account timezone
day_of_weekrequired
integer | nullRecurring weekly, where 0 is Sunday
day_of_monthrequired
integer | nullRecurring monthly, 1 to 31, clamped to the end of a short month
run_atrequired
string (date-time) | nullOne-off triggers only: when it fires
event_keyrequired
string | nullEvent triggers only: which event, from the catalogue
audience_typerequired
string (enum)Who a firing acts onnonecontactsegment
contact_idrequired
string (uuid) | nullSet when the audience is a single contact
segment_idrequired
string (uuid) | nullSet when the audience is a segment
max_targetsrequired
integerCeiling on runs started per firing, 1 to 500
respect_quiet_hoursrequired
booleanDefer a firing that lands outside the account sending hours
last_fired_atrequired
string (date-time) | nullWhen it last fired
last_errorrequired
string | nullWhy the last firing produced no run, if it produced none
created_atrequired
string (date-time)When it was created
updated_atrequired
string (date-time)When it was last edited

Errors

StatusCodeWhen
400validation_errorThe body or query failed validation. `details` lists each failing field with a `path` and a `message`.
401unauthorizedNo usable API key: the Authorization header is missing or malformed, or the key is unknown, revoked or expired. The three are deliberately indistinguishable.
403forbiddenThe 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.
403account_suspendedThe account this key belongs to is suspended. Rotating the key will not help; contact support.
404not_foundNo such resource in this account. A resource that exists in another account also returns this.
429rate_limitedThe per-key budget, or the per-IP budget for failed authentication, is exhausted. Honour `Retry-After` before retrying.
500internalSomething failed on our side. Safe to retry with the same Idempotency-Key; quote `request_id` if it persists.