API & Webhooks
The CRM provides a REST API (v1) for external integrations and webhook subscriptions for real-time event notifications. 22.1 REST API All endpoints require API token authentication...
The CRM provides a REST API (v1) for external integrations and webhook subscriptions for real-time event notifications.
22.1 REST API
All endpoints require API token authentication (Laravel Sanctum) and the module:crm middleware. Base URL: /api/{business}/crm/v1/
| Resource | Endpoints | Methods |
|---|---|---|
| Customers | /customers, /customers/search, /customers/{id} |
GET list/search/show, POST, PUT/PATCH, DELETE |
| Deals | /deals, /deals/{id}, /deals/{id}/move, /deals/{id}/won, /deals/{id}/lost |
GET, POST, PUT/PATCH, PATCH stage/won/lost, DELETE |
| Quotes | /quotes, /quotes/{id}, /quotes/{id}/status |
GET list/show, PATCH status |
| Invoices | /invoices, /invoices/{id}, /invoices/{id}/payments |
GET list/show, POST create, POST payments |
| Contracts | /contracts, /contracts/{id} |
GET list/show, POST, PUT/PATCH, DELETE |
| Activities | /activities, /activities/{id}, /activities/{id}/complete |
GET list/show, POST, PUT/PATCH, PATCH complete, DELETE |
| Pipelines | /pipelines, /pipelines/{id} |
GET list/show |
| Conversations | /conversations, /conversations/{id}, /conversations/{id}/reply, /conversations/{id}/assign, /conversations/{id}/status |
GET list/show, POST reply, POST assign, POST status |
| Webhooks | /webhooks, /webhooks/{id} |
GET list/show, POST, PUT/PATCH, DELETE |
API access requires
auth:sanctumand the relevant CRM permissions.
Conversation channel values include:
emailwhatsappphonesmsfacebookinstagram
Manual channels are represented as logged CRM interactions rather than provider-delivered messages.
22.2 Webhooks
Subscribe to CRM events and receive HTTP POST notifications at your endpoint:
- Use the API to create a webhook subscription (
POST /api/{business}/crm/v1/webhooks) - Specify the target URL and events to subscribe to
- The CRM sends JSON payloads when events fire
Available events: Deal won, deal lost, deal stage changed, lead captured, message received, message sent, invoice posted, invoice sync failed.
Webhook management requires the
crm.settings.managepermission and the webhooks feature to be enabled.
Webhook note:
- Live transport webhooks apply to integrated channels such as Email and WhatsApp
- Manual channels (Phone, SMS, Facebook, Instagram) are tracked inside CRM, but do not expose provider transport webhooks in this release