API reference
92 endpoints across 13 resources, all under /api/v1. Every page is generated from the same definitions that validate requests and build the OpenAPI document.
OpenAPI spec
The whole API as an OpenAPI 3.1 document — the same schemas these pages render, so a client generated from it validates exactly what the server validates.
Or import this URL into Postman, Insomnia or Stoplight — it is served with permissive CORS for exactly that:
https://www.raabtahq.online/api/v1/openapi.jsonMe
Identify the key and discover what it can do.
Contacts
The contact database: people, tags, custom fields and notes.
- GET
/contactsList contacts - POST
/contactsCreate a contact - GET
/contacts/{id}Get a contact - PATCH
/contacts/{id}Update a contact - POST
/contacts/{id}/tagsAdd tags to a contact - DELETE
/contacts/{id}/tags/{tag_id}Remove a tag from a contact - PUT
/contacts/{id}/custom-fieldsSet custom-field values - GET
/contacts/{id}/notesList notes on a contact - POST
/contacts/{id}/notesAdd a note to a contact - GET
/tagsList tags - POST
/tagsCreate a tag - GET
/custom-fieldsList custom fields
Inquiries
Website contact-form submissions and the inbox they land in.
Conversations
Threads in the shared inbox, assignment and AI handover.
- GET
/conversationsList conversations - GET
/conversations/{id}Get a conversation - GET
/conversations/{id}/messagesList messages in a conversation - PATCH
/conversations/{id}Update status or assignment - POST
/conversations/{id}/readMark a conversation read - POST
/conversations/{id}/takeoverHand the conversation to a human - POST
/conversations/{id}/return-to-aiReturn the conversation to the assistant - GET
/membersList team members
Messages
Send and read individual messages on any channel.
Templates
Approved WhatsApp message templates.
Broadcasts
Template campaigns to many recipients.
Pipelines & deals
Sales pipelines, their stages, and the deals moving through them.
AI assistants
Assistants, the tools they may use, their instruction library and what they remember.
- GET
/assistantsList assistants - POST
/assistantsCreate an assistant - GET
/assistants/{id}Get an assistant - PATCH
/assistants/{id}Update an assistant - DELETE
/assistants/{id}Delete an assistant - GET
/assistants/{id}/instructionsList an assistant’s instructions - PUT
/assistants/{id}/instructionsSet an assistant’s instructions - GET
/assistants/{id}/toolsList an assistant’s tools - PUT
/assistants/{id}/toolsSet an assistant’s tools - GET
/toolsList the tool catalogue - GET
/instructionsList the instruction library - POST
/instructionsAdd a library instruction - GET
/instructions/{id}Get a library instruction - PATCH
/instructions/{id}Update a library instruction - DELETE
/instructions/{id}Delete a library instruction - GET
/memoriesList assistant memories - POST
/memoriesWrite a memory - DELETE
/memories/{id}Forget a memory
Assistant triggers
What wakes an assistant: schedules, CRM events and inbound web hooks.
Runs & approvals
Starting and watching assistant runs, and answering what they ask.
AI usage & budget
What the AI has cost, and how much of this month is left in the budget.
Webhooks
Outbound event subscriptions and their deliveries.
- GET
/webhooksList webhook endpoints - POST
/webhooksCreate a webhook endpoint - GET
/webhooks/{id}Get a webhook endpoint - PATCH
/webhooks/{id}Update a webhook endpoint - DELETE
/webhooks/{id}Delete a webhook endpoint - POST
/webhooks/{id}/rotate-secretRotate the signing secret - POST
/webhooks/{id}/testSend a test event - GET
/webhooks/{id}/deliveriesList deliveries - GET
/webhooks/{id}/deliveries/{delivery_id}Get a delivery - POST
/webhooks/{id}/deliveries/{delivery_id}/redeliverRedeliver an event
Conventions shared by every endpoint
Requests and responses are JSON with snake_case keys. Successes are wrapped in { data }, lists in { data, meta }, failures in { error }. Timestamps are ISO 8601 in UTC; ids are UUIDs; phone numbers are E.164. Every response carries X-Request-Id and the rate-limit headers.