API Overview

VoicerCRM is API-first: everything the web UI does is available over a REST API, so your own software can read and write customers, leads, communications, sales documents and more.

Base URL & format

All endpoints live under /api/v1 and speak JSON:

https://your-crm.example.com/api/v1

Authentication

Log in to get a JWT bearer token, then send it on every request.

POST /api/v1/auth/login
Content-Type: application/json

{ "email": "you@example.com", "password": "••••••••" }

# → { "token": "<jwt>", "user": { "id": "…", "role": "…", "permissions": [ … ] } }
Authorization: Bearer <jwt>

Access is enforced by role-based permissions — a token only does what its user's role allows.

Conventions

  • Pagination — list endpoints take limit/offset and return total, hasMore and nextOffset.
  • Errors — a consistent envelope with standard HTTP codes (400/401/403/404/409/422/429/500).
  • Rate limits — responses carry X-RateLimit-* headers (1000/hour on the standard tier).

Core resources

ResourceWhat it manages
/parties, /parties/searchCustomers & organizations (the Party model).
/communicationsLogged calls, emails, meetings, notes and SMS.
/leadsLead capture, scoring and routing.
/quotes, /invoicesSales documents and change orders.
/forecasting/*Revenue forecast, pipeline velocity.
/workflowsAutomation rules and execution.
/reporting/*Dashboards and reports.
/integrations, /integrations/webhooksThird-party connectors & outbound webhooks.
/api/pbx/*Telephony — see PBX Integration.
Comprehensive reference

This is the orientation; the shipped API-DOCUMENTATION-COMPREHENSIVE.md in the server is the field-by-field reference. A published interactive reference is on the roadmap for these docs.