Mobile API Reference

Complete REST API reference for the CRM mobile app. 125 endpoints across 13 resource groups.

Base URL {{baseUrl}}/api/v1

Authentication: After login, pass the returned token as a request header: access_token: {your_token}. Alternatively use the query parameter ?access_token={your_token}.

🔑

auth

3 endpoints
POST /login Receive access token Try it →
FieldTypeRequiredDescription
loginstringrequiredUser email address
passwordstringrequiredUser password
device_namestringoptionalDevice identifier for token scoping

Response: {"access_token": "string"}

bash
curl -X POST "{{baseUrl}}/api/v1/login" \
  -H "Content-Type: application/json" \
  -d '{"login": "user@example.com", "password": "secret", "device_name": "MyApp"}'
POST /logout Log out and destroy current access token Try it →
Requires authentication. Invalidates the token passed in the request header.
bash
curl -X POST "{{baseUrl}}/api/v1/logout" \
  -H "access_token: {your_token}"
POST /reset-password Send password reset email Try it →
FieldTypeRequiredDescription
emailstringoptionalEmail address to send reset link to
bash
curl -X POST "{{baseUrl}}/api/v1/reset-password" \
  -H "Content-Type: application/json" \
  -d '{"email": "user@example.com"}'

common

10 endpoints
GET /common/app-state Badge counts for app tab bar Try it →

Response: {"badges": {"new_activities": 0, "unread_emails": 0, "unread_sms": 0, "unread_messages": 0}}

bash
curl "{{baseUrl}}/api/v1/common/app-state" \
  -H "access_token: {your_token}"
GET /common/app-user-settings Twilio config + default_status_view — load once at app launch Try it →
bash
curl "{{baseUrl}}/api/v1/common/app-user-settings" \
  -H "access_token: {your_token}"
GET /common/app-phones-prefixes Phone prefixes with country and flag emoji Try it →
bash
curl "{{baseUrl}}/api/v1/common/app-phones-prefixes" \
  -H "access_token: {your_token}"
GET /common/app-phone-main-type Main phone type string Try it →
bash
curl "{{baseUrl}}/api/v1/common/app-phone-main-type" \
  -H "access_token: {your_token}"
GET /common/app-phone-types Array of {value, title} phone types Try it →
bash
curl "{{baseUrl}}/api/v1/common/app-phone-types" \
  -H "access_token: {your_token}"
GET /dashboard Statistics tab — pipeline counts, calls, emails, SMS, campaigns Try it →
NameInTypeRequiredDescription
intervalquerystringoptionalday | week | two_weeks | month (default: day)

Response: statuses (customers/opportunities/leads with title+stages), calls (incoming/outgoing), emails, sms, campaigns_stats, campaigns_count

bash
curl "{{baseUrl}}/api/v1/dashboard?interval=week" \
  -H "access_token: {your_token}"
GET /dashboard/calendar Calendar tab — appointments for a specific date Try it →
NameInTypeRequiredDescription
yearqueryintegerrequiredFour-digit year e.g. 2026
monthqueryintegerrequired1–12
dayqueryintegerrequired1–31

Response: array of {contact_id, name, time (W3C), note}

bash
curl "{{baseUrl}}/api/v1/dashboard/calendar?year=2026&month=3&day=18" \
  -H "access_token: {your_token}"
POST /system/push/firebase/ios Register iOS push notification token Try it →
FieldTypeRequiredDescription
tokenstringoptionalFirebase APNs device token
bash
curl -X POST "{{baseUrl}}/api/v1/system/push/firebase/ios" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"token": "apns_device_token_here"}'
POST /system/push/firebase/android Register Android push notification token Try it →
FieldTypeRequiredDescription
tokenstringoptionalFirebase FCM device token
bash
curl -X POST "{{baseUrl}}/api/v1/system/push/firebase/android" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"token": "fcm_device_token_here"}'
👤

contacts

19 endpoints
GET /contacts List contacts with filters Try it →
NameInTypeRequiredDescription
statusquerystringoptionalPipeline status filter
stagequerystringoptionalPipeline stage filter
last_name_beginningquerystringoptionalFilter by last name prefix
namequerystringoptionalName search string
tagsquerystringoptionalComma-separated tag IDs
userqueryintegeroptionalAssigned user ID
organizationqueryintegeroptionalOrganization ID
contactlistqueryintegeroptionalContact list ID
phonequerystringoptionalPhone number filter
touchesquerystringoptionalTouch count filter
confidence_levelquerystringoptionalConfidence level filter
orderbyquerystringoptionalSort field
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/contacts?status=customers&limit=25&offset=0" \
  -H "access_token: {your_token}"
POST /contacts/new Create a new contact Try it →
FieldTypeRequiredDescription
first_namestringoptionalFirst name
last_namestringoptionalLast name
emailstringoptionalEmail address
phonestringoptionalPhone number
statusstringoptionalcustomers | opportunities | leads
stagestringoptionalPipeline stage
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/new" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"first_name": "Jane", "last_name": "Doe", "email": "jane@example.com", "status": "leads"}'
GET /contacts/lists Contact lists for the current user Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/contacts/lists?limit=25&offset=0" \
  -H "access_token: {your_token}"
GET /contacts/{id} Get contact details Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42" \
  -H "access_token: {your_token}"
PATCH /contacts/{id} Edit contact fields Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
first_namestringoptionalFirst name
last_namestringoptionalLast name
emailstringoptionalEmail address
phonestringoptionalPhone number
bash
curl -X PATCH "{{baseUrl}}/api/v1/contacts/42" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"first_name": "Jane", "email": "jane.new@example.com"}'
GET /contacts/{id}/stats Contact statistics — videos, campaigns, tickets, unread counts Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID

Response: {videos_count, campaigns_count, support_tickets_count, unread_emails, unread_sms}

bash
curl "{{baseUrl}}/api/v1/contacts/42/stats" \
  -H "access_token: {your_token}"
GET /contacts/{id}/campaigns Active campaigns for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/contacts/42/campaigns?limit=10&offset=0" \
  -H "access_token: {your_token}"
GET /contacts/{id}/available-campaigns Campaigns available to start for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/contacts/42/available-campaigns" \
  -H "access_token: {your_token}"
POST /contacts/{id}/campaigns/create Start a campaign for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
campaign_idintegerrequiredCampaign ID to start
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/campaigns/create" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"campaign_id": 7}'
POST /contacts/{id}/campaigns/stop Stop a campaign for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
campaign_idintegerrequiredCampaign ID to stop
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/campaigns/stop" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"campaign_id": 7}'
POST /contacts/{id}/setstatus Set pipeline status for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
statusstringrequiredcustomers | opportunities | leads
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/setstatus" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"status": "customers"}'
POST /contacts/{id}/setstage Set pipeline stage for a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
stagestringrequiredreceived | contact | appointment | sold | lost
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/setstage" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"stage": "appointment"}'
POST /contacts/{id}/settag Add a tag to a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
id_tagintegerrequiredTag ID to add
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/settag" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"id_tag": 5}'
POST /contacts/{id}/unsettag Remove a tag from a contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
FieldTypeRequiredDescription
id_tagintegerrequiredTag ID to remove
bash
curl -X POST "{{baseUrl}}/api/v1/contacts/42/unsettag" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"id_tag": 5}'
GET /contacts/{id}/subscribesms Subscribe contact to SMS Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42/subscribesms" \
  -H "access_token: {your_token}"
GET /contacts/{id}/unsubscribesms Unsubscribe contact from SMS Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42/unsubscribesms" \
  -H "access_token: {your_token}"
GET /contacts/{id}/subscribeemail Subscribe contact to email Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42/subscribeemail" \
  -H "access_token: {your_token}"
GET /contacts/{id}/unsubscribeemail Unsubscribe contact from email Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42/unsubscribeemail" \
  -H "access_token: {your_token}"
GET /contacts/{id}/sendvideourl Send SMS with video upload URL to contact Try it →
NameInTypeRequiredDescription
idpathintegerrequiredContact ID
bash
curl "{{baseUrl}}/api/v1/contacts/42/sendvideourl" \
  -H "access_token: {your_token}"
🏛

organizations

8 endpoints
GET /organizations List organizations with filters Try it →
NameInTypeRequiredDescription
title_beginningquerystringoptionalFilter by company name prefix
employeesquerystringoptionalEmployee count filter
statusquerystringoptionalPipeline status
stagequerystringoptionalPipeline stage
email_beginningquerystringoptionalFilter by email prefix
tagsquerystringoptionalComma-separated tag IDs
userqueryintegeroptionalAssigned user ID
phonequerystringoptionalPhone number filter
cityquerystringoptionalCity filter
confidence_levelquerystringoptionalConfidence level
statequerystringoptionalState filter
orderbyquerystringoptionalSort field
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/organizations?limit=25&offset=0" \
  -H "access_token: {your_token}"
POST /organizations/new Create a new organization Try it →
FieldTypeRequiredDescription
namestringoptionalOrganization name
emailstringoptionalEmail address
phonestringoptionalPhone number
addressstringoptionalPhysical address
bash
curl -X POST "{{baseUrl}}/api/v1/organizations/new" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"name": "Acme Corp", "email": "contact@acme.com"}'
GET /organizations/{id} Get organization details Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
bash
curl "{{baseUrl}}/api/v1/organizations/10" \
  -H "access_token: {your_token}"
PATCH /organizations/{id} Edit organization Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
bash
curl -X PATCH "{{baseUrl}}/api/v1/organizations/10" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"name": "Acme Corporation"}'
POST /organizations/{id}/setstatus Set pipeline status for an organization Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
FieldTypeRequiredDescription
statusstringrequiredPipeline status value
bash
curl -X POST "{{baseUrl}}/api/v1/organizations/10/setstatus" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"status": "customers"}'
POST /organizations/{id}/setstage Set pipeline stage for an organization Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
FieldTypeRequiredDescription
stagestringrequiredPipeline stage value
bash
curl -X POST "{{baseUrl}}/api/v1/organizations/10/setstage" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"stage": "contact"}'
POST /organizations/{id}/settag Add a tag to an organization Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
FieldTypeRequiredDescription
id_tagintegerrequiredTag ID to add
bash
curl -X POST "{{baseUrl}}/api/v1/organizations/10/settag" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"id_tag": 3}'
POST /organizations/{id}/unsettag Remove a tag from an organization Try it →
NameInTypeRequiredDescription
idpathintegerrequiredOrganization ID
FieldTypeRequiredDescription
id_tagintegerrequiredTag ID to remove
bash
curl -X POST "{{baseUrl}}/api/v1/organizations/10/unsettag" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"id_tag": 3}'
💬

activities

16 endpoints
GET /activities List activities with filters Try it →
NameInTypeRequiredDescription
contact_idqueryintegeroptionalFilter by contact
user_idqueryintegeroptionalFilter by user
organization_idqueryintegeroptionalFilter by organization
typequerystringoptionalsms | email | task | call | note | booked_call
directionquerystringoptionalincoming | outgoing
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset

Response: stats array + data array

bash
curl "{{baseUrl}}/api/v1/activities?type=call&direction=incoming&limit=25" \
  -H "access_token: {your_token}"
GET /communication/call/{id} Call info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredCall ID

Response: {id, contact_id, user_id, time, status, duration, recording_url}

bash
curl "{{baseUrl}}/api/v1/communication/call/99" \
  -H "access_token: {your_token}"
GET /communication/sms/{id} SMS info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredSMS ID
bash
curl "{{baseUrl}}/api/v1/communication/sms/55" \
  -H "access_token: {your_token}"
POST /communication/sms/contact/{contact_id} Send SMS to a contact Try it →
NameInTypeRequiredDescription
contact_idpathintegerrequiredContact ID
FieldTypeRequiredDescription
textstringrequiredSMS message text
timestringoptionalW3C datetime for scheduled send
bash
curl -X POST "{{baseUrl}}/api/v1/communication/sms/contact/42" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hi, checking in!"}'
GET /communication/emails/{id} Email info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredEmail ID
bash
curl "{{baseUrl}}/api/v1/communication/emails/77" \
  -H "access_token: {your_token}"
POST /communication/emails/contact/{contact_id} Send email to a contact Try it →
NameInTypeRequiredDescription
contact_idpathintegerrequiredContact ID
FieldTypeRequiredDescription
subjectstringrequiredEmail subject line
messagestringrequiredHTML message body
timestringoptionalW3C datetime for scheduled send
bash
curl -X POST "{{baseUrl}}/api/v1/communication/emails/contact/42" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"subject": "Following up", "message": "<p>Just checking in!</p>"}'
GET /communication/notes/{id} Note info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredNote ID
bash
curl "{{baseUrl}}/api/v1/communication/notes/12" \
  -H "access_token: {your_token}"
PATCH /communication/notes/{id} Update a note Try it →
NameInTypeRequiredDescription
idpathintegerrequiredNote ID
FieldTypeRequiredDescription
textstringrequiredNote content
bash
curl -X PATCH "{{baseUrl}}/api/v1/communication/notes/12" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Updated note content"}'
DELETE /communication/notes/{id} Delete a note Try it →
NameInTypeRequiredDescription
idpathintegerrequiredNote ID
bash
curl -X DELETE "{{baseUrl}}/api/v1/communication/notes/12" \
  -H "access_token: {your_token}"
POST /communication/notes/contact/{contact_id} Create a note for a contact Try it →
NameInTypeRequiredDescription
contact_idpathintegerrequiredContact ID
FieldTypeRequiredDescription
textstringrequiredNote content (no title field)
bash
curl -X POST "{{baseUrl}}/api/v1/communication/notes/contact/42" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Called and left voicemail."}'
GET /communication/tasks/todos Task list Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
statusquerystringoptionalActive | Completed
orderbyquerystringoptionaldate
contact_idqueryintegeroptionalFilter by contact
yearqueryintegeroptionalYear filter
monthqueryintegeroptionalMonth filter (1–12)
dayqueryintegeroptionalDay filter (1–31)
bash
curl "{{baseUrl}}/api/v1/communication/tasks/todos?status=Active&limit=25" \
  -H "access_token: {your_token}"
GET /communication/tasks/{id} Task info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTask ID
bash
curl "{{baseUrl}}/api/v1/communication/tasks/8" \
  -H "access_token: {your_token}"
PATCH /communication/tasks/{id} Edit a task Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTask ID
FieldTypeRequiredDescription
textstringrequiredTask description
time_scheduledstringoptionalScheduled date/time
reminderstringoptionalReminder setting
prioritystringoptionalTask priority
statusstringoptionalActive | Completed
bash
curl -X PATCH "{{baseUrl}}/api/v1/communication/tasks/8" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Follow up call", "status": "Completed"}'
POST /communication/tasks/contact/{contact_id} Create a task for a contact Try it →
NameInTypeRequiredDescription
contact_idpathintegerrequiredContact ID
FieldTypeRequiredDescription
textstringrequiredTask description
time_scheduledstringoptionalScheduled date/time
reminderstringoptionalReminder setting
prioritystringoptionalTask priority
statusstringoptionalActive | Completed
bash
curl -X POST "{{baseUrl}}/api/v1/communication/tasks/contact/42" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Send proposal", "time_scheduled": "2026-04-01T10:00:00Z"}'
GET /communication/bookedcalls Booked calls list Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
contact_idqueryintegeroptionalFilter by contact
yearqueryintegeroptionalYear filter
monthqueryintegeroptionalMonth filter (1–12)
dayqueryintegeroptionalDay filter (1–31)
bash
curl "{{baseUrl}}/api/v1/communication/bookedcalls?limit=25&offset=0" \
  -H "access_token: {your_token}"
GET /communication/bookedcalls/{id} Booked call info Try it →
NameInTypeRequiredDescription
idpathintegerrequiredBooked call ID
bash
curl "{{baseUrl}}/api/v1/communication/bookedcalls/14" \
  -H "access_token: {your_token}"
📅

calendar

1 endpoint
GET /calendar/list Calendar or task list Try it →
NameInTypeRequiredDescription
typequerystringrequiredcalendar | task
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
contact_idqueryintegeroptionalFilter by contact
yearqueryintegeroptionalYear filter
monthqueryintegeroptionalMonth filter (1–12)
dayqueryintegeroptionalDay filter (1–31)
bash
curl "{{baseUrl}}/api/v1/calendar/list?type=calendar&year=2026&month=3&day=18" \
  -H "access_token: {your_token}"
🎫

support

26 endpoints
GET /support/tickets Ticket list with filters Try it →
NameInTypeRequiredDescription
contact_idqueryintegeroptionalFilter by contact
subjectquerystringoptionalSubject search
priorityquerystringoptionallow | normal | high | urgent
statusquerystringoptionalTicket status filter
department_idqueryintegeroptionalDepartment filter
user_idqueryintegeroptionalAssigned user filter
support_contact_idqueryintegeroptionalSupport contact filter
organizationqueryintegeroptionalOrganization filter
year / month / dayqueryintegeroptionalDate filter (updated date)
created_year / created_month / created_dayqueryintegeroptionalCreated date filter
updated_year / updated_month / updated_dayqueryintegeroptionalUpdated date filter
tagsquerystringoptionalTag filter
orderbyquerystringoptionalSort field
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/support/tickets?status=open&limit=25" \
  -H "access_token: {your_token}"
POST /support/ticket/create Create a support ticket Try it →
FieldTypeRequiredDescription
subjectstringoptionalTicket subject
messagestringoptionalInitial message
contact_idintegeroptionalContact ID
prioritystringoptionallow | normal | high | urgent
department_idintegeroptionalDepartment ID
bash
curl -X POST "{{baseUrl}}/api/v1/support/ticket/create" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"subject": "Login issue", "message": "Cannot log in.", "priority": "high"}'
GET /support/ticket/{id} Ticket details Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
bash
curl "{{baseUrl}}/api/v1/support/ticket/101" \
  -H "access_token: {your_token}"
GET /support/ticket/{id}/activity Ticket activity log Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset

Response: array of {text, time, icon, icon_color}

bash
curl "{{baseUrl}}/api/v1/support/ticket/101/activity?limit=25" \
  -H "access_token: {your_token}"
GET /support/ticket/{id}/messages Ticket message thread Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/support/ticket/101/messages?limit=50" \
  -H "access_token: {your_token}"
POST /support/ticket/{id}/messages Send a message on a ticket Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
textstringrequiredMessage text
close_ticketintegeroptional0 | 1 — close ticket after sending
attachmentsarrayoptionalArray of attachment IDs
bash
curl -X POST "{{baseUrl}}/api/v1/support/ticket/101/messages" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Issue has been resolved.", "close_ticket": 1}'
GET /support/ticket/{id}/note Ticket notes list Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/support/ticket/101/note?limit=25" \
  -H "access_token: {your_token}"
POST /support/ticket/{id}/note Create a note on a ticket Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
textstringrequiredNote text
attachmentsarrayoptionalArray of attachment IDs
bash
curl -X POST "{{baseUrl}}/api/v1/support/ticket/101/note" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Internal note: escalate if no reply by EOD."}'
PATCH /support/ticket/note/{id} Edit a ticket note Try it →
NameInTypeRequiredDescription
idpathintegerrequiredNote ID
FieldTypeRequiredDescription
textstringrequiredUpdated note text
attachmentsarrayoptionalArray of attachment IDs
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/note/33" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Updated internal note."}'
DELETE /support/ticket/note/{id} Delete a ticket note Try it →
NameInTypeRequiredDescription
idpathintegerrequiredNote ID
bash
curl -X DELETE "{{baseUrl}}/api/v1/support/ticket/note/33" \
  -H "access_token: {your_token}"
PATCH /support/ticket/{id}/priority Change ticket priority Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
prioritystringrequiredlow | normal | high | urgent
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/101/priority" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"priority": "urgent"}'
PATCH /support/ticket/{id}/status Change ticket status Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
statusstringrequiredNew status value
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/101/status" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"status": "closed"}'
PATCH /support/ticket/{id}/user Assign a user to a ticket Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
user_idintegerrequiredUser ID to assign
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/101/user" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"user_id": 5}'
PATCH /support/ticket/{id}/department Set ticket department Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
department_idintegerrequiredDepartment ID
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/101/department" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"department_id": 2}'
GET /support/ticket/{id}/timelog Ticket time log list Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/support/ticket/101/timelog?limit=25" \
  -H "access_token: {your_token}"
PATCH /support/ticket/{id}/timelog Add a time log entry to a ticket Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTicket ID
FieldTypeRequiredDescription
time_startstringrequiredW3C start time
time_endstringrequiredW3C end time
textstringoptionalWork description
notestringoptionalInternal note
attachmentsarrayoptionalArray of attachment IDs
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/101/timelog" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"time_start": "2026-03-18T09:00:00Z", "time_end": "2026-03-18T10:30:00Z", "text": "Investigated issue"}'
GET /support/ticket/timelog/{id} Time log details Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTime log ID
bash
curl "{{baseUrl}}/api/v1/support/ticket/timelog/7" \
  -H "access_token: {your_token}"
PATCH /support/ticket/timelog/{id} Edit a time log entry Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTime log ID
FieldTypeRequiredDescription
time_startstringoptionalW3C start time
time_endstringoptionalW3C end time
textstringrequiredWork description
notestringoptionalInternal note
attachmentsarrayoptionalArray of attachment IDs
bash
curl -X PATCH "{{baseUrl}}/api/v1/support/ticket/timelog/7" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"text": "Updated description", "time_start": "2026-03-18T09:00:00Z", "time_end": "2026-03-18T11:00:00Z"}'
DELETE /support/ticket/timelog/{id} Delete a time log entry Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTime log ID
bash
curl -X DELETE "{{baseUrl}}/api/v1/support/ticket/timelog/7" \
  -H "access_token: {your_token}"
POST /support/ticket/timelog/{id}/attachment Add attachment to a time log entry Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTime log ID
FieldTypeRequiredDescription
attachmentsarrayoptionalArray of attachment IDs to add
bash
curl -X POST "{{baseUrl}}/api/v1/support/ticket/timelog/7/attachment" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"attachments": [42]}'
DELETE /support/ticket/timelog/{id}/attachment/{id_attachment} Delete an attachment from a time log entry Try it →
NameInTypeRequiredDescription
idpathintegerrequiredTime log ID
id_attachmentpathintegerrequiredAttachment ID
bash
curl -X DELETE "{{baseUrl}}/api/v1/support/ticket/timelog/7/attachment/42" \
  -H "access_token: {your_token}"
GET /support/contacts Support contacts list Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/support/contacts?limit=25" \
  -H "access_token: {your_token}"
POST /support/contact/create Create a support contact Try it →
FieldTypeRequiredDescription
first_namestringrequiredFirst name
last_namestringrequiredLast name
emailstringoptionalEmail address
phonearrayoptionalArray of phone numbers
bash
curl -X POST "{{baseUrl}}/api/v1/support/contact/create" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"first_name": "Jane", "last_name": "Smith", "email": "jane@example.com"}'
GET /support/statuses Support status list Try it →

Response: array of {tag, title}

bash
curl "{{baseUrl}}/api/v1/support/statuses" \
  -H "access_token: {your_token}"
GET /support/messagetemplates Support message templates Try it →
NameInTypeRequiredDescription
typequeryintegeroptionalTemplate type filter
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset

Response: array of {id, title, body, attachments}

bash
curl "{{baseUrl}}/api/v1/support/messagetemplates?limit=25" \
  -H "access_token: {your_token}"
GET /support/types Support types and subtypes list Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset

Response: array of {id, title, subtypes}

bash
curl "{{baseUrl}}/api/v1/support/types?limit=25" \
  -H "access_token: {your_token}"
🏢

company

6 endpoints
GET /company/pipeline-tree Pipeline statuses with their stages Try it →

Response: array of {status, title, stages[]}

bash
curl "{{baseUrl}}/api/v1/company/pipeline-tree" \
  -H "access_token: {your_token}"
GET /company/stages/{status} Stages for a given pipeline status Try it →
NameInTypeRequiredDescription
statuspathstringrequiredPipeline status (e.g. customers)

Response: array of {stage, title}

bash
curl "{{baseUrl}}/api/v1/company/stages/customers" \
  -H "access_token: {your_token}"
GET /company/tags Available company tags Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/company/tags?limit=50" \
  -H "access_token: {your_token}"
GET /company/users Active company users Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/company/users?limit=50" \
  -H "access_token: {your_token}"
GET /company/departments Company departments Try it →
NameInTypeRequiredDescription
supportquerystringoptionalFilter to support departments
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/company/departments" \
  -H "access_token: {your_token}"
GET /company/locations Company locations Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
bash
curl "{{baseUrl}}/api/v1/company/locations" \
  -H "access_token: {your_token}"
🛒

purchases

2 endpoints
GET /purchases List purchases Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
contact_idqueryintegeroptionalFilter by contact

Response fields: id, title, price, discount, product_id, time, download

bash
curl "{{baseUrl}}/api/v1/purchases?contact_id=42&limit=25" \
  -H "access_token: {your_token}"
POST /purchases/{id} Send SMS with download URL for a purchase Try it →
NameInTypeRequiredDescription
idpathintegerrequiredPurchase ID
bash
curl -X POST "{{baseUrl}}/api/v1/purchases/15" \
  -H "access_token: {your_token}"
📹

files

2 endpoints
GET /media/videos List videos Try it →
NameInTypeRequiredDescription
limitqueryintegeroptionalResults per page
offsetqueryintegeroptionalPagination offset
contact_idqueryintegeroptionalFilter by contact
filter_myquerystringoptionalShow only current user's videos
user_idqueryintegeroptionalFilter by uploader user ID

Response fields: id, title, uploaded_by_name, preview_image, video_url, publication_status_name, featured, published_time, share_buttons

bash
curl "{{baseUrl}}/api/v1/media/videos?limit=25" \
  -H "access_token: {your_token}"
POST /file-upload/generic-multipart Upload a file Try it →
FieldTypeRequiredDescription
filebinaryoptionalFile to upload

Response: {"id": integer}

bash
curl -X POST "{{baseUrl}}/api/v1/file-upload/generic-multipart" \
  -H "access_token: {your_token}" \
  -F "file=@/path/to/document.pdf"
👦

my account

3 endpoints
GET /account/profile Current user profile Try it →
bash
curl "{{baseUrl}}/api/v1/account/profile" \
  -H "access_token: {your_token}"
GET /account/shared Shared content list Try it →

Response fields: title, destination, published_time, url

bash
curl "{{baseUrl}}/api/v1/account/shared" \
  -H "access_token: {your_token}"
GET /account/sendvideourl Send SMS with video upload URL to self Try it →
bash
curl "{{baseUrl}}/api/v1/account/sendvideourl" \
  -H "access_token: {your_token}"
🌎

social

11 endpoints
GET /social/facebook/connect-url Facebook OAuth URL (open in WebView) Try it →
bash
curl "{{baseUrl}}/api/v1/social/facebook/connect-url" \
  -H "access_token: {your_token}"
DELETE /social/facebook/current Disconnect Facebook account Try it →
bash
curl -X DELETE "{{baseUrl}}/api/v1/social/facebook/current" \
  -H "access_token: {your_token}"
GET /social/email/connect-url Email OAuth URL (open in WebView) Try it →
bash
curl "{{baseUrl}}/api/v1/social/email/connect-url" \
  -H "access_token: {your_token}"
DELETE /social/email/current Disconnect connected email account Try it →
bash
curl -X DELETE "{{baseUrl}}/api/v1/social/email/current" \
  -H "access_token: {your_token}"
GET /social/email/calendars Available calendars for connected email account Try it →

Response fields: calendar_token, title

bash
curl "{{baseUrl}}/api/v1/social/email/calendars" \
  -H "access_token: {your_token}"
POST /social/email/calendars/current Connect a calendar Try it →
FieldTypeRequiredDescription
calendar_tokenstringrequiredToken from the calendars list
bash
curl -X POST "{{baseUrl}}/api/v1/social/email/calendars/current" \
  -H "access_token: {your_token}" \
  -H "Content-Type: application/json" \
  -d '{"calendar_token": "primary"}'
DELETE /social/email/calendars/current Disconnect current calendar Try it →
bash
curl -X DELETE "{{baseUrl}}/api/v1/social/email/calendars/current" \
  -H "access_token: {your_token}"
GET /social/twitter/connect-url Twitter OAuth URL Try it →
bash
curl "{{baseUrl}}/api/v1/social/twitter/connect-url" \
  -H "access_token: {your_token}"
DELETE /social/twitter/current Disconnect Twitter account Try it →
bash
curl -X DELETE "{{baseUrl}}/api/v1/social/twitter/current" \
  -H "access_token: {your_token}"
GET /social/linkedin/connect-url LinkedIn OAuth URL Try it →
bash
curl "{{baseUrl}}/api/v1/social/linkedin/connect-url" \
  -H "access_token: {your_token}"
DELETE /social/linkedin/current Disconnect LinkedIn account Try it →
bash
curl -X DELETE "{{baseUrl}}/api/v1/social/linkedin/current" \
  -H "access_token: {your_token}"
📰

content

15 endpoints
GET /content/plans Marketing plans list Try it →
bash
curl "{{baseUrl}}/api/v1/content/plans" \
  -H "access_token: {your_token}"
GET /content/products Products list Try it →
bash
curl "{{baseUrl}}/api/v1/content/products" \
  -H "access_token: {your_token}"
GET /content/socialcontent Social content list Try it →
bash
curl "{{baseUrl}}/api/v1/content/socialcontent" \
  -H "access_token: {your_token}"
POST /content/plan/{id}/facebook Share marketing plan to Facebook Try it →
NameInTypeRequiredDescription
idpathintegerrequiredPlan ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/plan/3/facebook" \
  -H "access_token: {your_token}"
POST /content/plan/{id}/twitter Share marketing plan to Twitter Try it →
NameInTypeRequiredDescription
idpathintegerrequiredPlan ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/plan/3/twitter" \
  -H "access_token: {your_token}"
POST /content/plan/{id}/linkedin Share marketing plan to LinkedIn Try it →
NameInTypeRequiredDescription
idpathintegerrequiredPlan ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/plan/3/linkedin" \
  -H "access_token: {your_token}"
POST /content/plan/{id}/sms Share marketing plan via SMS Try it →
NameInTypeRequiredDescription
idpathintegerrequiredPlan ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/plan/3/sms" \
  -H "access_token: {your_token}"
POST /content/product/{id}/facebook Share product to Facebook Try it →
NameInTypeRequiredDescription
idpathintegerrequiredProduct ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/product/8/facebook" \
  -H "access_token: {your_token}"
POST /content/product/{id}/twitter Share product to Twitter Try it →
NameInTypeRequiredDescription
idpathintegerrequiredProduct ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/product/8/twitter" \
  -H "access_token: {your_token}"
POST /content/product/{id}/linkedin Share product to LinkedIn Try it →
NameInTypeRequiredDescription
idpathintegerrequiredProduct ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/product/8/linkedin" \
  -H "access_token: {your_token}"
POST /content/product/{id}/sms Share product via SMS Try it →
NameInTypeRequiredDescription
idpathintegerrequiredProduct ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/product/8/sms" \
  -H "access_token: {your_token}"
POST /content/socialcontent/{id}/facebook Post social content to Facebook Try it →
NameInTypeRequiredDescription
idpathintegerrequiredSocial content ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/socialcontent/12/facebook" \
  -H "access_token: {your_token}"
POST /content/socialcontent/{id}/twitter Post social content to Twitter Try it →
NameInTypeRequiredDescription
idpathintegerrequiredSocial content ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/socialcontent/12/twitter" \
  -H "access_token: {your_token}"
POST /content/socialcontent/{id}/linkedin Post social content to LinkedIn Try it →
NameInTypeRequiredDescription
idpathintegerrequiredSocial content ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/socialcontent/12/linkedin" \
  -H "access_token: {your_token}"
POST /content/socialcontent/{id}/sms Send social content via SMS Try it →
NameInTypeRequiredDescription
idpathintegerrequiredSocial content ID
bash
curl -X POST "{{baseUrl}}/api/v1/content/socialcontent/12/sms" \
  -H "access_token: {your_token}"
📄

templates

3 endpoints
GET /templates/categories/{type} Template categories for a given type Try it →
NameInTypeRequiredDescription
typepathstringrequiredemail | text
bash
curl "{{baseUrl}}/api/v1/templates/categories/email" \
  -H "access_token: {your_token}"
GET /templates/for-email/{category_id} Email templates in a category Try it →
NameInTypeRequiredDescription
category_idpathintegerrequiredTemplate category ID
bash
curl "{{baseUrl}}/api/v1/templates/for-email/2" \
  -H "access_token: {your_token}"
GET /templates/for-text/{category_id} Text (SMS) templates in a category Try it →
NameInTypeRequiredDescription
category_idpathintegerrequiredTemplate category ID
bash
curl "{{baseUrl}}/api/v1/templates/for-text/4" \
  -H "access_token: {your_token}"