Authentication
Send your key in the Authorization header. Requests without a valid key get 401.
curl "https://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/{thread}/actions | Flag, pin, mark read or unread, delete, restore, close or reopen a conversation (write) |
| GET | /v1/email-recipients?q= | Find people to email: contacts first, then recent senders |
| GET | /v1/team-chats | Team Messages conversations with unread counts |
| GET | /v1/team-chats/messages | Messages in one chat (user_id or group_id) |
| POST | /v1/team-chats/messages | Send a Team Messages chat message to a colleague (write) |
| GET | /v1/agent-payments | Agent purchases and bookings with status, pay-as (business, personal, expense), claim status and receipts (read only) |
| GET | /v1/payment-cards | Your saved personal and business cards for agent payments, last 4 only (read only) |
| GET | /v1/meeting-notes | Meeting taker notes with summaries, optional transcript (read only) |
| 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) |
Documents
| GET | /v1/documents | Documents the agent made for you |
| POST | /v1/documents | Create a branded PDF, Word, PowerPoint or Excel file (write) |
| POST | /v1/documents/designed | Create a designed PDF brochure, deck, proposal, report or one-pager with charts and images (write) |
| GET | /v1/document-styles | Saved document styles |
Slack
| GET | /v1/slack-workspaces | Slack workspaces Epicurus Pro is in, and whether you have linked your Slack account |
Bookings
| GET | /v1/bookings | Your travel and venue bookings, incl. ones your agent booked by phone, with status, booked_by and call_id (?when=past, limit) |
Voice ID
| GET | /v1/voice-id | Voice ID status and saved voice names (never voice data) |
Email watches
| GET | /v1/email-watches | Emails you are waiting on, with chaser status |
Memorable dates
| GET | /v1/memorable-dates | Upcoming birthdays and memorable dates (?days=30) |
| POST | /v1/memorable-dates | Save a date against a contact (contact_id, label, date, recurring, note) |
Expenses
| GET | /v1/mileage/trips | Mileage trips (from, to, kind) |
| GET | /v1/mileage/claims | Monthly mileage claims (status, team=true for admins) |
| GET | /v1/travel-expenses | Travel and hotel expenses (from, to, pay_as) |
| POST | /v1/travel-expenses | Record a travel or hotel expense (write) |
| GET | /v1/expense-reports/{type} | Report for mileage, travel or agent-payments (from, to, member_id) |
| GET | /v1/agent-payments | Purchases the agent made, with claim status |
| GET | /v1/spending-policy | Categories the agent always refuses (e.g. gambling) |
My Garage
| GET | /v1/vehicles | Your vehicles (fleet=true for fleet managers), due dates, service and recovery details |
| POST | /v1/vehicles | Add a vehicle (reg, ownership, mileage, make, model…) (write) |
| GET | /v1/road-charges | Detected drop-off, toll, Congestion Charge and ULEZ charges (all=true) |
| POST | /v1/road-charges/{id} | Set vehicle, personal/business and status (write) |
Credit scoring
| GET | /v1/credit/search | Find UK companies on Creditsafe (q) — Enterprise |
| POST | /v1/credit/reports | Run a credit report (cs_id, contact_id), uses credits (write) |
| GET | /v1/credit/reports | Reports your organisation has run |
Facilities & travel
| GET | /v1/facilities/jobs | Facilities jobs (status, query), limited to your locations |
| GET | /v1/flights | Upcoming flights and check-in reminders |
Dashboards & sites
| GET | /v1/dashboards | Dashboards, reports and pages the agent built, with links |
| POST | /v1/mini-sites | Build a branded presentation or mini website from a brief, in the background (write) |
Trust & provenance
| GET | /v1/provenance | Why the agent did something: steps, sources and hash for each answer and action |
| GET | /v1/provenance/verify | Integrity check of every provenance record |
Product updates
| GET | /v1/whats-new | Epicurus Pro release notes, newest first |
Legal research
| GET | /v1/legal-research | In-depth UK legal and HR research with statutes, cases and sources (?question=&jurisdiction=) |
Places
| GET | /v1/places | Find restaurants, hotels and businesses (?query=&near=&open_now=) |
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://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.