Authentication
Send your key in the Authorization header. Requests without a valid key get 401.
curl "https://fraser.epicurus.pro/api/v1/contacts?q=sarah&limit=5" \
-H "Authorization: Bearer ep_live_your_key"
Endpoints
Endpoints marked write need a read + write key.
Account
| GET | /v1/me | Your organisation, key name, scopes and plan |
| GET | /v1/billing | Plan, status, current period and next bill |
| GET | /v1/credits | Credit balance |
| GET | /v1/audit-log | Organisation audit log |
Team & locations
| GET | /v1/locations | Locations in your group with people counts |
| GET | /v1/team | Team members, roles and status |
| GET | /v1/team/{id} | One team member |
| POST | /v1/team | Invite a team member (write) |
Contacts
| GET | /v1/contacts | Search contacts (q, limit) |
| GET | /v1/contacts/{id} | One contact with phones, emails and history |
| POST | /v1/contacts | Add a contact (write) |
| GET | /v1/companies | Search companies |
Email
| GET | /v1/emails | Email conversations, newest first |
| GET | /v1/emails/{thread} | Every message in a conversation |
| POST | /v1/emails | Send an email to a contact (write) |
| GET | /v1/mailbox | Connected mailbox settings |
| POST | /v1/mailbox/sync-mode | Change mailbox sync mode (write) |
Calls & messages
| GET | /v1/phone-numbers | Numbers on your account |
| GET | /v1/phone/usage | Minutes used and available |
| GET | /v1/comm-logs | Calls, SMS and WhatsApp logs |
| GET | /v1/comm-logs/{id} | One call with transcript and summary |
| POST | /v1/comm-logs | Log a call or message (write) |
Tasks
| GET | /v1/tasks | Your tasks (status, contact_id, limit) |
| GET | /v1/tasks/{id} | One task with notes |
| POST | /v1/tasks | Create a task (write) |
| POST | /v1/tasks/{id}/notes | Add a note (write) |
| POST | /v1/tasks/{id}/complete | Complete a task (write) |
Help & support
| GET | /v1/help | Search the help centre (question) |
| GET | /v1/support-tickets | Your support tickets |
| GET | /v1/support-tickets/{id} | One ticket |
| POST | /v1/support-tickets | Raise a ticket (write) |
Creating things
curl -X POST https://fraser.epicurus.pro/api/v1/tasks \
-H "Authorization: Bearer ep_live_your_key" \
-H "Content-Type: application/json" \
-d '{"title":"Send Sarah the floor plan","due_on":"2026-10-15"}'
Errors
Errors return a JSON body like {"error":{"type":"not_found","message":"…"}} with the matching HTTP status: 401 bad key, 403 missing scope, 404 not found, 422 validation, 429 rate limited.