When the Chatwoot module is not enabled on the server, all module endpoints return
503 with the message integration gateway not configured.How it works
- You activate the integration with
POST /api/chatwoot/set/:instance(or inline, when creating the instance). - RyzeAPI creates the inbox in Chatwoot and starts delivering the WhatsApp messages it receives there.
- The replies sent by the agent in Chatwoot flow back to RyzeAPI and are delivered to WhatsApp.
Management endpoints
Activate
POST /api/chatwoot/set/:instance, provisions the integration and creates the inbox.Status / Info
GET /api/chatwoot/list/:instance, returns the current state of the integration.Deactivate
DELETE /api/chatwoot/delete/:instance, removes the integration (the Chatwoot inbox is preserved).Inline activation when creating the instance
The integration can be activated together with instance creation, without a separateset call. Just include the chatwoot* block in the body of POST /api/instance/new:
chatwoot object comes back with status: "error" and error: "<message>". You can then call POST /api/chatwoot/set/:instance to fix the credentials without recreating the instance.
Detect whether the module is enabled
Data model
The server persists each integration in thechatwoot_integrations table. The chatwootApiToken is encrypted at rest with AES-256-GCM and is returned in plaintext by GET /api/chatwoot/list/:instance.
| Field | Description |
|---|---|
bridge_integration_id | Internal integration ID. |
chatwoot_base_url | URL of the Chatwoot installation. |
chatwoot_account_id | Numeric ID of the Chatwoot account. |
chatwoot_inbox_id / chatwoot_inbox_name | Inbox created in Chatwoot. |
status | active / paused / error. |
last_error | Last error message from the integration. |
Next steps
Activate integration
Provision the integration with
POST /api/chatwoot/set/:instance.Chatwoot errors
Mapping table of the integration’s HTTP status codes and messages.