RaabtaHQ
List an assistant’s tools

List an assistant’s tools

GET/api/v1/assistants/{id}/tools

scope assistants:read

What this assistant can actually do. Every tool in the catalogue with enabled already resolved — a tool the assistant says nothing about takes the catalogue default, so this answers "what can it do" rather than "what was overridden". gated marks the ones that stop for a human first.

Path parameters

NameTypeDescription
idrequired
string (uuid)Assistant id
Request
curl "https://your-crm.example.com/api/v1/assistants/8f2c1d3e-4a5b-4c6d-9e0f-1a2b3c4d5e6f/tools" \
  -H "Authorization: Bearer $RAABTA_API_KEY"
Response · 200 OK
{
  "data": [
    {
      "id": "bookings.create",
      "group": "booking",
      "group_label": "Bookings",
      "title": "create",
      "description": "Book an appointment for a contact.",
      "sensitivity": "write",
      "enabled": true,
      "gated": false,
      "default_enabled": true,
      "explicit": true
    }
  ]
}

Response

Wrapped in { data: … }
NameTypeDescription
idrequired
stringTool id
grouprequired
stringCatalogue group id
group_labelrequired
stringGroup name as shown in the dashboard
titlerequired
stringShort human name
descriptionrequired
stringWhat the tool does
sensitivityrequired
string (enum)A critical tool always raises an approval, whatever `gated` saysreadwritecritical
enabledrequired
booleanWhether this assistant may use it, with the catalogue default already applied
gatedrequired
booleanWhether it pauses for a human approval before running
default_enabledrequired
booleanWhat it would be if the assistant said nothing
explicitrequired
booleanTrue when the assistant states an opinion, false when it is taking the default

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.