Introduction

With the Developer API, you can interact with many VoiceMeUp services and features using simple HTTP requests, so you can easily integrate those services and features into your applications and other APIs. To use the API, you need to sign up for an API authentication key, and then follow the instructions below.

The API is not always up to date with newest features offered through the client control panel. If you would like a new feature to be implemented in the API do not hesitate to send us your requests, comments and suggestions.

Getting Started

HTTP Query syntax

The Developer API is called with plain HTTP queries. Each request must be sent in its own query—only one API operation per HTTP call. Parameter values must be URL-encoded when they contain characters that could conflict with query string syntax.

Current API v1.1

Use these endpoints for all new integrations. Prefer a Authorization: Bearer header for authentication instead of passing auth_token in the URL (see [Authentication](#started_authentication)).

https://clients.voicemeup.com/api/v1.1/json/get_request_types?client_user_id=123456 ...
https://client.beevox.com/api/v1.1/json/get_request_types?client_user_id=123456 ...

Will also work with your whitelabel custom domain:

https://yourcustomdomain.com/api/v1.1/json/get_request_types?client_user_id=123456 ...

Authentication

Every API v1.1 request must identify the caller and include a valid auth_token. The preferred method is to send the token in an HTTP header so it is not exposed in URLs, proxy logs, or browser history:

Authorization: Bearer <auth_token>

The same 32-character hexadecimal token can still be supplied as the auth_token query parameter or form field for compatibility, but header authentication is recommended for all new integrations.

Simple GET with Bearer token
Simple GET with Bearer token
GET with auth_token query parameter (alternative)
GET with auth_token query parameter (alternative)

HTTP methods

For API v1.1, JSON is the preferred and recommended response format (use the /json/ path segment in the endpoint URL). Request parameters may be sent as a JSON document in the request body with Content-Type: application/json.

GET is supported for most read-only request types when parameters are simple and the URL stays within normal length limits. Use POST with a JSON body when you need richer payloads or when GET is not suitable.

GET will not work when:

  • One or more files must be uploaded (requires multipart/form-data)
  • A parameter value needs special encoding that is awkward or unsafe in a query string
  • The full set of parameters would make the URL too long for the server or client
POST with JSON body (recommended)
POST with JSON body (recommended)
POST with file upload (multipart)
POST with file upload (multipart)

Initial query parameters

The Developer API requires initial query parameters for any request type.

ParameterType ?RequirementDescription
client_account_iddigits[8]Required (Obsolete in v1.1)Value must be a valid client_account_id of 8 digits.
request_typestringRequired (Obsolete in v1.1)Value must be a valid request_type. Call get_request_types to list request types and whether your user may access each one, or browse the full Request types section.
output_formatstringOptional (Obsolete in v1.1)Value must be a valid output_format.
List of available output formats is available here.
(default XML)
usernamestringOptionally Required (v1.1 Only)Value must be a valid username.
client_user_iddigits[4-8]Optionally Required (v1.1 Only)Value must be a valid client_user_id of 4 to 8 digits.
auth_tokenhex[32]RequiredValue must be a valid auth_token of 32 hexadecimal characters (lowercase). Prefer sending this value in an Authorization: Bearer header instead of a query parameter (see Authentication).
languagestringOptionalValue must be one of the following : "en" or "fr".
(default en)
currencystringOptionalValue must be one of the following : "CAD", "USD" or "EUR".
(default CAD)

Additional parameters types

Each request types can accept different optional or required parameters. Those parameters will be validated according to the request type made.

Here is a list of definition of the different parameters types interpreted by the Developer API:

  • digits: Characters from 0 to 9 inclusively.
  • hex: Characters from 0 to 9, and from A to F inclusively.
  • date: A valid date goes as follow: YYYY-MM-DD, example: 2007-04-16
  • string: Any ascii characters.
  • alphanum: Any letters or numbers, including hyphen '-' and underscores '_'.
  • integer: Any value contaning only numeric characters.
  • enum: A string value within offered choices.

Response format

Responses are only formatted in two formats:

  • XML Extensible Markup Language (Default)
  • JSON JavaScript Object Notation
Sample response
Sample response

Webhook

A webhook is used to notify an external system of an event. The URL given will be called when the configured event is triggered. Each webhook's return is unique, please consult the method documentation for more info.

Some VoiceMeUp services have been configured to support this feature. Here are the methods that support it :

Limitation

To avoid abuse, the Developer API has an hourly limit. Some request types have a specific limit as shown below; request types without a specific limit count toward the shared pool. Once the limit is reached, we will send you an email about the abuse. If the limit is exceeded too greatly, we will refuse subsequent API requests for the next 60 minutes with the error code "requests_hard_limit_exceeded".

Request TypeLimit per hour (Soft Limit)
delete_faxes1500
delete_recordings1500
delete_voicemails1500
get_file1500
dispatch_call900
voicemail_broadcast900
queue_fax600
queue_sms600
shared_pool (all other request types combined)1200

When the soft limit is reached, the request is still processed successfully. The response includes a notice message with the error code requests_soft_limit_reached, indicating that further requests may be denied if usage continues to increase.

We recommend using simulate_response to test limit behavior in your integration. Its rate_limited_soft and rate_limited_hard response types return the same notice and warning messages as production, without consuming your hourly quota. Treat a soft limit notice as a signal to throttle requests before the hard limit is reached.

Sample response with soft limit notice
Sample response with soft limit notice

Routing types

internal, emergency_call, directory_assistance, international_termination, international_origination, local_termination, local_origination, tollfree_origination, tollfree_termination, paypercall_origination, total

Message types

sms_inbound, sms_outbound, mms_inbound, mms_outbound, total

Storage types

recordings_size, voicemails_size, medias_size, faxes_size, mms_size, export_size, pbx3cxmedia_size, pbx3cxbackup_size, total

Request Types

Getting started

Get request types

Request Type:

Returns every Developer API request type, along with whether the authenticated user is allowed to call each one. This request type is always available when valid credentials are supplied, so it is the recommended way to discover which API methods your integration can use before calling them.

Each entry includes a permission attribute set to allowed or denied for the current client_user_id.

Sample response
Sample response for get_request_types

Simulate Response

Request Type:

This method allows you to simulate different API response scenarios including success, failures, timeouts, server errors, and other HTTP status codes. This is useful for testing error handling, timeout behavior, and various edge cases in your applications without affecting real data.

Note: This method is designed for testing and development purposes only.

Important: The timeout and server_error response types immediately terminate the connection and do not return XML responses, simulating real-world connection failures.

Response Types:

  • success - Returns HTTP 200 with successful response data and mock values
  • failed - Returns HTTP 200 with error in response (business logic failure)
  • timeout - Returns HTTP 408 and immediately terminates connection (no XML response)
  • server_error - Returns HTTP 500 and immediately terminates connection (no XML response)
  • unauthorized - Returns HTTP 200 with authentication warning error
  • rate_limited_soft - Returns success with notice error
  • rate_limited_hard - Returns failure with warning error
  • maintenance - Returns HTTP 200 with maintenance_mode fatal error
ParameterType ?RequirementDescription
response_typestringrequiredType of response to simulate. Valid values: success, failed, timeout, server_error, unauthorized, rate_limited_soft, rate_limited_hard, maintenance
delayintegeroptionalDelay in seconds before responding (0-30). Useful for testing timeout handling. Default: 0
Sample response (success)
Sample response (success) for simulate_response_success
Sample response (failed)
Sample response (failed) for simulate_response_failed

Calls & recordings

Get call history

Request Type:

One of the most important and practical feature is the call history which allows you to get call details as soon as it is available in our databases.

If you wish to query the Developer API on a regular basis in order to always have an updated version, it is possible to request calls that has been logged after the last request you made by using the `call_hash`parameter.

ParameterType ?RequirementDescription
date_fromdateOptionally RequiredIf set, date_to must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionally RequiredIf set, date_from must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
latest_hoursintOptionally RequiredMust be an int above 0.
call_hashstringOptionally RequiredValue must be a 32 characters alphanumeric call_hash referencing the last call previously returned by your last request made with get_calls.
unique_idstringDeprecatedDeprecated, use call_hash instead.
directionstringOptionalValue must be one of the following: "inbound" or "outbound" (default is NULL)
routing_typestringOptionalValue must be one of the following: "undefined","internal","emergency_call","directory_assistance","international_termination","international_origination","local_termination","local_origination","tollfree_origination","tollfree_termination" More than one value can be used separated by comma (default is NULL)
dispositionstringOptionalValue must be one of the following: "answered","busy","failed","no_answer","cancelled","denied","invalid","unknown" More than one value can be used separated by comma (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25 with date_to and date_from set, 1 with call_hash set)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
extrasstringOptionalValue must be one of the following: "yes", "no". Will return the following extra fields : failure_code, sip_response_code, account_usage_inbound account_usage_outbound, account_call_limit, subaccount_usage_inbound subaccount_usage_outbound, subaccount_call_limit, subaccount_channel_inbound, subaccount_channel_outbound",channel_usage_inbound channel_usage_outbound, channel_usage_excess (default is no)
metadatastringOptionalValue must be one of the following: "yes", "only", "all" or "no" (default is no)
routing_detailsstringOptionalValue must be one of the following: "yes" or "no" (default is no). This will return more details about the source and destination.
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_calls

Get call statistics

Request Type:
Gather statistical information about calls for given period.
ParameterType ?RequirementDescription
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
client_subaccount_idsenumOptionalList of all the client_subaccount_id wanted separated by a comma. Max 10 client_subaccount_id. (default is main_account and whole_account (main_account + subaccounts))
routing_typesenumOptionalList of all the client routing types wanted separated by a comma. (default is NULL)
Sample response with no subaccount_ids specified.
Sample response with no subaccount_ids specified. for get_calls_stats_no_subaccount
Sample response with subaccount_ids specified.
Sample response with subaccount_ids specified. for get_calls_stats_subaccount

Get recorded calls

Request Type:

If you have enabled recording on one of your Peer, on one of you DID or if you've made calls using the "call_dispatch" request, your calls will generate a new entry in the call recording database and you will be able to retrieve it using this request type.

ParameterType ?RequirementDescription
call_recording_idintegerOptionalValue must be a valid call_recording_id. (default is NULL)
recording_hashalphanum [36]OptionalNEW : Value must be a 36 characters alphanumeric with dashes unique id referencing to a recording previously returned by a request made with get_recordings. (default is NULL)
call_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_calls. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionalIf set, date_from must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
latest_hoursintOptionalMust be an int above 0.
statusenumOptionalValue must be one (or more, comma separated) of the following: "unverified", "verified" or "deleted" (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25 with date_to and date_from setted, 1 with call_hash setted)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
Sample response
Sample response for get_recordings

Delete recorded calls

Request Type:

You can delete recordings assigned to your account either by specifying a valid `call_recording_id `or `call_hash`. Optionally you can omit those and specify a valid `date` and delete all of your recordings before that date.

ParameterType ?RequirementDescription
call_recording_idintegerOptionally requiredValue must be a valid call_recording_id. Comma separated values are accepted. (default is NULL)
call_hashalphanum [32]Optionally requiredValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_calls. Comma separated values are accepted. (default is NULL)
datedateOptionally requiredIf set and no other parameter is sent, will delete all recordings prior to that date. (default is NULL)
commentsstringOptional
Sample response
Sample response for delete_recordings

Get voicemails

Request Type:

If you have enabled a mailbox on one of you DID, you will be able to retrieve the messages by using this request type.

ParameterType ?RequirementDescription
call_voicemail_idintegerOptionalValue must be a valid call_voicemail_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
voicemail_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric with dashes unique id referencing to a voicemail previously returned by a request made with get_voicemails. (default is NULL)
call_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_calls. (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
Sample response
Sample response for get_voicemails

Delete voicemails

Request Type:

You can delete voicemails assigned to your account either by specifying a valid `call_voicemail_id` or `voicemail_hash` . Optionally you can omit those and specify a valid `date` and delete all of your voicemails before that date.

ParameterType ?RequirementDescription
call_voicemail_idintegerOptionally requiredValue must be a valid call_voicemail_id. Comma separated values are accepted. (default is NULL)
voicemail_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric with dashes unique id referencing to a voicemail previously returned by a request made with get_voicemails. Comma separated values are accepted. (default is NULL)
datedateOptionally requiredIf set and no other parameter is sent, will delete all voicemails prior to that date. (default is NULL)
commentsstringOptional
Sample response
Sample response for delete_voicemails

Report call issue

Request Type:

Report an issue for a specific call.

ParameterType ?RequirementDescription
call_hashstringRequiredValue must be a 32 characters alphanumeric Call Hash referencing the last call previously returned by your last request made with get_calls.
issue_type_idintRequiredValue must be an integer referencing and issue type returned by a request made with get_issues_types.
kayako_ticket_idstringOptionalValue must have the following format: 'AAA-999-99999'.
commentsstringOptional

Get Issues details

Request Type:

Get reported call issues.

ParameterType ?RequirementDescription
call_hashstringRequiredValue must be a 32 characters alphanumeric call hash. (default is NULL)
call_issue_idintRequiredValue must be a valid call_issue_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_call_issues

Dispatch Call

Request Type:

This request allows you to establish a call between two distinct endpoints. It can be used to connect an agent to a local phone number or link any other combinations of the two endpoint types.

The meta_data parameter can be used to store any information about the call being dispatched in order to be retrieved later with get_calls request.This will work great with serialized data.

Note:

  • Recordings of 2 seconds or less are automatically deleted.
  • Both endpoints will be imported in the call history of account that made the request regardless if peer belongs to another account.
ParameterType ?RequirementDescription
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id
source_typestringDeprecatedUse sources[0][type] instead.
sourcedigits [10] alphanum [6-16]DeprecatedUse sources[0][value] instead.
destination_typestringDeprecatedUse destinations[0][type] instead.
destinationdigits [10] alphanum [6-16]DeprecatedUse destinations[0][value] instead.
callerid_namestring [3-15]OptionalValue must be alphanumeric string from 3 to 15 characters. (default is account's global callerid_name)
callerid_numberstring [10]OptionalValue must be a valid Caller ID number. (default is account's global callerid_number)
enable_recordingintegerOptional1 = enabled, 0 = disabled (default is 0)
wait_timeintegerOptionalValue must be between 5 and 60 (inclusively) (default is 15)
meta_datastringOptionalAny value is accepted.
sources[n][type] // destinations[n][type]integerOptionalIf type is "number" then value must be valid phone number of at least 10 digits. If type is "peer" then value must be a valid peer username. If type is "uri" then value must be a valid SIP URI.
sources[n][callerid_name] // destinations[n][callerid_name]string [3-15]OptionalValue must be alphanumeric string from 3 to 15 characters. (defaults to provided callerid_name)
sources[n][callerid_number] // destinations[n][callerid_number]string [10-15]OptionalValue must be a valid CallerID Number. (default to provided callerid_number)
sources[n][language] // destinations[n][language]string (en|fr)OptionalLanguage used for default prompts.
sources[n][send_dtmf] // destinations[n][send_dtmf]stringOptionalDTMF sequence to send
sources[n][announce_media_id] // destinations[n][announce_media_id]integerOptionalMedia ID of annoucement
sources[n][confirm_required] // destinations[n][confirm_required]boolean [0|1]OptionalCall must be confirmed to be considered answered 1 = enabled, 0 = disabled (default is 0)
sources[n][confirm_media_id] // destinations[n][confirm_media_id]integerOptionalMedia ID of call confirmation message
sources[n][retries] // destinations[n][retries]integerOptionalNumber of retries for call confirmation
sources[n][accept_key] // destinations[n][accept_key]integerOptionalKey to press to accept call (default is 1)
sources[n][reject_key] // destinations[n][reject_key]integerOptionalKey to press to reject call (default is 2)

Voicemail Broadcast

Request Type:

Experimental feature for the sole purpose of leaving a voicemail in a mailbox for a given destination number.

The meta_data parameter can be used to store any information about the call being broadcasted in order to be retrieved later with get_calls request.This will work great with serialized data, JSON or XML.

Note:

  • Recordings of 2 seconds or less are automatically deleted.
  • Both calls will be imported in the call history if fork_call is used.
ParameterType ?RequirementDescription
destination_numberdigits [10]RequiredMust be valid phone number of at least 10 digits.
callerid_namestring [3-15]OptionalValue must be alphanumeric string from 3 to 15 characters. (default is account's global callerid_name)
callerid_numberstring [10]OptionalValue cannot start with the following: "1", "800", "888", "877", "866" or "855" (default is account's global callerid_number)
privacyintegerOptionalEnable privacy for this call. Please note that a valid callerid_number is required 1 = enabled, 0 = disabled (default is 0)
enable_recordingintegerOptional1 = enabled, 0 = disabled (default is 0)
wait_timeintegerOptionalValue must be between 5 and 60 (inclusively) (default is 15)
client_media_file_idstringOptionally requiredMedia file ID used for playback to voice mailbox.Must be provided unless media_url is set. (default is NULL)
media_urlstringOptionalUse a media file located in the cloud.Value must be a valid URL. (default is NULL)
voicemail_detectintegerOptionalWorks great with fork_call. Automatically start playback if voicemail tone is detected.1 = enabled, 0 = disabled (default is 1)
fork_callintegerOptionalWorks great with voicemail_detect, will make two calls to destination to force voicemail to pick-up and automatically cancel second call. 1 = enabled, 0 = disabled (default is 1)
pre_dtmfstringOptionalDTMF sequence to play once call is answered, before playback.Valid DTMF are : 0 1 2 3 4 5 6 7 8 9 A B C D # * w W
post_dtmfstringOptionalDTMF sequence to play once call is answered, after playback.Valid DTMF are : 0 1 2 3 4 5 6 7 8 9 A B C D # * w W
dtmf_durationintegerOptionalChange duration of DTMF tones.Value must be between 100 and 1500 (inclusively) (default is 500)
notify_callback_triggersstringOptionally requiredValue must be one (or more, comma separated) of the following: "on_create", "on_ring", "on_answer", "on_hangup", "on_record" (default is NULL) Required if notify_callback_url is set.

Fax

Get faxes

Request Type:

If you have a virtual fax profile, your faxes will generate a new entry in the faxes database and you will be able to retrieve it using this request type.


ParameterType ?RequirementDescription
call_fax_idintegerOptionalValue must be a valid call_fax_id. (default is NULL)
client_fax_profile_idintegerOptionalValue must be a valid client_fax_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
date_fromdateOptionally RequiredIf set, date_to must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionally RequiredIf set, date_from must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
call_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_calls. (default is NULL)
statusenumOptionalValue must be one (or more, comma separated) of the following: "enabled", "deleted", "purged" (default is NULL)
transmission_statusenumOptionalValue must be one (or more, comma separated) of the following: "pending", "processing", "completed", "failed", "cancelled", "paused" (default is NULL)
Sample response
Sample response for get_faxes

Delete stored faxes

Request Type:

You can delete your faxes assigned to your account either by specifying a valid `call_fax_id ` or `call_hash`. Optionally you can omit those and specify a valid `date` and delete all of your faxes for that date.

ParameterType ?RequirementDescription
call_fax_idintegerOptionally requiredValue must be a valid call_fax_id. Comma separated values are accepted. (default is NULL)
call_hashalphanum [32]Optionally requiredValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_calls. Comma separated values are accepted. (default is NULL)
datedateOptionally requiredIf set and no other parameter is sent, will delete all faxes for that date. (default is NULL) comments string Optional
Sample response
Sample response for delete_faxes

Queue Fax

Request Type:

You can send a fax with this request type. It is important to note that this is a POST request.

ParameterType ?RequirementDescription
destination_numberstringRequiredValue must be a valid phone number.
client_fax_profile_idintegerRequiredValue must be a valid client_fax_profile_id.
attachmentsfileRequiredValue must be valid files.
unique_idstringOptionalValue must be alphanumeric string. It will be used as a seed with client_fax_profile_id. Must be unique. (Default is time)
name_fromstringOptionalValue must be alphanumeric string. (Default is fax profile contact name)
email_fromstringOptionalValue must be alphanumeric string. (Default is fax profile contact email)
page_formatstringOptionalValue must be one of the following : 'letter', 'legal', 'a4'. (Default is fax profile page_format)
resolutionstringOptionalValue must be one of the following : 'standard', 'fine', 'super_fine', 'ultra_fine'. (Default is fax profile resolution)
retry_limitstringOptionalValue must between 1 and 9. (Default is fax profile retry limit)
datetime_scheduleddatetimeOptionalValue must be a valid datetime (YYYY-MM-DD HH:II:SS).
Sample response
Sample response for queue_fax

Get Fax profiles

Request Type:

If you wish to get details of a fax profiles, you simply have to pass the `client_fax_profile_id`. If no additional parameter is specified, the complete list of fax profiles will be returned.

ParameterType ?RequirementDescription
client_fax_profile_idintegerOptionalValue must be a valid client_fax_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_fax_profiles

Update Fax Profile

Request Type:

Allows you to create or simply update a fax profile.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_fax_profile_idintegerOptionally requiredIf mode is "update", value must be a valid client_fax_profile_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
local_identstringRequiredValue must be alphanumeric string from 2 to 20 characters.
fax_headerstringRequiredValue must be alphanumeric string from 2 to 20 characters.
callerid_namestringRequiredValue must be alphanumeric string from 3 to 15 characters.
callerid_numberdigits [10]RequiredValue must be a valid phone number of 10 digits.
contact_namestringOptionalValue must be alphanumeric string from 4 to 60 characters.
emailstringRequiredValue must be a valid email address.
languagestringRequiredValue must be one of the following : "en" or "fr".
allowed_sendersstringRequiredList of all the allowed_senders wanted separated by a comma.
retry_limitintegerOptionalThe number of times we should retry sending. (default is 2)
page_formatstringRequiredValue must be one of the following : "letter", "legal", "a4"
resolutionstringRequiredValue must be one of the following : "standard", "fine"," super_fine", "ultra_fine", "color"
callback_urlstringOptionally requiredMust be a valid Webhook. Can contain GET arguments. Details will be sent as JSON in the POST body. Required if option "enable_callback" is selected.
backup_urlstringOptionalMust be a valid Webhook. Can contain GET arguments. Details will be sent as JSON in the POST body. Will be called if callback_url does not respond.
optionsArrayOptionalValue must be one or more of the following : "inbound_completed_notification", "inbound_failed_notification", "outbound_completed_notification", "outbound_failed_notification", "enable_cover_page", "force_cover_page", "enable_inbound_send_attachment", "enable_outbound_send_attachment", "enable_callback". force_cover_page requires enable_cover_page. (default is NULL)
statusstringRequiredValue must be one of the following: "enabled" or "disabled"
commentsstringOptional

Delete fax profile

Request Type:

Delete a fax profile from your account.

ParameterType ?RequirementDescription
client_fax_profile_idintegerRequiredValue must be a valid client_fax_profile_id.

Phone numbers (DIDs)

Get DIDs details

Request Type:

You can get the details and settings of DIDs assigned to your account by either specifying the `client_did_id` or the `phone_number`. If you do not provide either value, the details for all DIDs will be returned.

ParameterType ?RequirementDescription
client_did_idintegerOptionalValue must be a valid client_did_id. (default is NULL)
phone_numberintegerOptionalValue must be a valid phone number of 10 digits. (default is NULL)
npadigits [3]OptionalValue must be a 3 digits NPA area code. (only for local) (default is NULL)
nxxdigits [3]OptionalValue must be a 3 digits NXX prefix. (only for local) (default is NULL)
ratecenter_idintegerOptionalValue must be a valid ratecenter_id. (default is NULL)
districtstringOptionalValue must be a valid district. (default is NULL)
state_idintegerOptionalValue must be a valid state_id. (default is NULL)
country_idintegerOptionalValue must be a valid country_id. (default is NULL)
optionsenumOptionalOnly entries matching all the given options will be returned. Value must be one (or more, comma separated) of the following: 'enable_ivr','enable_disa','enable_director','enable_fax','enable_peer', 'enable_forwarding','enable_uri','enable_voicemail','enable_recording','ondemand_recording', 'announce_monitor','announce_caller','enable_filtering','enable_conference','enable_disa', 'enable_uri','force_ring_signal','discard_redirect','confirm_required','enable_sms', 'enable_sms_email_notify','enable_sms_forwarding','enable_sms_callback','enable_sms_callback_retry', 'enable_queue' (default is NULL)
special_attributesenumOptionalOnly entries matching the given special attribute will be returned. Value must be one of the following: 'none','temporary','redemption','inventory','reserved' (default is NULL)
client_peer_idintegerOptionalValue must be a valid client_peer_id. Since peer_to_rings may contain multiple client_peer_id, if the given value matches one, the entry will be returned (default is NULL)
client_mailbox_idintegerOptionalValue must be a valid client_mailbox_id.
announce_media_file_idintegerOptionalValue must be a valid client_media_file_id.
bridge_uristringOptionalMust be a valid string uri of 240 or less characters.
pickup_group_idsstringOptionalMust be a valid string og pickup group ids of 64 or less characters.
client_conference_profile_idintegerOptionalMust be a valid client_conference_profile_id.
client_fax_profile_idintegerOptionalValue must be a valid client_fax_profile_id.
dnis_rewritestringOptionalMust be 30 or less characters.
confirm_media_file_idintegerOptionalValue must be a valid client_media_file_id.
playback_media_file_idintegerOptionalValue must be a valid playback_media_file_id.
sms_autoreply_messagestringOptionalMust be a valid string of 160 or less characters.
recording_notify_recipient_namestringOptionalMust be a valid string of 255 or less characters.
peer_failover_causesstringOptionalMust be a valid string of 240 or less characters.
recording_notify_recipient_emailstringOptionalMust be a valid string of 255 or less characters.
typestringOptionalValue must be one of the following: 'local', 'tollfree', 'paypercall', 'international', 'inum', 'shadow', 'interexchange'
usage_typestringRequiredValue must be one of the following: 'default', 'paging', 'parking', 'conference', 'disa', 'uri'
sms_dnis_rewritestringOptionalMust be 30 or less characters.
sip_responsedigits [3]OptionalValue must be a 3 digits sip response (default is NULL)
t38_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) support t38/fax.
sms_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) support SMS.
mms_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) support MMS.
enable_voicemailboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) enable voicemail.
ondemand_recordingboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) enable ondemand recording.
enable_faxboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if your did(s) enable fax.
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
statusenumOptionalValue must be one of the following: "enabled", "deleted", "disabled" (default is NULL)
Sample response
Sample response for get_dids

Update DID

Request Type:

It is possible to update the DIDs configuration with this request type.

Note: Not all the option for DIDs are available through the API. Please request any new feature to our support department.

ParameterType ?RequirementDescription
preserve_missing_databooleanOptionalThis will allow you to modify only the provided fields when updating an entry (default is FALSE)
client_did_idintegerOptionally requiredValue must be a valid client_did_id
phone_numberdigits [10]Optionally requiredValue must be a valid DID number.
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters.
forward_numberintegerOptionalValue must be a valid phone number. (default is NULL)
forward_timeoutstringOptionalValue must be one of the following : "disabled", "2", "5", "10", "15", "20", "25", "30", "35", "40", "45", "50" or "55". (default is NULL)
send_dtmfstringOptionalMust be valid DTMF tones (0-9,a,b,c,d,w and W).
voice_languagestringOptionalValue must valid one of the following: "en", "fr". Default is account preferred language.
client_mailbox_idintegerOptionalValue must be a valid client_mailbox_id. (default is NULL)
client_ivr_profile_idintegerOptionalValue must be a valid client_ivr_profile_id. (default is NULL)
client_fax_profile_idintegerOptionalValue must be a valid client_fax_profile_id. (default is NULL)
client_director_profile_idintegerOptionalValue must be a valid client_director_profile_id. (default is NULL)
client_sms_profile_idintegerOptionalValue must be a valid client_sms_profile_id. (default is NULL)
client_peer_idsenumOptionalValue(s) must be valid client_peer_id(s) (comma separated). (default is NULL)
peer_timeoutstringOptionalValue must be one of the following : "disabled", "2", "5", "10", "15", "20", "25", "30", "35", "40", "45", "50" or "55". (default is NULL)
peer_contact_modestringOptionalValue must be one of the following : "sequential", "simultaneous" or "round_robin". (default is NULL)
client_queue_idsenumOptionalValue(s) must be valid client_queue_id(s) (comma separated). (default is NULL)
bridge_uristringOptionalMust be a valid SIP uri. (default is null)
client_conference_profile_idstringOptionalMust be a valid client_conference_profile_id. (default is null)
ondemand_recordingintegerOptional1 = enabled, 0 = disabled (default is 0)
dnis_rewritedigits [10]OptionalValue must be a valid DID number.
client_filter_idsArrayOptionalValue must be one or more valid client_filter_id. (default is NULL)
announce_media_file_idstringOptionally requiredValue must be a valid client_media_file_id. (default is 0) Required if announce_caller is set, will play the message to the callee before connecting the call.
monitor_media_file_idstringOptionalValue must be a valid client_media_file_id. (default is 0) If specified alongside the announce_monitor option, will override the default "This call may be recorded [...]" prompt played to the caller before connecting the call.
confirm_media_file_idstringOptionalValue must be a valid client_media_file_id. (default is 0) If specified alongside the confirm_required option, will play this message when asking the callee to confirm answering.
callerid_name_rewritealphanumOptionalMust be between 3 and 15 characters. (default is null)
callerid_number_rewritedigitsOptionalMust be between 1 and 20 characters. Also supports the symbol '+'. (default is null)
sms_notify_emailstringOptionally requiredMust be a valid email address. (default is null) Required if enable_sms_email_notify is set, will send an email if an sms was received.
sms_forward_numberdigits [15]Optionally requiredValue must be a valid phone number. (default is null) Required if enable_sms_forwarding is set, will forward sms to selected number.
sms_callback_urlstringOptionally requiredMust be a valid Webhook. Can contain GET arguments. Details will be sent as JSON in the POST body. (default is null) Required if enable_sms_callback is set.
sms_callback_subtypestringOptionally requiredComma-separated list of SMS event types that will trigger the callback. (default is null) Required if enable_sms_callback is set. Value must be one or more of the following: "inbound_success", "outbound_success", "outbound_failed", "delivered".
sms_autoreply_messagestringOptionally requiredMust be a valid string of 160 or less characters. (default is null) Required if enable_sms_autoreply is set, will automatically reply with this text on every incoming SMS.
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is 0)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
notify_callback_triggersArrayOptionally requiredValue must be one (or more, comma separated) of the following: "on_create", "on_ring", "on_answer", "on_hangup", "on_test", "on_record" (default is NULL) Required if enable_notify_callback is set, will set the triggers selected to the notify callback.
notify_callback_urlstringOptionally requiredValue must be a valid URL. If this value is changed, we will hit the url and expect an HTTP Code 200. The test hit will have the trigger on_test. (default is NULL) Required if enable_notify_callback is set, will set the callback URL to the one selected.
simultaneous_calls_limitintegerOptionalValue must be a number between 0 and 255
typestringOptionalValue must be one of the following: 'local', 'tollfree', 'paypercall', 'international', 'inum', 'shadow', 'interexchange'
usage_typestringRequiredValue must be one of the following: 'default', 'paging', 'parking', 'conference', 'disa', 'uri'
recording_notify_recipient_namestringOptionalMust be a valid string of 255 or less characters.
recording_notify_recipient_emailstringOptionalMust be a valid string of 255 or less characters.
peer_failover_causesstringOptionalMust be a valid string of 240 or less characters.
pickup_group_idsstringOptionalMust be a valid string of 64 or less characters.
sms_dnis_rewritestringOptionalMust be 30 or less characters.
optionsArrayOptionalValue must be one or more of the following : "enable_forwarding", "enable_voicemail", "enable_peer", "ondemand_recording", "announce_monitor", "enable_recording", "enable_ivr", "enable_fax", "announce_caller", "enable_sms", "enable_sms_email_notify", "enable_sms_forwarding", "enable_sms_callback", "enable_sms_callback_retry", "enable_sms_autoreply", "enable_uri", "enable_georedundancy", "force_ring_signal", "discard_redirect", "confirm_required", "enable_filtering", "enable_director", "enable_notify_callback". (default is NULL)
special_attributesstringOptionalValue must be one of the following : "none", "temporary", "redemption", "inventory", "reserved". (default is "none")
commentsstringOptional
statusenumOptionalValue must be one of the following: "enabled" or "disabled"

Delete DID

Request Type:

Delete a did from your account.

ParameterType ?RequirementDescription
client_did_idintegerOptionally requiredValue must be a valid client_did_id
phone_numberintegerOptionally requiredValue must be a valid phone number of 10 digits. ( No space or - symbol )
Sample response
Sample response for delete_did

Get list of new DIDs

Request Type:

If you wish to get a list of DIDs in our inventory, you may request it with one of the following parameter.

ParameterType ?RequirementDescription
typestringOptionalValue must be one of the following : "local", "tollfree", "inum", "international". (default is NULL)
npadigits [3]OptionalValue must be a 3 digits NPA area code. (only for local) (default is NULL)
nxxdigits [3]OptionalValue must be a 3 digits NXX prefix. (only for local) (default is NULL)
ratecenter_iddigits[6]OptionalValue must be a 6 digits ratecenter_id. (default is NULL)
districtstringOptionalValue must be a partial or complete district name. Complete match will be returned first. (default is NULL)
state_idstringOptionalValue must be a state_id. (default is NULL)
included_patternsstringOptionalValue must be a one or many of the following : 'all_numbers' will return all entries 'no_patterns' will return numbers with no pattern 'rare_number','pattern_double_digits','pattern_double_digits_pair','pattern_double_digits_trio','pattern_tripple_digits','pattern_quadruple_digits' will return numbers will match at least one of the given pattern (default is all_numbers)
orderstringOptionalValues must be one of the following : default, random. (default is default)
t38_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if you require t38/fax support for your did(s).
sms_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if you require SMS support for your did(s).
result_limitintegerOptionalValue must be between 1 and 50 (default is 15)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
Sample response
Sample response for get_new_dids

Activate new DID

Request Type:

Add the specified DID to your account.

ParameterType ?RequirementDescription
phone_numberdigits[10-15]Optionally RequiredValue must be a valid phone_number.
did_idintegerOptionally RequiredValue must be a valid did_id.
skip_notificationboolOptionalWill skip the new did assigned email.
Sample response
Sample response for activate_new_did

Order New DIDs

Request Type:

Request dids from a specific ratecenter or with a certain prefix that couldn't not be found in the inventory.

ParameterType ?RequirementDescription
prefixdigitsOptionally RequiredValue must be a valid 6 digits NPA/NXX code for local or an international code with country code but without the 011. (default is NULL)
ratecenter_iddigits[6]Optionally RequiredValue must be a 6 digits ratecenter_id. (default is NULL) NOTE : A ratecenter may contain more than one NPA/NXX combination, you will receive one at random.
typestringOptionalValue must be one of the following : "local", "international". (default is local)
quantityintegerRequiredValue must be valid number.
prefix_preferencestringOptionalValue must be one of the following: "in_ratecenter", "prefix_only". (default is "in_ratecenter") This parameter indicates if you require the specific NPA/NXX given or if you only need a number in the ratecenter. NOTE : You cannot use prefix_only without setting prefix or if type is international.
sequentialstringOptionalValue must be one of the following: "random", "sequential". (default is "random")
t38_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if you require t38/fax support for your did(s).
sms_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if you require SMS support for your did(s).
mms_supportboolOptionalValue must be one of the following: "1" or "0" This parameter indicates if you require MMS support for your did(s).
capacitystringOptionalValue must be one of the following: . (default is "1-2") This parameter indicates how many simultaneous call this number will have at peak usage.
commentsstringOptionalA comment to be displayed on your order.

Get port requests

Request Type:

If you wish to get details of a port request, you simply have to pass the `port_request_id` or PON. If no additional parameter is specified, the complete list of port requests will be returned.


ParameterType ?RequirementDescription
port_request_idintOptionalValue can either be a valid port_request_id or a fully qualified PON 'PON00000000'. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
current_ownerstringOptionalWill add a wildcard before and after the string comparison. Case and accent insensitive. (default is NULL)
phone_numberintOptionalWill check for the number being ported. Does not search in numbers to keep or disconnect. (default is NULL)
statusenumOptionalValue must be one (or more, comma separated) of the following: "not_ready", "sent_to_staff", "approved_by_staff", "rejected_by_staff", "rejected_by_client", "expired", "sent_to_provider", "cancelled_by_client", "tentative_confirm", "firm_confirm", "rejected_by_provider", "completed", "modified_by_staff" (default is NULL)
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Will search for the firm date. Does not search in the tentative or requested date. (default is NULL)
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Will search for the firm date. Does not search in the tentative or requested date. (default is NULL)
Sample response
Sample response for get_port_requests

Update Port Request

Request Type:

You can update the port request with this request type.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
port_request_idintegerOptionally requiredIf mode is "update", value must be a valid port_request_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringOptionalValue must be alphanumeric string from 2 to 60 characters. (default is NULL).
phone_number_typestringOptionally RequiredValue must be one of the following: "local" or "tollfree"
phone_numbersstringOptionally RequiredValue must be a valid phone number of 10 digits. More than one value can be used separated by comma
phone_numbers_to_keepstringOptionalValue must be a valid phone number of 10 digits. More than one value can be used separated by comma (default is NULL).
phone_numbers_to_cancelstringOptionalValue must be a valid phone number of 10 digits. More than one value can be used separated by comma (default is NULL).
featuresstringOptionalValue must be one or more of the following : "sms", "mms", "t38" (default is NULL).
capacitystringOptionally RequiredValue must be one or more of the following : "1-2", "2-5", "5-10", "10-15", "15-25", "25-50", "50+"
requested_firm_datestringOptionalValue must be a valid date formatted as "YYYY-MM-DD". Desired port date. Must be between 3 to 15 business days (default is "As soon as possible").
organizationstringOptionally RequiredValue must be alphanumeric string from 2 to 60 characters.
organization_typestringOptionally RequiredValue must be one of the following: "personal", "business"
current_providerstringOptionally RequiredValue must be alphanumeric string from 2 to 60 characters.
current_resellerstringOptionalValue must be alphanumeric string from 2 to 60 characters. (default is NULL).
current_reseller_accountstringOptionalValue must be alphanumeric string from 2 to 60 characters. (default is NULL).
box_numberstringOptional
civic_numberintegerOptionally RequiredValue must be a number.
streetstringOptionally RequiredValue must be alphanumeric string.
unit_numberintegerOptionalValue must be a number.
citystringOptionally RequiredValue must be alphanumeric string.
country_idintegerOptionally RequiredValue must be a valid country_id
state_idstringOptionally requiredIf country_id is "38" or "223", must be a valid state_id.
state_otherstringOptionally requiredIf country_id is not is "38" or "223", must be alphanumeric string.
postal_codestringOptionally RequiredMust be a valid postal_code.
client_instructionsstringOptionalInstructions to be provided to the carrier. Eg: "New BTN is 514-xxx-xxxx" (default is NULL).
is_notify_creationboolOptionalValue must be one of the following: "1" or "0" (default is 0). Create a kayako ticket immediately upon sending to staff
notification_client_user_idstringOptionally RequiredMust be a valid client_user_id. This user will receive the Kayako ticket notifications
extra_recipientsstringOptionalExtra recipient to receive the Kayako notifications. More than one value can be used separated by comma (default is NULL).
loafileOptionalMust be a valid file. (default is NULL).
billfileOptionalMust be a valid file. (default is NULL).
otherfileOptionalMust be a valid file. (default is NULL).
send_to_staffboolOptionally RequiredValue must be one of the following: "1" or "0" (default is 0). Set to 1 to submit the port. Fields become required when trying to send to staff.
commentsstringOptional
[raw_metadata]see docsee doc

Lookup DID

Request Type:

Lookup DID information.

Notice: Charges apply for this request type. Please contact your account manager for more details.
ParameterType ?RequirementDescription
phone_numberdigits[10-15]RequiredValue must be a valid phone_number.
Sample response
Sample response for lookup_did

Get list of DID area codes

Request Type:

This request type will provide information regarding available are codes. If you wish to get details about a specific area code, you may specify the `npa` parameter to do so.

ParameterType ?RequirementDescription
npadigits[3]OptionalValue must be a 3 digits NPA area code. (default is NULL)
ratecenter_iddigits[6]OptionalValue must be a 6 digits ratecenter. (default is NULL)
country_idintegerOptionalValue must be a valid country_id.
state_idintegerOptionalValue must be a valid state_id.
Sample response
Sample response for get_did_areacodes

Get list of DID exchanges

Request Type:

Get a list of available ratecenter exchanges by providing an area code or optionally a specific prefix. This is the request type to use if you wish to check the portability of availability of a ratecenter.

Note: This response is reference data that changes slowly. Store it locally, reuse your local data for lookups, and refresh your local copy about once a day.

ParameterType ?RequirementDescription
npadigits[3]OptionalValue must be a 3 digits NPA area code. (default is NULL)
nxxdigits[3]OptionalValue must be a 3 digits NXX prefix. (default is NULL)
ratecenter_iddigits[6]OptionalValue must be a 6 digits ratecenter_id. (default is NULL)
state_idintegerOptionalValue must be a valid state_id. (default is NULL)
country_idintegerOptionalValue must be a valid country_id. (default is NULL)
portabilityintegerOptionalValue must be 1 or 0. (default is both)
availabilityintegerOptionalValue must be 1 or 0. (default is both)
updated_sincedateOptionalWill return all entries updated since given date. Must be a valid date. (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
Sample response
Sample response for get_did_exchanges

Get list of Ratecenters

Request Type:

Get a list of available ratecenters by providing an area code or optionally a specific prefix. This is the request type to use if you wish to check the origin of a call and details about the ratecenter.

Note: When only providing NPA, it is recommended to use a reasonable result_limit to avoid extraneous load.

ParameterType ?RequirementDescription
npadigits[3]OptionalValue must be a 3 digits NPA area code. (default is NULL)
nxxdigits[3]OptionalValue must be a 3 digits NXX prefix. (default is NULL)
ratecenter_iddigits[6]OptionalValue must be a 6 digits ratecenter_id. (default is NULL)
state_idintegerOptionalValue must be a valid state_id. (default is NULL)
country_idintegerOptionalValue must be a valid country_id. (default is NULL)
updated_sincedateOptionalWill return all entries updated since given date. Must be a valid date. (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
Sample response
Sample response for get_ratecenters

SMS

Get sms

Request Type:

If you have enabled sms on one of your DIDs, your sms will generate a new entry in the sms database and you will be able to retrieve it using this request type.


ParameterType ?RequirementDescription
sms_log_idintegerOptionalValue must be a valid sms_log_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
sms_hashalphanum [32]OptionalValue must be a 32 characters alphanumeric unique id referencing to a call previously returned by a request made with get_sms. (default is NULL)
directionenumOptionalValue must be one of the following: "inbound", "outbound" (default is NULL)
statusenumOptionalValue must be one (or more, comma separated) of the following: "enabled", "deleted", "purged" (default is NULL)
transmission_statusenumOptionalValue must be one (or more, comma separated) of the following: "pending", "processing", "completed", "failed", "cancelled", "paused" (default is NULL)
source_numberintegerOptionalValue must be valid phone number (default is NULL)
destination_numberintegerOptionalValue must be valid phone number (default is NULL)
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25 with date_to and date_from setd, 1 with sms_hash set)
Sample response
Sample response for get_sms

Delete SMS

Request Type:

Delete a SMS from your account.

Get SMS statistics

Request Type:
Gather statistical information about SMS and MMS for given period.
ParameterType ?RequirementDescription
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
client_subaccount_idsenumOptionalList of all the client_subaccount_id wanted separated by a comma. Max 10 client_subaccount_id. (default is main_account and whole_account (main_account + subaccounts))
message_typesenumOptionalList of all the client message types wanted separated by a comma. (default is NULL)
Sample response with no subaccount_ids specified.
Sample response with no subaccount_ids specified. for get_sms_stats_no_subaccount
Sample response with subaccount_ids specified.
Sample response with subaccount_ids specified. for get_sms_stats_subaccount

Queue SMS

Request Type:

You can send a SMS with this request type. It is important to note that a DID with SMS support is required to use this feature. The endpoint supports both single and multi-recipient SMS queuing - pass destination_number as a string for single recipient or as an array for multiple recipients.


ParameterType ?RequirementDescription
client_did_idintegerOptionally RequiredValue must be a valid client_did_id.
source_numberdigits [10]Optionally RequiredValue must be a valid phone number.
destination_numberdigits [10] or arrayRequiredSingle recipient: digits value must be a valid phone number. Multiple recipients: array of valid phone numbers (e.g., 55512345675559876543). When an array is provided, individual SMS messages are created for each recipient with per-recipient error tracking.
messagestring [160]Optionally RequiredValue must be valid string up to 1000 characters. You must provide either a message or an attachment. Depending on carrier message may be split into multiple 160 character sms.
attachmentsfileOptionally RequiredValue must be a valid file, only one file supported for now. You must provide either a message or an attachment.
retry_limitintegerOptionalValue must between 0 and 5. (default is 0)
datetime_scheduleddatetimeOptionalValue must be a valid datetime (YYYY-MM-DD HH:II:SS).
Sample response
Sample response for queue_sms
Sample response (Multi-Recipient)
Sample response (Multi-Recipient) for queue_sms_multi

Get SMS profiles

Request Type:

If you wish to get details of a sms profile, you simply have to pass the `client_sms_profile_id`. If no additional parameter is specified, the complete list of sms profiles will be returned.


ParameterType ?RequirementDescription
client_sms_profile_idintegerOptionalValue must be a valid client_sms_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_sms_profiles

Update SMS profile

Request Type:

Allows you to create or simply update a SMS profile.


ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_sms_profile_idintegerOptionally requiredIf mode is "update", value must be a valid client_sms_profile_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id.
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters.
languagestringOptionalValue must be one of the following : "en" or "fr".
allowed_sendersstringOptionalList of all the allowed_senders wanted separated by a comma.
notify_nameintegerOptionally requiredValue must be alphanumeric string. Required if option "inbound_completed_notification" is selected.
notify_emailstringOptionally requiredValue must be alphanumeric string. Required if option "inbound_completed_notification" is selected.
forward_numberstringOptionally requiredValue must be a valid phone number of 10 digits. Required if option "enable_forwarding" is selected.
callback_urlstringOptionally requiredMust be a valid Webhook. Can contain GET arguments. Details will be sent as JSON in the POST body. Required if option "enable_callback" is selected.
backup_urlstringOptionalMust be a valid Webhook. Can contain GET arguments. Details will be sent as JSON in the POST body. Will be called if callback_url does not respond.
callback_subtypestringOptionally requiredComma-separated list of SMS event types that will trigger the callback. Required if option "enable_callback" is selected. Value must be one or more of the following: "inbound_success", "outbound_success", "outbound_failed", "delivered".
autoreply_messagestringOptionally requiredValue must be alphanumeric string of maximum 160 characters. Required if option "enable_autoreply" is selected.
client_did_idstringOptionalValue must be a valid client_did_id.
optionsstringRequiredValue must be any of the following comma seperated: "inbound_completed_notification", "outbound_completed_notification", "outbound_failed_notification", "enable_forwarding", "enable_callback", "enable_autoreply" or "enable_callback_retry"
statusstringOptionalValue must be one of the following: "enabled", "disabled" or "deleted"
commentsstringOptional

Delete SMS profile

Request Type:

Delete a SMS profile from your account.


Peers & channels

Get Peers details

Request Type:

If you wish to get details of a specific peer, you simply have to pass the `client_peer_id`. If no additional parameter is specified, the complete list of peers will be returned.

ParameterType ?RequirementDescription
client_peer_idintegerOptionalValue must be a valid client_peer_id. (default is NULL)
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_peers

Update Peer

Request Type:

You can update the configuration of a peer with this request type.

Note: Not all the option for peers are available through the API. Please request any new feature to our support department.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
preserve_missing_databooleanOptionalThis will allow you to modify only the provided fields when updating an entry (default is FALSE)
client_peer_idintegerOptionally requiredIf mode is "update", value must be a valid client_peer_id
proxy_idintegerOptionally requiredOnly available on mode create. Value must be a valid proxy_id
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
host_typestringRequiredValue must be one of the following: "dynamic" or "static" (default is NULL)
hoststringOptionalValue must be a valid ip address
portstringOptionalValue must be a valid port
peer_usernamestringOptionally requiredOnly available on mode create. Value must be alphanumeric string from 6 to 32 characters.
usernamestringDeprecatedOnly available on mode create. Value must be alphanumeric string from 6 to 32 characters.
passwordstringOptionalValue must be alphanumeric string from 6 to 32 characters.
callerid_namestringOptionalValue must be alphanumeric string from 3 to 15 characters.
callerid_numberdigits [10]OptionalValue must be a valid phone number of 10 digits.
callerid_modestringRequiredValue must be one of the following: "global", "privacy", "custom", "device" or "smart"
callerid_typestringOptionally RequiredRequired on mode update. Value must be one of the following: "rpid", "pid" or "none"
callerid_formatstringOptionally RequiredRequired on mode update. Value must be one of the following: "e164", "unaltered" or "national"
internal_cid_modestringOptionalValue must be "default" or "custom".
internal_cid_namestringOptionally RequiredRequired if internal_cid_mode is set to "custom". Must be a string that consists of 2 to 15 characters
client_callerid_profile_idintegerSee descriptionRequired if callerid_mode is set to "smart". Must be a valid client_callerid_profile_id.
transportstringOptionally RequiredRequired when using static IP or ACL update. Value must be one of the following: "udp", "tcp", "tls"
codecsenumOptionally RequiredRequired on mode update. Value must be one (or more, comma separated) of the following: "g729", "ulaw", "alaw", "g726", "gsm" or "ilbc"
dtmf_modestringOptionally RequiredRequired on mode update. Value must be one of the following: "rfc2833", "inband", "info" or "auto"
dnis_modestringOptionally RequiredRequired on mode update. Value must be one of the following: "auto", "forced" or "disabled" (default is auto)
dnis_formatstringOptionally RequiredRequired on mode update. Value must be one of the following: "national" or "e164" (default is auto)
force_ring_signalbooleanOptional1 = enabled, 0 = disabled (default is 0)
enable_natbooleanOptional1 = enabled, 0 = disabled (default is 0)
enable_reinvitebooleanOptional1 = enabled, 0 = disabled (default is 0)
enable_recordingbooleanOptional1 = enabled, 0 = disabled (default is 0)
ondemand_recordingbooleanOptional1 = enabled, 0 = disabled (default is 0)
enable_dnisbooleanDeprecated1 = enabled, 0 = disabled (default is 0) will set the dnis_mode at forced
enable_notificationbooleanOptional1 = enabled, 0 = disabled (default is 0)
simultaneous_calls_limitintegerOptionalValue must be a number between 0 and 255
enable_authbooleanOptional1 = enabled, 0 = disabled (default is 0)
auth_usernamestringOptionalValue must be alphanumeric string from 3 to 32 characters.
default_ipstringOptionalValue must be a valid ip address
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is 0)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
client_filter_idsArrayOptionalValue must be one or more valid client_filter_id. (default is NULL)
enable_notify_callbackbooleanOptional1 = enabled, 0 = disabled (default is 0)
notify_callback_triggersArrayOptionalValue must be one (or more, comma separated) of the following: "on_create", "on_ring", "on_answer", "on_hangup", "on_test", "on_record" (default is NULL)
notify_callback_urlstringOptionalValue must be a valid Webhook. If this value is changed, we will hit the url and expect an HTTP Code 200. The test hit will have the trigger on_test. (default is NULL)
register_timeoutstringOptionalOnly available on mode create. Value must be between 120 and 7200.
progress_timeoutstringOptionally requiredOnly available on mode create. Value must be between 1 and 10.
provisioned_endpoint_idintegerOptionalValue must be a valid client_endpoint_id or one of the following values: 0 = default, 1 = dynamic, 2 = block, 3 = unprovisioned
optionsArrayOptionalValue must be one or more of the following : "enable_nat", "enable_reinvite", "enable_recording", "ondemand_recording", "enable_dnis", "enable_auth", "force_ring_signal", "enable_notify_callback", "disable_rtp_timer", "force_contact", "disable_moh", "enable_acl", "secure_media", "sticky_contact", "inband_ringback", "ignore_early_media", "static_failure_response", "enable_recording_transcribe", "enable_recording_notify", "disable_t38", "enable_identity_passthrough", "enable_rtcp". (default is NULL)
statusstringOptionally RequiredRequired on mode update. Value must be one of the following: "enabled" or "disabled"
commentsstringOptional

Delete peer

Request Type:

Delete a peer from your account.

Get channels details

Request Type:

Get the full list of channels or you can get a single entry by providing `client_channel_id`. System row represent all channels the account possess throught plans and services.

ParameterType ?RequirementDescription
client_channel_idintegerOptionalValue must be a valid client_channel_id. (default is NULL)
Sample response
Sample response for get_channels

Update Channel

Request Type:

This request type allows you to create a new channel or update configuration of an existing channel.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_channel_idintegerOptionally requiredIf mode is "update", value must be a valid client_channel_id
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
quantity_inboundintegerRequiredValue must be a number between 0 and 999 (inclusively).
quantity_outboundintegerRequiredValue must be a number between 0 and 999 (inclusively).
quantity_bidirectionalintegerRequiredValue must be a number between 0 and 999 (inclusively).

Delete channel

Request Type:

Delete a channel group from your account.

ParameterType ?RequirementDescription
client_channel_idintegerRequiredValue must be a valid client_channel_id.

Call routing & caller ID

Get call director profiles

Request Type:

If you wish to get details of a call director profile, you simply have to pass the `client_director_profile_id`. If no additional parameter is specified, the complete list of peers will be returned.

ParameterType ?RequirementDescription
client_director_profile_idintegerOptionalValue must be a valid client_director_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_call_director_profiles

Update Call director profile

Request Type:

Allows you to create or simply update a Call director profile.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
preserve_missing_databooleanOptionalThis will allow you to modify only the provided fields when updating an entry (default is FALSE)
client_director_profile_idintegerOptionally requiredIf mode is "update", value must be a valid client_director_profile_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
actionarrayAt least 1 requiredOrdered list of routing steps for the profile. Each index is one step (action[0], action[1], ?). See action array parameters and Providing action data below.
statusstringOptionalValue must be one of the following: "enabled" or "disabled"
commentsstringOptional
action array parameters

These fields are submitted on each action[n] entry (form fields) or as objects inside the action JSON array.

ParameterType ?RequirementDescription
usage_typestringRequiredValue must be one of the following: 'forward', 'peer', 'sip_uri'
offsetintegerRequiredWhen to start this action (in seconds). Must be between 0 and 115 and an increment of 5.
durationintegerRequiredHow long to take this action (in seconds). Max total 120. Must be betweeb 5 and 120.
client_peer_idintegerOptionally requiredRequired if usage_type is 'peer'. Must be a valid client_peer_id
forward_numberdigitsOptionally requiredRequired if usage_type is 'forward'. Must be a valid phone number.
sip_uristringOptionally requiredRequired if usage_type is 'sip_uri'. Must be a valid SIP uri.
announce_media_file_idintegerOptionally requiredOnly used for usage_type 'forward'. Required if announce_caller is set. Must be between a valid announce_media_file_id.
send_dtmfstringOptionalOnly used for usage_type 'forward'. Must be valid DTMF tones (0-9,a,b,c,d,w and W).
confirm_media_file_idintegerOptionalOnly used for usage_type 'forward'. Value must be a valid client_media_file_id. (default is 0) If specified alongside the confirm_required option, will play this message when asking the callee to confirm answering.
optionsArrayOptionalOnly used for usage_type 'forward'. Value must be one or more of the following : "confirm_required", "announce_caller" (default is NULL).
commentsstringOptional
Providing action data

Use POST for profiles with multiple steps. Send other top-level fields (mode, friendly_name, ?) in the same request. The cURL sample uses application/x-www-form-urlencoded; the JSON sample uses application/json.

Sample request body
Sample request body for update_call_director_profile

Delete Call Director Profile

Request Type:

Delete a Call Director Profile from your account.

ParameterType ?RequirementDescription
client_director_profile_idintegerRequiredValue must be a valid client_director_profile_id.

Get Callerid Profiles Details

Request Type:

If you wish to get details of a specific callerid_profile, you simply have to pass the `client_callerid_profile_id`. If no additional parameter is specified, the complete list of callerid_profiles will be returned.

ParameterType ?RequirementDescription
client_callerid_profile_idintegerOptionalValue must be a valid client_callerid_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_callerid_profiles

Update Callerid Profile

Request Type:

You can update the configuration of a callerid_profile with this request type.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_callerid_profile_idintegerOptionally requiredIf mode is "update", value must be a valid client_callerid_profile_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
callerid_namestringOptionalValue must be alphanumeric string from 2 to 15 characters.
client_did_idsenumOptionalValue(s) must be valid client_did_id(s) (comma separated).
default_client_did_idintegerOptionalValue must be a valid client_did_id.
callerid_numberintegerOptionalValue must be a valid phone number of 10 digits.
privacyintegerOptionalValue must be one of the following: "enable", "keep" or "disable"
statusstringRequiredValue must be one of the following: "enabled" or "disabled"
commentsstringOptional
purge_conditionsintegerOptionalIf value is set to 1 it will remove all the callerid profile datas not listed in the conditions_data
conditions_dataJSONOptionalArray of matching rules for the profile. Each entry defines one condition. See conditions_data array parameters and Providing conditions_data below.
conditions_data array parameters

These fields are submitted on each condition object in the conditions_data array.

ParameterType ?RequirementDescription
client_callerid_profile_data_idintegerOptionally requiredValue used to edit an existing condition. Must be a valid client_callerid_profile_data_id.
callerid_namestringOptionalIf added will use the callerid_name provided as the callerId name.
client_did_idintegerOptionalIf added will use the client_did_id provided as the callerId number.
callerid_numberintegerOptionalIf added will use the callerid_number provided as the callerId number.
privacyenumOptionalValue must be one of the following: "enable", "keep" or "disable". Default is "keep".
country_idintegerOptionalValue must be a valid country_id.
state_idintegerOptionalValue must be a valid state_id.
ratecenter_idintegerOptionalValue must be a valid ratecenter_id.
radius_distanceintegerOptionalValue is a distance in km between 10 and 1000.
source_numberintegerOptionalValue must be between 1 and 10 digits.
source_regexpstringOptionalValue must be a valid regexp.
destination_numberintegerOptionalValue must be between 1 and 10 digits.
destination_regexpstringOptionalValue must be a valid regexp.
match_methodsenumOptionalValue must be one (or more, comma separated) of the following: "local_to_destination", "radius_from_destination", "source_number_match", "destination_number_match", "region", "source_regexp" or "destination_regexp".
order_indexintegerOptionalValue used to set the priority of the condition.
commentsstringOptional
Providing conditions_data

Use POST when updating conditions. Send profile fields (mode, friendly_name, status, ?) in the same request. The cURL sample passes conditions_data as a form field; the JSON sample uses a native array.

Sample request body
Sample request body for update_callerid_profile

Voicemail & mailboxes

Get voice mailboxes details

Request Type:

Get details for a single voice mailbox or the entire list by omitting the `client_mailbox_id`.

ParameterType ?RequirementDescription
client_mailbox_idintegerOptionalValue must be a valid client_mailbox_id. (default is NULL)
Sample response
Sample response for get_mailboxes

Update Mailbox

Request Type:

Allows you to create or simply update a mailbox.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_mailbox_idintegerOptionally requiredIf mode is "update", value must be a valid client_mailbox_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters.
passcodedigits[4-12]OptionalValue must be a number from 4 to 12 characters.
emailstringOptionalValue must be a valid email address.
enable_mail_notificationintegerOptional1 = enabled, 0 = disabled (default is 0)
contact_namestringSee descriptionRequired if enable_mail_notification is set to 1. Must be between 4 to 60 characters.
enable_peer_notificationintegerOptional1 = enabled, 0 = disabled (default is 0)
notification_peersstringSee descriptionRequired if enable_peer_notification is set to 1. Must be between 1 and 10 peer ids (comma separated). (default is 0)
notification_durationintegerSee descriptionRequired if enable_mail_notification and enable_peer_notification is set to 1. Must be between 5 and 60 minutes. (default is 0)
statusstringOptionalValue must be one of the following: "enabled" or "disabled"
commentsstringOptional

Delete mailbox

Request Type:

Delete a mailbox from your account.

Get Text-to-Speech voice name

Request Type:

Get all available Text-to-Speech (TTS) voice names available

Sample response
Sample response for get_tts_voice_name

Update Mailbox Greeting

Request Type:

Allows you to create or simply update a mailbox greeting's. It is important to note that this is a POST request.


ParameterType ?RequirementDescription
modestringRequiredValue must be "text_to_speech", "existing_file" or "post_file".
client_mailbox_idintegerRequiredValue must be a valid client_mailbox_id
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters. By default if a new media file is create it will be named "greeting_mailbox_{client_mailbox_id}", where client_mailbox_id is the mailbox we are adding the greeting at.
textstringOptionally RequiredValue must be present when the mode is "text_to_speech" and is used to create the new file with the text given.
voice_namestringOptionally RequiredValue must be a valid voice_name for the Text-to-Speech. By default it is "fr-CA-Standard-A".
client_media_file_idintegerOptionally RequiredValue must be present when the mode is "existing_file" and be a valid client_media_file_id.
attachmentsintegerOptionally RequiredValue must be present when the mode is "post_file" and be a valid file.

Extensions

Get extensions details

Request Type:

Get the full list of extensions or you can get a single entry by providing `client_extension_id`.

ParameterType ?RequirementDescription
client_extension_idintegerOptionalValue must be a valid client_extension_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_extensions

Update Extension

Request Type:

This request type allows you to create a new extension or update configuration of an existing extension.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_extension_idintegerOptionally requiredIf mode is "update", value must be a valid client_extension_id
extensionintegerOptionalValue must be a number between 1 000 and 9 999 (inclusively).
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters.
client_peer_idsarrayOptionalValues must valid client_peer_id.
peer_timeoutstringOptionalValue must valid one of the following: "disabled", "2", "5", "10", "15", "20", "25", "30", "35", "40", "45", "50", "55".
enable_peerintegerOptional1 = enabled, 0 = disabled (default is 0)
client_queue_idsenumOptionalValue(s) must be valid client_queue_id(s) (comma separated). (default is NULL)
forward_numberintegerOptionalValue must be a valid phone number of 10 digits. (default is NULL)
forward_timeoutstringOptionalValue must valid one of the following: "disabled", "2", "5", "10", "15", "20", "25", "30", "35", "40", "45", "50", "55".
enable_forwardingintegerOptional1 = enabled, 0 = disabled (default is 0)
announce_media_file_idintegerOptionally requiredRequired if announce_caller is set. Must be between a valid announce_media_file_id.
send_dtmfstringOptionalMust be valid DTMF tones (0-9,a,b,c,d,w and W).
voice_languagestringOptionalValue must valid one of the following: "en", "fr". Default is account preferred language.
confirm_media_file_idintegerOptional>If specified alongside the confirm_required option, will play this message when asking the callee to confirm answering.
client_mailbox_idintegerOptionalValue must valid client_mailbox_id.
enable_voicemailintegerOptional1 = enabled, 0 = disabled (default is 0)
enable_parkingintegerOptional1 = enabled, 0 = disabled (default is 0)
dnis_rewritedigits [10]OptionalValue must be a valid DID number.
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id
statusstringOptionalValue must be one of the following: "enabled" or "disabled"
commentsstringOptional

Queues

Get queues details

Request Type:

If you wish to get details of a specific queue, you simply have to pass the `client_queue_id`. If no additional parameter is specified, the complete list of queues will be returned.

ParameterType ?RequirementDescription
client_queue_idintegerOptionalValue must be a valid client_queue_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_queues

Update Queue

Request Type:

You can update the configuration of a queue with this request type.

Note: Not all the option for queues are available through the API. Please request any new feature to our support department.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_queue_idintegerOptionally requiredIf mode is "update", value must be a valid client_queue_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 60 characters.
commentsstringOptional
client_moh_profile_idintegerOptionalValue must be a valid client_moh_profile_id. (default is 0)
max_wait_timeintegerOptionalValue must be between 10 and 7200. (default is 300)
max_wait_time_no_agentintegerOptionalValue must be between 30 and 600. (default is 90)
progressive_ring_delayintegerOptionalValue must be between 5 and 300. (default is 10)
discard_abandoned_delayintegerOptionalValue must be between 300 and 86400. (default is 900)
max_no_agentintegerOptionalValue must be between 0 and 99. (default is 0)
tier_escalate_delayintegerOptionalValue must be between 30 and 3600. (default is 120)
datetime_suspended_untilstringOptionalValue must be a valid datetime in format 'yyyy-mm-dd H:i:s' (default is 0000-00-00 00:00:00)
agentsstringOptionalValue must be a list of agent ids comma seperated.
optionsstringOptionalValue must be any of the following comma seperated: "enable_resume_abandoned", "enable_tiers_escalation", "enable_escalate_no_agent" or "enable_escalate_multiply_delay"
statusstringOptionalValue must be one of the following: "enabled" or "disabled"

Get queue agents details

Request Type:

If you wish to get details of a specific queue agent, you simply have to pass the `client_queue_agent_id`. If no additional parameter is specified, the complete list of queue agents will be returned.

ParameterType ?RequirementDescription
client_queue_agent_idintegerOptionalValue must be a valid client_queue_agent_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_queue_agents

Update Queue Agent

Request Type:

You can update the configuration of a queue agent with this request type.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_queue_agent_idintegerOptionally requiredIf mode is "update", value must be a valid client_queue_agent_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 60 characters.
commentsstringOptional
client_peer_idintegerOptionalValue must be a valid client_peer_id. (default is 0)
client_director_profile_idintegerOptionalValue must be a valid client_director_profile_id. (default is 0)
client_schedule_idintegerOptionalValue must be a valid client_schedule_id. (default is NULL)
ring_delayintegerOptionalValue must be between 5 and 120. (default is 10)
wrap_up_delayintegerOptionalValue must be between 0 and 600. (default is 15)
on_busy_delayintegerOptionalValue must be between 0 and 3600. (default is 120)
on_reject_delayintegerOptionalValue must be between 0 and 3600. (default is 300)
on_unanswered_delayintegerOptionalValue must be between 0 and 3600. (default is 30)
max_unansweredintegerOptionalValue must be between 0 and 99. (default is 0)
agent_statusstringOptionalAvailability of the agent in the queue system. Value must be one of the following: "online" , "offline" , "break"or "automatic" (default is null)
statusstringOptionalValue must be one of the following: "enabled" or "disabled"

IVR

Get IVR profiles details

Request Type:

If you wish to get details of a specific IVR profile, you simply have to pass the `client_ivr_profile_id`. If no additional parameter is specified, the complete list of IVRs will be returned.

ParameterType ?RequirementDescription
client_ivr_profile_idintegerOptionalValue must be a valid client_ivr_profile_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_ivr_profiles

Update IVR Profile

Request Type:

You can update the configuration of an IVR profile with this request type.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_ivr_profile_idintegerOptionally requiredIf mode is "update", value must be a valid client_ivr_profile_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 60 characters.
default_languagestringOptionalValue must be one of the following: ""(empty), "en" or "fr"
pre_ivr_extensionintegerOptionalValue must be a valid client_extension_id. (default is 0)
pre_ivr_delaystringOptionalValue must be one of the following: "2", "5", "10", "15", "20", "25" or "30" (default is 10)
client_office_hour_idintegerOptionalValue must be a valid client_office_hour_id. (default is 0)
client_moh_profile_idintegerOptionalValue must be a valid client_moh_profile_id. (default is 0)
optionsstringOptionalValue must be any of the following comma seperated: "enable_directory","disable_moh"
statusstringRequiredValue must be one of the following: "enabled" or "disabled"
commentsstringOptional
[raw_metadata]see docsee docAdditional information for the metadata can be found here.

Delete IVR profile

Request Type:

Delete a configuration of an IVR profile from your account.


Schedules

Get Schedules

Request Type:
Get details for schedules (office hours).
ParameterType ?RequirementDescription
client_schedule_idintegerOptionalValue must be a valid client_schedule_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_schedules

Update Schedule

Request Type:

You can update the configuration of a schedule with this request type.

Note: Not all the option for schedule are available through the API. Please request any new feature to our support department.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is 'update')
client_schedule_idintegerOptionally requiredIf mode is "update", value must be a valid client_schedule_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is 0)
friendly_namestringRequiredValue must be alphanumeric string from 2 to 60 characters.
commentsstringOptional
time_zone_idintegerOptionalValue must be a valid time_zone_id. (default is based on account preferences)
range_datestringOptionalValue must be one of 'daily', 'weekly', 'custom'. (default is 'daily')
shift_start_datestringOptionalValue must be between a valid date in format "YYYY-MM-DD". (default is current date)
business_hoursjsonOptionalNote: Not yet fully implemented, only month-day exceptions are accepted. Example JSON string: {"month4":{"day22":[{"start":"00:00:00","end":"10:30:00","type":"exception"}]}}
shiftjson/arrayOptionalExample URI array: shift[0][status]=on&shift[0][days]=2&shift[1][status]=off&shift[1][days]=2 Example JSON string: [{"status":"on","days":"2"},{"status":"off","days":"2"}]
statusstringOptionalValue must be one of the following: "enabled" or "disabled"
ParameterType ?RequirementDescription
statusstringRequiredValue must be one of the following: 'one', 'off'
daysintegerRequiredValue must be a number of days

Account & billing

Get account details

Request Type:

You can get some of the account details by using this request type. More information related to account is also provided in request types get_account_preferences and get_funding_details.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_account_details

Get account preferences

Request Type:

This request type will provide details for information found in clients sections Account Preferences and Global Settings.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_account_preferences

Get Subaccounts details

Request Type:

You can get the details and settings of your Subaccounts by specifying the `client_subaccount_id`. If you do not provide the value, the details for all Subaccounts will be returned.

ParameterType ?RequirementDescription
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
client_brand_idintegerOptionalValue must be a valid client_brand_id. (default is NULL)
custom_idstringOptionalValue must be a valid custom_id string. Allows filtering subaccounts by custom identifier. (default is NULL)
statusenumOptionalValue must be one (or more, comma separated) of the following: "enabled", "disabled" or "deleted" (default is NULL)
get_associationsboolOptionalValue must be one of the following: "1" or "0" (default is 0). This will return the list of ids of peer, did, extension and mailbox associated to the client_subaccount.
Sample response
Sample response for get_subaccounts

Update Subaccount

Request Type:

Allows you to create or simply update a subaccount.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_subaccount_idintegerOptionally requiredIf mode is "update", value must be a valid client_subaccount_id
client_brand_idintegerOptionalValue must be a valid client_brand_id.If client_brand_id is not provided, default brand will be assumed.
custom_idstringOptional
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
call_limitintegerOptionalValue must be a number between 0 and 999
allow_international_callstringOptionalValue must be one of the following: "yes" or "no" (default is "no")
international_call_limitintegerOptional(default is 1)
require_international_nipstringOptionalValue must be one of the following: "yes" or "no". (default is "no")
international_nipstringOptionalValue must be a number between 6 and 8 character. More than one value can be used separated by comma. (default is "NULL")
multi_tenancy_modestringRequiredValue must be one of the following: "disabled", "global", "self" or "shared"
multi_tenancy_subaccount_idstringOptionally requiredIf "multi_tenancy_mode" is shared must be a valid client_subaccount_id
organizationstringOptional
organization_typestringOptionalValue must be one of the following: "personal" or "business"
client_profilestringOptionalValue must be one of the following: "undefined", "residential_client", "commercial_client", "callcenter_client" or "internal" (default is "undefined")
voice_languagestringOptionalValue must be one of the following: "en" or "fr" (default is NULL)

Update Subaccount Associations

Request Type:

You can update the associations of a subaccount with this request type.

ParameterType ?RequirementDescription
client_subaccount_idintegerRequiredValue must be a valid client_subaccount_id
associated_peersenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_peer_id
associated_didsenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_did_id
associated_extensionsenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_extension_id
associated_fax_profilesenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_fax_profiles
associated_sms_profilesenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_sms_profiles
associated_mailboxesenumOptionalOnly the list of all the given ids will be saved, erasing missing values. Value must be one (or more, comma seperated) valid client_mailbox_id

Update a Subaccount Address

Request Type:

Allows you to create or simply update an address for the subaccount.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_subaccount_idintegerRequiredValue must be a valid client_subaccount_id
client_address_idintegerOptionally requiredIf mode is "update", value must be a valid client_address_id
typestringOptionalValue must be one of the following: "billing" There can be only one subaccount with an address of the type "billing". (default is "billing")
box_numberstringOptional
civic_numberintegerRequiredValue must be a number.
streetstringRequiredValue must be alphanumeric string.
unit_numberintegerRequiredValue must be a number.
citystringRequiredValue must be alphanumeric string.
country_idintegerRequiredValue must be a valid country_id
state_idstringOptionally requiredIf country_id is "38" or "223", must be a valid state_id.
state_otherstringOptionally requiredIf country_id is not is "38" or "223", must be alphanumeric string.
postal_codestringRequiredMust be a valid postal_code.
precisionstringOptionally required

Delete subaccount

Request Type:

Delete a subaccount from your account.

Get funding details

Request Type:

This request will allow you to get your account's funding details and status.

Note: The value returned for account_balance and funds_left are negative amount if not followed by 'CR'.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_funding_details

Get billing activity

Request Type:

This request will provide a list of invoices, payments, credits and returns and refunds. If date range is not provided, the complete list of transactions will be returned.

ParameterType ?RequirementDescription
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD".
Sample response
Sample response for get_billing_activity

Get account invoices

Request Type:

Get a full list of all main account invoices.

ParameterType ?RequirementDescription
invoice_idintegerOptionalMust be a valid invoice invoice_id. (default is NULL)
web_keystringOptionalMust be a valid invoice web_key (public access identifier, e.g. 89DG56F). (default is NULL)
date_fromdateOptionalValue must be a valid date. Based on date_billing (default is NULL)
date_todateOptionalValue must be a valid date. Based on date_billing (default is NULL)
include_itemsbooleanOptionalThis will add invoice items to the result (default is FALSE)
Sample response
Sample response for get_invoices

Get Account Services Rates & Pricing

Request Type:

Get the rates that apply to the authenticated account for self-serve add-on services and metered usage (including communication services such as local and toll-free calling). Matches the rates shown on the client portal PlansService rates tab. Each returned service includes a type field with the service catalog types from the database (comma-separated SET values such as self_serve, usage, option, plan, bundle), the applicable rate, order_index for display ordering, and related billing fields. Use the optional request parameter type to filter by pricing category (self_serve or usage), using the same FIND_IN_SET rules as the portal Service rates tab. For international destination lookup by prefix or country, use Get Calls Rates instead.

ParameterType ?RequirementDescription
datedateOptionalEffective date for plan and rate lookup (default is today)
service_idintegerOptionalReturn pricing for a single enabled service only
typestringOptionalFilter by pricing category: self_serve (self-serve services, excluding usage) or usage (usage services, excluding self-serve). Same rules as the portal Service rates tab.
Sample response
Sample response for get_pricing

Get Calls Rates

Request Type:

Get per-destination call rates (international and toll termination). Filter by dialing prefix (code) or country_id (one is required). For account service and usage rates, use Get Account Services Rates & Pricing instead.

ParameterType ?RequirementDescription
codestringOptionally requiredValue must be a valid code_prefix.
country_idintegerOptionally requiredValue must be a valid country_id.
state_idintegerOptionalValue must be a valid state_id.
Sample response
Sample response for get_rates

Get plans

Request Type:

Get the list of current plans available along with their included services.

ParameterType ?RequirementDescription
plan_idintegerOptionalValue must be a valid plan_id.
plan_groups_idintegerOptionalValue must be a valid plan_group_id.
Sample response
Sample response for get_plans

Reference data

Get countries

Request Type:

Get a list of countries, their country code and country ID for use with other request types.

Note: This response is reference data that changes infrequently. Store it locally, reuse your local data for lookups, and call this request type again only when you need fresh values.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_countries

Get states

Request Type:

Get a list of states/provinces, their state code and state ID for use with other request types.

Note: This response is reference data that changes infrequently. Store it locally, reuse your local data for lookups, and call this request type again only when you need fresh values.

ParameterType ?RequirementDescription
country_idintegerRequiredValue must be a valid country_id.
Sample response
Sample response for get_states

Get City codes

Request Type:

Get the list of city.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_city_codes

Get issues types

Request Type:

Retreive the list of possible issues, description and their issue ID for use with `report_call_issue` request type.

Note: This response is reference data that changes rarely. Store it locally, reuse your local data for lookups, and refresh your local copy about once a month.

ParameterType ?RequirementDescription
----
Sample response
Sample response for get_issues_types

Get Proxies

Request Type:

Get the list of available proxies.

ParameterType ?RequirementDescription
proxy_idintegerOptionalValue must be a valid proxy_id.
Sample response
Sample response for get_proxies

Get Network Status

Request Type:

If you wish to get the list of network status. If no additional parameter is specified, the first 5 entries will be returned.

ParameterType ?RequirementDescription
modestringOptionalValue must be either 'latest' or 'unresolved'. (default is latest)
limitintegerOptionalValue must be a valid positive number. (default is 5)
offsetintegerOptionalValue must be a valid positive number. (default is 0)
Sample response
Sample response for get_network_status

E911

Get E911 provisioned status

Request Type:

Returns provisioned status of a DID

Note : Will return all e911 endpoints locations if no argument is given. If both argument are given, the client_endpoint_id will be used.

ParameterType ?RequirementDescription
client_did_idintegerOptionally requiredValue must be a valid client_did_id
phone_numberintegerOptionally requiredValue must be a valid phone number of 10 digits. ( No space or - symbol )
client_endpoint_idintegerOptionally requiredValue must be a valid client_endpoint_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 1000)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
Sample response
Sample response for get_e911

Check address validity for E911

Request Type:

Verify if an address is valid with the E911 service.

IMPORTANT : This function may return failed and still contain alternate addresses until an exact match is provided. See below for example

ParameterType ?RequirementDescription
phone_numberintegerOptionalValue must be a valid phone_number ( No space or - symbol ).
civic_numberintegerRequiredValue must be a valid civic_number
streetstringRequiredMust be an exact match to the street name.
citystringRequiredMust be an exact match to the city name.
state_codestringOptionaly RequiredValue must be a valid 2 letter state code.
state_idintegerOptionaly RequiredValue must be a valid country_id
country_codestringOptionaly RequiredValue must be a valid 2 letter country code.
country_idintegerOptionaly RequiredValue must be a valid country_id
postal_codestringRequiredMust be a valid postal_code
address_typestringOptionalMust be one of the following : "apartment", "basement", "building", "department", "floor", "front", "hanger", "key", "lobby", "lot", "lower", "office", "penthouse", "pier", "rear", "room", "side", "slip", "space", "stop", "suite", "trailer", "unit", "upper"
address_type_numberstringOptionalMust be a valid address_type_number
View alternate addresses error sample response
View alternate addresses error sample response

Associate peer to did for E911

Request Type:

Associate a peer to a provisioned DID.

IMPORTANT : Ignore if the trunk associated is a server and many different endpoint addresses are provisioned.

ParameterType ?RequirementDescription
client_did_idintegerOptionally requiredValue must be a valid client_did_id
phone_numberintegerOptionally requiredValue must be a valid phone number of 10 digits. ( No space or - symbol )
client_endpoint_idintegerOptionally requiredValue must be a valid client_endpoint_id
client_peer_idintegerRequiredValue must be a valid client_peer_id

Disassociate peer to did for E911

Request Type:

Disassociate a peer to a provisionned DID.

ParameterType ?RequirementDescription
client_peer_idintegerRequiredValue must be a valid client_peer_id

Update E911 provisioned address.

Request Type:

Update the provisioned address for a did for the e911 service.

IMPORTANT : This function may return failed and still contain alternate addresses until an exact match is provided. See below for example

ParameterType ?RequirementDescription
phone_numberintegerRequiredValue must be a valid phone number of 10 digits. ( No space or - symbol )
first_namestringDeprecatedValue must be a valid first_name.
last_namestringDeprecatedValue must be a valid last_name
full_namestringRequiredValue must be a string between 2 and 32 characters.
civic_numberintegerRequiredValue must be a valid civic_number
streetstringRequiredMust be an exact match to the street name.
citystringRequiredMust be an exact match to the city name.
state_codestringOptionally RequiredValue must be a valid 2 letter state code.
state_idintegerOptionally RequiredValue must be a valid country_id
country_codestringOptionally RequiredValue must be a valid 2 letter country code.
country_idintegerOptionally RequiredValue must be a valid country_id
postal_codestringRequiredMust be a valid postal_code
languagestringDeprecatedValue must valid one of the following: "en", "fr". Default is account preferred language. Ignored outside of Canada. This parameter has been replaced by e911_language and will eventually be removed.
e911_languagestringOptionalValue must valid one of the following: "en", "fr". Default is account preferred language. Ignored outside of Canada.
address_typestringOptionalMust be one of the following : "apartment", "basement", "building", "department", "floor", "front", "hanger", "key", "lobby", "lot", "lower", "office", "penthouse", "pier", "rear", "room", "side", "slip", "space", "stop", "suite", "trailer", "unit", "upper"
address_type_numberstringOptionalMust be a valid address_type_number
rate_provider_idintegerOptionalMust be a valid rate_provider_id
View alternate addresses error sample response
View alternate addresses error sample response

Delete E911 provided address

Request Type:

Delete the provisioned address of a did. Also remove any association for peers using this address.

Note: Only one of the arguments is needed. If both are given, the client_endpoint_id will override.

ParameterType ?RequirementDescription
client_did_idintegerOptionally requiredValue must be a valid client_did_id
phone_numberintegerOptionally requiredValue must be a valid phone number of 10 digits. ( No space or - symbol )
client_endpoint_idintegerOptionally requiredValue must be a valid client_endpoint_id

Resellers

Get list of reseller transactions

Request Type:

Get a full list of all reseller transactions.

ParameterType ?RequirementDescription
reseller_transaction_idintegerOptionalMust be a valid reseller_transaction_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
date_fromdateOptionalValue must be a valid date. Based on date_applied (default is NULL)
date_todateOptionalValue must be a valid date. Based on date_applied (default is NULL)
Sample response
Sample response for get_resellers_transactions

Update reseller transactions

Request Type:

You can update and create the reseller transactions.

ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
reseller_transaction_idintegerRequired On UpdateIf mode is "update", value must be a valid reseller_transaction_id
client_subaccount_idintegerRequired On CreateValue must be a valid client_subaccount_id.
typestringRequired On CreateValue must be one of the following: "payment", "credit", "refund", "return" or "deposit".
amountfloatOptional
reseller_payment_method_idintegerOptionally Required On CreateValue required for type "payment". Must be a valid reseller payment method id.
transaction_dataintegerOptionally Required On CreateValue optionaly required for type "payment". Depends on the payment method configuration. But is most likely a confirmation number.
add_taxesbooleanOptionalIf set to false we will asume your amount has taxes included. Value used for type "credit". (default is FALSE)
date_billingdateOptionalValue must be a valid date formatted as "YYYY-MM". (default is this year and month)
date_applieddateOptionalValue must be a valid date formatted as "YYYY-MM-DD". (default is today)
time_appliedtimeOptionalValue must be a valid date formatted as "HH:II:SS". (default is now)
commentsstringOptional
notesstringOptional
statusstringOptionalValue must be one of the following: "enabled" or "deleted"

Get list of reseller invoices

Request Type:

Get a full list of all reseller invoices.

ParameterType ?RequirementDescription
reseller_invoice_idintegerOptionalMust be a valid invoice reseller_invoice_id. (default is NULL)
web_keystringOptionalMust be a valid invoice web_key. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
date_fromdateOptionalValue must be a valid date. Based on date_applied (default is NULL)
date_todateOptionalValue must be a valid date. Based on date_applied (default is NULL)
include_itemsbooleanOptionalThis will add invoice items to the result (default is FALSE)
Sample response
Sample response for get_resellers_invoices

Get resellers clients plans

Request Type:

Get the list of resellers clients plans.

ParameterType ?RequirementDescription
reseller_plan_idintegerOptionalValue must be a valid reseller_plan_id.
billing_qualificationstringOptionalValue must be one of the following: "disabled", "partial" or "complete"
funding_statusstringOptionalValue must be one of the following: "sufficient", "deficient" , "past_due" or "negative"
Sample response
Sample response for get_resellers_clients_plans

Get Subaccount Services Rates & Pricing

Request Type:

Get the rates billed to a reseller subaccount for optional add-on services and metered usage (including communication services such as local and toll-free calling). Requires client_subaccount_id. Response structure matches Get Account Services Rates & Pricing, plus service_origin (internal for platform services, custom for reseller-defined services). Each service includes a type field with the service catalog types from the database (comma-separated SET values such as option, usage, other, plan, bundle), the applicable rate, order_index for display ordering, and related billing fields. Use the optional request parameter type to filter by pricing category (option or usage), which applies FIND_IN_SET rules against those catalog types - not the billing source self_serve. For international destination lookup by prefix or country, use Get Calls Rates instead.

ParameterType ?RequirementDescription
client_subaccount_idintegerRequiredMust be a valid subaccount client_subaccount_id belonging to the authenticated account
datedateOptionalEffective date for plan and rate lookup (default is today)
service_idintegerOptionalReturn pricing for a single enabled service only
typestringOptionalFilter by pricing category: option (catalog types option/other, excluding usage) or usage (catalog type usage, excluding option/other). Uses FIND_IN_SET on the response type SET.
Sample response
Sample response for get_reseller_pricing

Storage & files

Get Storage statistics

Request Type:
Gather statistical information about storage stats for given period.
ParameterType ?RequirementDescription
date_fromdateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
date_todateOptionalValue must be a valid date formatted as "YYYY-MM-DD". Max date range between date_to and date_from is 12 months. (default is today)
client_subaccount_idsenumOptionalList of all the client_subaccount_id wanted separated by a comma. Max 10 client_subaccount_id. (default is main_account and whole_account (main_account + subaccounts))
storage_typesenumOptionalList of all the client storage types wanted separated by a comma. (default is NULL)
Sample response with no subaccount_ids specified.
Sample response with no subaccount_ids specified. for get_storage_stats_no_subaccount
Sample response with subaccount_ids specified.
Sample response with subaccount_ids specified. for get_storage_stats_subaccount

Get Media Files

Request Type:
Get details for media failes.
ParameterType ?RequirementDescription
client_media_file_idintegerOptionalSearch for a specific media file.Value must be a valid client_media_file_id. (default is NULL)
client_media_folder_idintegerOptionalSearch for files in a specific folder.Value must be a valid client_media_folder_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_media_files

Get file

Request Type:

This request type allows you to securely retrieve files associated with your account using a token-based authentication system. The file content is directly streamed to the client.


ParameterType ?RequirementDescription
tokenstringRequiredSecure token for file access authentication. This token identifies and authorizes access to a specific file.
Sample response
Sample response for get_file

Note: This request type does not return XML/Json data. Instead, it directly streams the requested file content with appropriate headers for file download or display.

The response will include:

  • Appropriate Content-Type header based on file type
  • Content-Disposition header for file download
  • File content streamed directly to the client

Example file types that can be retrieved:

  • PDF documents (application/pdf)
  • Image files (image/jpeg, image/png, etc.)
  • Audio files (audio/wav, audio/mp3, etc.)

Devices & autoprovision

Get Devices

Request Type:

Get all available autoprovision devices

ParameterType ?RequirementDescription
makestringOptionalValue must be a valid make. (default is NULL)
Sample response
Sample response for get_devices

Get Device Endpoint (Autoprovision)

Request Type:

If you wish to get details of a device endpoint, you simply have to pass the `client_device_endpoint_id`. If no additional parameter is specified, the complete list of endpoints will be returned.


ParameterType ?RequirementDescription
client_device_endpoint_idintegerOptionalValue must be a valid client_device_endpoint_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
device_macstringOptionalValue must be a valid device_mac. (default is NULL)
device_idintegerOptionalValue must be a valid device_id. (default is NULL)
Sample response
Sample response for get_device_endpoints

Update Device Endpoint (Autoprovision)

Request Type:

Allows you to create or simply update a Device Endpoint (Autoprovision).


ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
client_device_endpoint_idintegerOptionally requiredIf mode is "update", value must be a valid client_device_endpoint_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id.
friendly_namestringOptionalValue must be alphanumeric string from 2 to 32 characters.
device_idintegerRequiredValue must be a valid device_id see Get devices.
device_namestringOptional
client_peer_idsstringOptionalList of all the client_peer_id used separated by a comma. If the device supports label can also include labels using the | symbol (eg: 1234|Mike Phone,5678|Barbara)
client_extension_idintegerOptionally requiredValue must be a valid client_extension_id
client_mailbox_idintegerOptionally requiredValue must be a valid client_mailbox_id
device_macstringOptionalValue must be a valid mac address, we support (AABBCCDDEE or AA:BB:CC:DD:EE)
serial_numberstringOptionalDevice Serial Number
timezone_idstringOptionalValue must be a valid timezone_id.
admin_passwordstringOptionalAdministrator password for accessing device settings and configuration
client_passwordstringOptionalClient/user password for device access
languagestringOptionalValue must be one of the following: "fr" or "en"
is_time_format24hbooleanOptionalValue must be one of the following: "1" or "0"
is_vlan_enabledstringOptionalValue must be one of the following: "1" or "0"
vlannumberOptionalIf Vlan is enabled put the Vlan ID here
call_waitingstringOptionalValue must be one of the following: "active" or "inactive"
call_forwardingstringOptionalValue must be one of the following: "allow" or "disallow"
is_vlan_enabledstringOptionalValue must be one of the following: "allow" or "disallow"
button_configJSONOptionalThe button config in JSON format. Example : {"1":{"feature":"presence","label":"Steve Ruck","line":"1","feature_value":"dnis_test"},"2":{"feature":"speed_dial","label":"PARK","line":"3","feature_value":"5141234568"}} Detailed documentation will be provided soon, in the meantime I suggest building it through the client section and getting the results via Get device endpoints (Autoprovision) and go from there.
statusstringOptionalValue must be one of the following: "enabled", "disabled" or "deleted"
commentsstringOptional

Delete Device Endpoint (Autoprovision)

Request Type:

Delete a Device Endpoint from your account.

ParameterType ?RequirementDescription
client_device_endpoint_idintegerRequiredValue must be a valid client_device_endpoint_id.

3CX integration

Get 3cx Server Details

Request Type:

If you wish to get details of a 3cx server, you simply have to pass the `pbx3cx_server_id`. If no additional parameter is specified, the complete list of servers will be returned.


ParameterType ?RequirementDescription
pbx3cx_server_idintegerOptionalValue must be a valid pbx3cx_server_id. (default is NULL)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
friendly_namestringOptionalValue must be a valid string. (default is NULL)
server_fqdnstringOptionalValue must be a valid string. (default is NULL)
license_keystringOptionalValue must be a valid string. (default is NULL)
levelintegerOptionalValue must be a valid service level (1, 2 or 3). (default is NULL)
Sample response
Sample response for get_3cx_servers

Update a 3cx Server

Request Type:

Allows you to create or simply update a 3cx Server.


ParameterType ?RequirementDescription
modestringOptionalValue must be "update" or "create". (default is update)
pbx3cx_server_idintegerOptionally requiredIf mode is "update", value must be a valid pbx3cx_server_id
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id.
friendly_namestringRequiredValue must be alphanumeric string from 2 to 32 characters.
server_portintegerOptionalValue must a valid port (default 443).
levelstringOptionalValue must be one of the following service level values: "1" or "2" or "3"
server_fqdnstringOptionalValue must be a valid FQDN.
is_connection_allowedbooleanOptionalValue must be one of the following: "1" or "0" (default 0). If set will connect to the server using the "server_name" and "server_password" for synchronisation and maintenance. Required for the following options : 'sync_calls','sync_recording_media','sync_voicemail_media','sync_backups','auto_renew_ssl' Required for "monitoring_status" enabled.
server_namestringOptionally RequiredValue must be alphanumeric. Required for "is_connection_allowed".
server_passwordstringOptionally RequiredValue must be alphanumeric. Required for "is_connection_allowed".
license_keystringOptionalValue must be a valid 3cx License Key.
license_expirationdateOptionalValue must be a valid date in "Y-m-d" format.
product_editionstringOptionalValue must be one of the following: 'Professional','Standard','Enterprise','Startup'
product_simultaneous_callsstringOptionalValue must be one of the following: '4','8','16','24','32','48','64','96','128','192','256','512','1024'
optionsstringOptionalValue must be any of the following comma seperated: 'sync_calls', 'sync_recording_media', 'sync_voicemail_media', 'backup_includes_voicemails', 'sync_backups', 'backup_includes_templates', 'encrypt_backup', 'auto_renew_ssl'
encrypt_backup_passwordstringOptionally RequiredValue must be alphanumeric. Required for "encrypt_backup".
backup_frequencystringOptionalValue must be one of the following: '1_day','3_day','1_week','2_week','1_month','3_month' (default 3_day)
backup_retentionstringOptionalValue must be one of the following: 'none', '1_day','3_day','1_week','2_week','1_month','3_month' (default 3_day)
call_retentionstringOptionalValue must be one of the following: 'none','1_week','1_month','3_month','6_month','1_year','2_year','3_year','5_year','8_year','10_year' (default 3_year)
dns_servicestringOptionalValue must be one of the following: 'dns_cloudns','dns_cf'. Please see FAQ for more details.
auth_typestringOptionalValue must be one of the following: 'account','subaccount'. Please see FAQ for more details. Required for 'dns_cloudns'
auth_idstringOptionalValue must be alphanumeric. Please see FAQ for more details. Required for 'dns_cloudns'
auth_passwordstringOptionalValue must be alphanumeric. Please see FAQ for more details. Required for 'dns_cloudns'
certificate_tokenstringOptionalValue must be alphanumeric. Please see FAQ for more details. Required for 'dns_cf'
monitoring_statusstringOptionalValue must be one of the following: "enabled" or "disabled"
subscribed_monitoringstringOptionalValue must be one of the following: 'system','trunks','services','callflows','sip_test','call_test','system_additional','voicemail','backup','ssl'
alert_statusstringOptionalValue must be one of the following: "enabled" or "disabled"
subscribed_alertsstringOptionalValue must be one of the following: 'connectivity','system','trunks','services','callflows','sip_test','call_test','system_additional','voicemail','backup','ssl' Services must be active in 'subscribed_monitoring' for alerting to work.
alert_recipientsstringOptionalComa separated list of email recipients for all alerts
statusstringOptionalValue must be one of the following: "enabled", "disabled" or "deleted"
commentsstringOptional

Delete a 3CX Server

Request Type:

Delete a 3cx Server from your account.


ParameterType ?RequirementDescription
pbx3cx_server_idintegerRequiredValue must be a valid pbx3cx_server_id.

Get 3CX call history

Request Type:

Retrieve 3CX Calls History.

ParameterType ?RequirementDescription
date_fromdateOptionally RequiredIf set, date_to must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
date_todateOptionally RequiredIf set, date_from must also be set.Value must be a valid date formatted as "YYYY-MM-DD".
call_hashstringOptionally RequiredValue must be a 32 characters alphanumeric call_hash referencing the last call previously returned by your last request made with get_calls.
directionstringOptionalValue must be one of the following: "inbound" or "outbound" (default is NULL)
routing_typestringOptionalValue must be one of the following: "undefined","internal","emergency_call","directory_assistance","international_termination","international_origination","local_termination","local_origination","tollfree_origination","tollfree_termination" More than one value can be used separated by comma (default is NULL)
dispositionstringOptionalValue must be one of the following: "answered","busy","failed","no_answer","cancelled","denied","invalid","unknown" More than one value can be used separated by comma (default is NULL)
result_limitintegerOptionalValue must be between 1 and 1000 (default is 25 with date_to and date_from set, 1 with call_hash set)
result_offsetintegerOptionalValue must be a valid number (default is NULL)
bindingsstringOptionalValue must be one of the following: "recording", "voicemail" (default is all)
client_subaccount_idintegerOptionalValue must be a valid client_subaccount_id. (default is NULL)
Sample response
Sample response for get_3cx_calls

Messaging & testing

Queue Message

Request Type:

You can send an email message to a custom recipient with this request type. This API allows you to queue email messages using a predefined message template with custom subject, content, and recipient information.

The API includes duplicate detection based on recipient contact information and message content to prevent sending duplicate messages.

On success, the API returns the number of emails queued and the message_log_ids for tracking purposes. On failure, it returns false.


ParameterType ?RequirementDescription
contact_emailemailRequiredValue must be a valid email address for the recipient.
contact_namestring [255]RequiredValue must be the full name of the recipient.
languagestring [2]OptionalLanguage code for the message template (e.g., 'en', 'fr', 'es'). If not specified, the default language will be used.
client_subaccount_idintegerOptionalValue must be a valid client subaccount ID for message personalization.
email_subjectstringRequiredThe subject line for the email message.
email_contentstringRequiredThe content/body of the email message.
client_brand_idintegerOptionallThe brand ID to use for the message. Brand must belong to your account. This parameter is ignored if client_subaccount_id is specified.
message_idintegerRequiredValue must be a valid message template ID from the EMAIL_TEMPLATES table.
test_onlybooleanOptionalValue must be true or false. When true, message is processed but not actually sent. (default is false)
Sample response
Sample response for queue_message

Error types

The following information gives you details about possible errors returned by the different request types.

Global

Error type Description
auth_username_invalid Auth username is invalid.
auth_username_required Auth username is required.
authentication_failed Authentication failed. Please verify 'client_account_id' and 'auth_token'.
authentication_token_required Auth token is required.
requests_soft_limit_reached The limit of requests has been reached. Further requests may be denied
requests_hard_limit_exceeded The limit of requests allowed has been exceeded. Request is denied.
callerid_name_invalid Caller ID name is invalid.
callerid_name_required Caller ID name is required.
callerid_number_invalid Caller ID number is invalid.
callerid_number_required Caller ID number is required.
callerid_rejection_notice Some providers might reject toll free Caller ID.
client_account_id_invalid Client account ID is invalid.
client_account_id_required Client account ID is required.
client_did_id_invalid Client DID ID is invalid.
client_extension_id_invalid Client account ID is invalid.
client_mailbox_id_invalid Client mailbox ID is invalid.
client_peer_id_invalid Client peer ID is invalid.
country_id_invalid Country ID is invalid.
country_id_required Country ID is required.
date_from_invalid Date from is invalid.
date_to_invalid Date to is invalid.
email_invalid Email address is invalid.
email_required Email address is required.
forward_number_invalid Forward number is invalid.
forward_number_required Forward number is required.
forward_timeout_invalid Call forward ring timeout is invalid.
forward_timeout_required Call forward ring timeout is required.
friendly_name_invalid Friendly name is invalid.
friendly_name_required Friendly name is required.
internal_error-database_error There was an internal error with our database.
internal_error-invalid_argument Invalid argument.
language_invalid Language is invalid.
mailbox_invalid Mailbox is invalid.
mode_invalid Mode is invalid.
npa_invalid NPA is invalid.
nxx_invalid NXX is invalid.
npa_required NPA is required.
nxx_required NXX is required.
options_invalid Options are invalid.
password_invalid Password is invalid.
password_mismatch The password verification did not match.
password_required Password is required.
peer_required Peer is required.
peer_timeout_invalid Peer ring timeout is invalid.
peer_timeout_required Peer ring timeout is required.
peers_to_ring_limit_reached Please choose a maximum of 5 peers.
phone_number_invalid Phone number is invalid.
request_type_invalid Request type is invalid.
request_type_not_implemented Request type is not implemented.
request_type_required Request type is required.
required_parameter_not_found Required parameters missing.
result_limit_invalid Result limit is invalid.
result_offset_invalid Result offset is invalid.
state_id_invalid State ID is invalid.
status_invalid Status is invalid.
status_required Status is required.
username_invalid Username is invalid.
username_required Username is required.

Dispatch Call

Error type Description
destination_invalid Destination is invalid.
destination_required Destination is required.
destination_type_invalid Destination type is invalid.
destination_type_required Destination type is required.
enable_recording_invalid Enable recording value is invalid.
global_callerid_name_undefined Global caller ID name is not defined.
max_retries_invalid Maximum retries is invalid.
retry_delay_invalid Retry delay is invalid.
socket_error A socket error occured.
source_invalid Source is invalid.
source_required Source is required.
source_type_invalid Source type is invalid.
source_type_required Source type is required.
wait_time_invalid Wait time is invalid.

Get Calls

Error type Description
direction_invalid Direction is invalid.
call_hash_invalid Call Hash is invalid.

Get Calls Rates

Error type Description
code_invalid Code is invalid.
search_parameters_required Search parameters are required.

Report Call Issue

Error type Description
call_hash_invalid Call Hash is invalid.
call_issue_id_invalid Call Issue ID is invalid.

Get Recordings

Error type Description
call_hash_invalid Call hash is invalid.
call_recording_id_invalid Call recording id is invalid.
recording_hash_invalid Recording hash is invalid.

Process Payment

Error type Description
amount_invalid Amount is invalid.
amount_required Amount is required.
bank_account_number_invalid Bank account number is invalid.
bank_account_number_required Bank account number is required.
bank_account_type_invalid Bank account type is invalid.
bank_account_type_required Bank account type is required.
bank_name_invalid Bank name is invalid.
bank_name_required Bank name is required.
bank_routing_number_invalid Bank routing number is invalid.
bank_routing_number_required Bank routing number is required.
billing_contact_not_found Account's billing contact could not be found.
credit_card_cvd_invalid The credit card CVD number is invalid.
credit_card_cvd_required The credit card CVD number is required.
credit_card_expiration_month_invalid The credit card expiration month is invalid.
credit_card_expiration_month_required The credit card expiration month is required.
credit_card_type_invalid The credit card type is invalid.
credit_card_type_required The credit card type is required.
credit_card_expiration_year_invalid The credit card expiration year is invalid.
credit_card_expiration_year_required The credit card expiration year is required.
credit_card_number_invalid The credit card number is invalid.
credit_card_number_required The credit card number is required.
currency_invalid Currency is invalid.
currency_not_supported Currency is not supported for given type of payment.
currency_required Currency is required.
minimum_amount_required The minimum amount is not met.
payment_attempt_failed Payment attempt has failed.
payment_denied Payment denied.
payment_method_invalid Payment method is invalid.
payment_method_required Payment method is required.

Update DID

Error type Description
forward_number_used_by_did Forward number already in use.

Update Extension

Error type Description
extension_already_in_use Extension is already in use.
extension_invalid Extension is invalid.
extension_required Extension is required.

Update Mailbox

Error type Description
default_mailbox_dependency You cannot disable this mailbox because it is set as default.
mailbox_did_dependency You cannot disable this mailbox because it is associated to a DID number.
passcode_invalid Passcode is invalid.
passcode_required Passcode is required.
voice_mailboxes_limit_reached Voice mailboxes limit is reached.

Update Peer

Error type Description
callerid_mode_invalid Caller ID mode is invalid.
callerid_mode_required Caller ID mode is required.
codecs_invalid Codecs are invalid.
codecs_required Codecs are required.
default_ip_invalid Default IP is invalid.
dtmf_invalid The dtmf mode is invalid.
global_callerid_infos_undefined Global caller ID settings are not defined.
host_type_invalid Host type is invalid.
host_type_required Host type is required.
peer_did_dependency You cannot disable this peer because it is associated to a DID number.
peer_excluded_from_sync This peer is currently excluded from synchronization and changes will not affect live configuration.
peer_exist The username is already in use.
peers_limit_reached Peers limit is reached.
type_invalid The peer protocol is invalid.

e911 Errors

Error type Description
alternate_address_provided Alternate Address is Provided.
client_endpoint_id_not_found Client Endpoint ID Not Found.
client_peer_id_not_found Client Peer ID Not Found.
client_did_id_not_found Client DID ID Not Found.
phone_number_not_found Phone Number Not Foudn.
no_e911_endpoint_found Number is not provisioned.
no_e911_endpoint_found Number is not provisioned.
civic_number_not_found Civic number not found.
street_not_found Street not found.
city_not_found City not found.
state_not_found State not found.
country_not_found Country not found.
first_name_not_found First name not found.
last_name_not_found Last name not found.
postal_code_not_found Postal Code not found.
last_endpoint_was_deleted The last endpoint was deleted. Any calls to 911 after this notice and before another DID is provisionned will be billed an E911 unprovision fee in your account.
entry_is_default_endpoint The endpoint is currently the default endpoint for the account. Set the default to another one before deleting this one.

Order new dids

Error type Description
prefix_required No prefix nor ratecenter id was given.
prefix_invalid Prefix is not valid.
ratecenter_id_invalid Ratecenter id is not valid.
type_invalid Type must be either "local" or "international".
quantity_required Quantity is required.
quantity_invalid Quantity must be a number above 0 and under 1000.
prefix_preference_invalid Preference must be either "in_ratecenter" or "prefix_only".
sequential_invalid Preference must be either "random" or "sequential".
t38_support_invalid Preference must be either "optional" or "required".
capacity_invalid Preference must be either "1-5", "5-25" or "25+".
prefix_not_found Could not find the prefix in our database.
ratecenter_id_not_found Could not find the ratecenter id in our database.
could_not_send An error occurred while trying to send the request, please contact us.

Api Metadata

Metadata update (input)

Metadata can be submitted as serialized_metadata or raw_metadata.

ParameterType ?RequirementDescription
serialized_metadataserialized arrayOptionalValue must be a valid array converted to a serialized string (using php's serialize).
(default is NULL)
raw_metadatastringOptionalValue can be anything and will be returned as such [JSON Format is preferred].
(default is NULL)

Applicable request types: update_did, update_peer, update_mailbox, update_extension, update_subaccount, update_port_request.

Retreive metadata (output)

Metadata is output in the main <metadata> tag.
Any data in the metadata field of the entry will be returned as CDATA under the <raw_metadata> tag.
If the data was supplied as an array, or pair of attributes (also called Name-Value Pairs), it will be returned as an XML tree under the <metadata_attributes> tag with an attribute_count property.

Sample response
Sample response
Applicable request types: get_dids, get_peers, get_mailboxes, get_extensions, get_fax_profiles, get_sms_profiles, get_subaccounts, get_port_requests.

Changelog

2026-07-06

  • Updated: update_fax_profile added new option force_cover_page - Requires a cover page when sending faxes via the client Send Fax app. Requires option enable_cover_page to be selected.

2026-07-01

  • Added : API now supports the get_pricing request type
  • Added : API now supports the get_reseller_pricing request type

2026-06-30

  • Added : API now supports the get_invoices request type

2026-05-28

  • Modified : get_network_status now returns a data node inside each event_details, containing data_entry elements with type, datetime, and description fields.
  • Modified : get_network_status removed unused solution field from response.

2026-05-19

  • Updated: update_sms_profile added new parameter callback_subtype - Specifies which SMS event types trigger the webhook callback. Required when option enable_callback is selected. Accepted values: inbound_success, outbound_success, outbound_failed, delivered.
  • Updated: update_did added new parameter sms_callback_subtype - Specifies which SMS event types trigger the DID-level SMS callback. Required when option enable_sms_callback is set. Accepted values: inbound_success, outbound_success, outbound_failed, delivered.

2026-04-01

  • Added: update_reseller_transaction - New request type for adding or modifying reseller transaction.

2026-01-05

  • Added: queue_sms now supports multi-recipient SMS - Pass destination_number as an array to send to multiple recipients in a single request. Each recipient receives an individual SMS message with per-recipient error tracking and a type-safe response structure.

2025-10-29

  • Updated: get_subaccounts added new parameter for : custom_id - Allows filtering subaccounts by custom identifier

2025-10-21

  • Added: get_file - New request type for secure file retrieval using token-based authentication. Allows direct streaming of file content with appropriate headers for various file types including PDFs, images, audio files, and other documents.

2025-10-01

  • Updated : update_did added new parameter for : special_attributes
  • Updated : get_dids added new parameter for : special_attributes

2025-09-26

  • Added: simulate_response - New request type for testing different API response scenarios including success, failures, timeouts, server errors, rate limiting, unauthorized access, and maintenance mode. Useful for testing error handling and various edge cases without affecting real data.

2025-09-15

  • Added: queue_message - New request type for sending email messages to custom recipients using predefined message templates with personalization tokens

2025-06-04

  • Updated : get_recordings added new parameter for : client_subaccount_id

2025-03-03

  • Added : API now implements the get_3cx_calls request type

2025-01-21

  • Added : API now supports the get_resellers_clients_plans request type

2024-12-20

  • Added : API now supports the get_city_codes request type

2024-12-03

  • Updated : get_new_dids now return prices for Consumers.
  • Added : update_e911 added city_code parameter.

2024-09-20

  • Updated : update_peer added missing internal_cid_mode argument.
  • Updated : update_peer added missing internal_cid_name argument.
  • Updated : update_peer added missing internal_cid_number argument.

2024-05-02

  • Updated : update_peer added new parameter for : preserve_missing_data

2024-04-08

  • Added : API now supports the delete_ivr_profiles request type

2024-04-05

  • Added : API now supports the delete_subaccount request type

2024-02-23

  • Modified : get_dids now returns client_mailbox_id
  • Modified : get_dids now returns client_fax_profile_id
  • Modified : get_dids now returns enable_voicemail
  • Modified : get_dids now returns dnis_rewrite
  • Modified : get_dids now returns announce_media_file_id
  • Modified : get_dids now returns send_dtmf
  • Modified : get_dids now returns bridge_uri
  • Modified : get_dids now returns client_conference_profile_id
  • Modified : get_dids now returns ondemand_recording
  • Modified : get_dids now returns confirm_media_file_id
  • Modified : get_dids now returns sms_autoreply_message
  • Added : get_dids added client_mailbox_id parameter.
  • Added : get_dids added announce_media_file_id parameter.
  • Added : get_dids added bridge_uri parameter.
  • Added : get_dids added client_conference_profile_id parameter.
  • Added : get_dids added enable_fax parameter.
  • Added : get_dids added ondemand_recording parameter.
  • Added : get_dids added client_fax_profile_id parameter.
  • Added : get_dids added dnis_rewrite parameter.
  • Added : get_dids added enable_voicemail parameter.
  • Added : get_dids added confirm_media_file_id parameter.
  • Added : get_dids added sms_dnis_rewrite parameter.
  • Added : get_dids added usage_type parameter.
  • Added : get_dids added playback_media_file_id parameter.
  • Added : get_dids added sms_autoreply_message parameter.
  • Added : get_dids added recording_notify_recipient_name parameter.
  • Added : get_dids added recording_notify_recipient_email parameter.
  • Added : get_dids added peer_failover_causes parameter.
  • Added : get_dids added sip_response parameter.
  • Added : get_dids added exclude_e411_list parameter.
  • Added : get_dids added exclude_e911_list parameter.
  • Added : get_dids added client_moh_profile_id parameter.
  • Added : update_did added type parameter.
  • Added : update_did added usage_type parameter.
  • Added : update_did added recording_notify_recipient_name parameter.
  • Added : update_did added recording_notify_recipient_email parameter.
  • Added : update_did added peer_failover_causes parameter.
  • Added : update_did added pickup_group_ids parameter.
  • Added : update_did added sms_dnis_rewrite parameter.
  • Added : update_did added exclude_e411_list parameter.
  • Added : update_did added exclude_e911_list parameter.

2024-01-30

  • Added : New request type get_3cx_servers has been added.
  • Added : New request type update_3cx_server has been added.
  • Added : New request type delete_3cx_server has been added.

2024-01-18

  • Updated : update_queue_agent added missing client_schedule_id argument.
  • Fixed : queue_status was replaced with correct agent_status argument in update_queue_agent.

2023-12-18

  • Updated : update_extension added dnis_rewrite argument.

2023-12-08

  • Updated : update_e911 rate_provider_id parameter is now available to set desired provider if has access.

2023-08-28

  • Updated : update_peer username parameter is now deprecated in favor of peer_username.

2023-06-20

  • Updated : update_call_director_profile added new parameter for : preserve_missing_data

2023-06-15

  • Updated : API now supports being passed argument using JSON body in POST. "Content Type" header must be "application/json" for this method to work.

2023-03-20

  • Added : API now supports fetching Text-to-Speech (TTS) voices with get_tts_voice_name request type
  • Added : API now supports setting a new/existing media as a mailbox greeting with update_mailbox_greeting request type

2023-02-20

  • Added : API now supports fetching (Phone) Devices with get_devices request type
  • Added : API now supports fetching Device Endpoints (Autoprovision) with get_device_endpoints request type
  • Added : API now supports deleting a Device Endpoint (Autoprovision) with delete_device_endpoint request type
  • Added : API now supports creating/updating a Device Endpoint (Autoprovision) with update_device_endpoint request type

2023-02-07

  • Added : API now supports fetching media files with get_media_files request type

2023-01-31

  • Updated : 'voicemail_broadcast' added new parameter 'privacy' to enable privacy on outgoing call.

2023-01-23

  • Updated : 'get_calls' added new parameter 'routing_details' to add more details for source and destination.

2022-12-20

  • Added : API now supports deleting SMS profiles with the delete_sms_profile request type
  • Added : API now supports deleting SMS with the delete_sms request type

2022-11-01

  • Updated : update_subaccount added new parameter for : require_international_nip
  • Updated : update_subaccount added new parameter for : international_nip
  • Updated : get_subaccounts added new return value : require_international_nip
  • Updated : get_subaccounts added new return value : international_nip

2022-09-07

  • Fixed : output_format=json should return data for nested JSON rather than JSON string.

2022-08-08

  • Updated : get_dids added new parameter status for : getDids

2022-06-10

  • Added : API now supports the get_schedules request type

2022-02-07

  • Fixed : type filter and subaccount filter forget_sms_stats

2022-02-01

  • Added : API now supports the get_storage_stats request type

2022-01-14

  • Updated : update_did added new parameter for : preserve_missing_data

2021-11-02

  • Updated : update_port_request added all parameters from client section.

2021-10-25

  • Added : API now has metadata in get_port_requests
  • Added : API now supports the update_port_request request type

2021-10-15

  • Added : API now supports the get_ivr_profiles request type
  • Added : API now supports the update_ivr_profiles request type

2021-10-06

  • Updated : update_queue_agent added new parameter for : conditions_data
  • Updated : update_queue_agent added new parameter for : purge_conditions

2021-09-20

  • Updated : dispatch_call added new parameter for : client_subaccount_id
  • Updated : dispatch_call added new parameters for : sources[] and destinations[]

2021-05-28

  • Added : API now supports the get_queue_agents request type
  • Added : API now supports the update_queue_agent request type

2021-05-14

  • Added : API now supports the get_queues request type
  • Added : API now supports the update_queue request type

2021-04-12

  • Fixed : update_fax_profile parameter retry_limit was made mandatory by accident. It now has it's previous behavior of default 2.

2021-03-15

  • Updated : order_new_dids added new ranges for : capacity

2021-03-01

  • Updated : update_subaccount added new parameter : voice_language, notification_language, callerid_name, callerid_number, client_moh_profile_id, default_provisioned_endpoint_id and options.
  • Updated : get_subaccounts now includes voice_language, notification_language, callerid_name, callerid_number, client_moh_profile_id, default_provisioned_endpoint_id and options values.

2021-01-18

  • Updated : update_peer added new parameter : simultaneous_calls_limit.
  • Updated : get_peers now includes simultaneous_calls_limit value.
  • Updated : update_did added new parameter : simultaneous_calls_limit.
  • Updated : get_dids now includes simultaneous_calls_limit value.

2020-12-22

  • Modified : get_sms now has following new search parameters: source_number, destination_number
  • Added : API now supports the get_request_types request type

2020-11-24

  • Modified : update_peer added new parameter : transport.
  • Modified : get_peers now includes transport value.

2020-10-23

  • Added : API now supports the get_call_issues request type
  • Added : API now supports the report_call_issues request type

2020-10-13

  • Modified : get_peers now includes last time it was successfully registered: datetime_registered

2020-10-09

  • Added : update_fax_profiles added new parameters : callback_url, backup_url and option now has enable_callback.

2020-10-07

  • Added : API now supports the delete_mailbox request type

2020-10-05

  • Modified : get_resellers_invoices now has following new search parameters: reseller_invoice_id

2020-09-23

  • Added : API now supports the get_resellers_transactions request type

2020-08-24

  • Added : API now supports deleting fax profiles with the delete_fax_profile request type

2020-08-18

  • Added : API now supports adding and updating fax profiles with the update_fax_profile request type

2020-08-13

  • Modified : get_extensions now has following new search parameters: client_subaccount_id
  • Modified : get_extensions now returns client_account_id and client_subaccount_id

2020-08-13

  • Modified : get_sms_profiles now returns backup_url
  • Modified : set_sms_profiles now supports backup_url

2020-08-03

  • Added : documentation for get_resellers_transactions request type.

2020-06-17

  • Added : API now supports providing "routing_type" with get_calls request type
  • Fixed : get_calls was not properly taking "results_limit" now return if get_associations is set to 1 the client_mailbox_ids

2020-06-01

  • Added : API now supports setting client_queue_ids with update_did request type
  • Added : API now supports setting client_queue_ids with update_extension request type
  • Modified : get_dids now returns client_queue_ids
  • Modified : get_extensions now returns client_queue_ids

2020-05-21

  • Modified : API now accepts results limit up to 25,000 entries. Keep in mind that those queries can take more time to return content.
  • Modified : get_call_faxes now returns the client_subaccount_id in fax_details and can be searched on it
  • Modified : get_call_faxes now has following new search parameters: date_from, date_to, client_fax_profile_id

2020-05-19

  • Added : API now supports setting client_subaccount_id with update_call_director_profile request type
  • Modified : get_call_director_profiles now returns the client_subaccount_id in call_director_profiles and can be searched on it

2019-12-02

  • Added : API now supports setting client_subaccount_id with update_extension request type
  • Added : API now supports setting enable_parking with update_extension request type

2019-08-16

  • Added : API now supports adding and updating whitepages (411) listings with update_whitepages request type
  • Added : API now supports deleting whitepages (411) listings with delete_whitepages request type

2019-07-08

  • Modified : get_subaccounts now return if get_associations is set to 1 the client_mailbox_ids
  • Modified : update_subaccount_associations now can update associated_mailboxes
  • Modified : get_mailboxes now returns the client_subaccount_id in the mailbox_details
  • Modified : update_mailbox now updates the client_subaccount_id
  • Modified : get_voicemails now returns the client_subaccount_id in the voicemail_details and can be searched on it

2019-06-06

  • Added : API now supports getting list of sms profiles with get_sms_profiles request type and update it with update_sms_profile
  • Modified : get_dids and update_did to have the client_sms_profile_id

2019-05-30

  • Added : documentation for webhooks

2019-05-15

  • Added : API now supports getting list of port requests with get_port_requests request type

2018-12-13

  • Added : API now supports getting list of available proxies with get_proxies request type

2018-11-28

  • Modified : get_sms added new parameters : client_subaccount_id.

2018-11-22

  • Added : API now supports getting sms statistics with get_sms_stats request type

2018-11-14

  • Added : API now supports getting whitepages (411) using get_whitepages
  • Added : API now supports DID lookup using did_lookup
  • Added : API now supports updating Fax Profiles -> Sub-Account associations with update_subaccount_associations request type
  • Added : API now supports filtering on client_subaccount_id for get_fax_profiles
  • Modified : get_plans added plan_id parameter and plan_groups_id parameter.

2018-10-11

  • Added : API now supports deleting peers using delete_peers
  • Added : API now supports creating peers using update_peers and the mode parameter.
  • Modified : get_peers added status, port, proxy_id, host_type, client_mailbox_id, comments to output.
  • Modified : update_peers added port parameter.

2018-10-04

  • Modified : get_subaccounts added status parameter.
  • Modified : get_subaccounts added get_associations parameter.
  • Modified : get_subaccounts removed get_peers_details parameter.
  • Modified : get_subaccounts removed get_dids_details parameter.
  • Added : API now supports updating Peers, Dids, Extensions -> Sub-Account associations with update_subaccount_associations request type
  • Added : API now supports updating Sub-Account with update_subaccount request type
  • Added : API now supports updating Sub-Account address with update_subaccount_address request type

2018-09-25

  • Modified : get_e911 added 3 new parameters : client_subaccount_id, result_limit and result_offset.

2018-09-19

  • Added : API now supports getting calls statistic with get_calls_stats request type

2018-09-12

  • Modified : get_dids added ported_in and special_attributes elements.

2018-09-04

  • Modified : get_subaccounts added get_peers_details parameter.
  • Modified : get_subaccounts added get_dids_details parameter.

2018-08-21

  • Modified : documentation of our new hourly limitation for the API
  • Modified : hourly limitation for the API will trigger notice when exceeding limits, before cutoff.
  • Added : new request per minute limitations implemented.
  • Added : documentation for experimental voicemail_broadcast request type.

2018-08-14

  • Added : get_subaccounts new request type to get Sub-Accounts and details.

2018-07-26

  • Modified : update_peer added dnis_format argument.
  • Modified : get_peers added dnis_mode and dnis_format to returned values.

2018-05-24

  • Added : update_peer added smart value to the argument callerid_mode.
  • Added : update_peer added client_callerid_profile_id argument.

2018-05-09

  • Modified : update_peer added dnis_mode argument.
  • Modified : update_peer enable_dnis is now deprecated in favor of dnis_mode. Original fields will keep working and will set dnis_mode to forced.
  • Modified : get_peers added e911 to api return.

2018-03-26

  • Modified : queue_fax added page_format argument.
  • Modified : get_fax_profiles now returns 'page_format'.

2018-03-13

  • Modified : update_peer now accepts 'on_test' for argument notify_callback_triggers.
  • Modified : update_did now accepts 'on_test' for argument notify_callback_triggers.

2018-01-09

  • Modified : queue_sms now accepts up to 1000 character for message. Depending on carrier message may be split into multiple 160 character SMS.
  • Modified : get_sms now returns segment quantity (for billing purpose).

2017-12-19

  • Added : documentation of our new hourly limitation for the API.

2017-11-22

  • Modified : update_did added enable_sms_autoreply option and sms_autoreply_message argument.

2017-10-23

  • Modified : get_network_status added mode argument.

2017-09-11

  • Modified : get_recordings added latest_hours argument.
  • Modified : get_calls added latest_hours argument.

2017-09-01

  • Modified : order_new_dids added mms_supported argument.
  • Modified : get_dids added attachment_size (in bytes) to api return.
  • Modified : get_dids added mms_support argument and added mms_support to api return.

2017-08-22

  • Modified : queue_sms MMS is now supported you must post a file as attachments (support for multiple files coming soon).

2017-08-16

  • Modified : update_did sms_notify_email, sms_forward_number, sms_callback_url, notify_callback_triggers, notify_callback_url now are optionally required when their option are selected.

2017-08-02

  • Modified : update_did notify_callback_url has extra validation. A test hit will be made and expect an HTTP code 200.
  • Modified : update_peer notify_callback_url has extra validation. A test hit will be made and expect an HTTP code 200.
  • Added : update_did added voice_language parameter.
  • Added : update_extensions added voice_language parameter.
  • Added : get_dids now returns extra fields for voice_language.
  • Added : get_extension now returns extra fields for voice_language.

2017-07-31

  • Added : get_dids new returned values : peer_contact_mode.
  • Modified : update_did asynchronous_peer_hunt option is now removed in favor of peer_contact_mode.

2017-07-24

  • Added : update_call_director_profile added announce_media_file_id parameter and the announce_caller option.
  • Added : update_did added announce_media_file_id parameter and the announce_caller option.
  • Added : update_extensions added announce_media_file_id parameter and the announce_caller option.

2017-07-17

  • Added : get_call_director_profile now returns extra fields for usage_type "forward".

2017-07-12

  • Added : update_call_director_profile new request type to modify/create Call director profiles.
  • Added : delete_call_director_profile new request type to delete Call director profiles.

2017-07-10

  • Deprecated : get_calls Deprecated unique_id in favor of call_hash.
  • Deprecated : report_call_issue Deprecated unique_id in favor of call_hash.

2017-07-10

  • Added : update_dids Added multiple options to allow for newer functions of DIDs to be set via the api. Options added are : { "asynchronous_peer_hunt","enable_uri","enable_georedundancy","force_ring_signal","discard_redirect","confirm_required","enable_filtering","enable_director" }.
  • Added : update_dids Added multiple fields to allow for newer functions of DIDs to be set via the api. Fields added are : { "client_conference_profile_id","confirm_media_file_id","bridge_uri","client_director_profile_id","send_dtmf" }.
  • Removed : update_dids Removed the deprecated "enable_forwarding", "enable_voicemail", "enable_peer" and "enable_recording" fields as they are now options.

2017-05-12

  • Added : update_did added notification_callback_url, notification_callback_triggers parameters and the enable_notify_callback option.
  • Added : update_peer added notification_callback_url, notification_callback_triggers and enable_notify_callback parameters.

2017-05-12

  • Added : get_calls 10 new fields returned if argument extras is set to yes.

2017-05-04

  • Modified : update_e911 first_name and last_name are now deprecated in favor of full_name. Original fields will keep working but they cannot exceed more than 32 characters when combined.
  • Modified : get_e911 first_name and last_name are now deprecated in favor of full_name. Original fields will keep working based on a split on full_name using the last space found.

2017-04-10

  • Added : update_e911 new fields e911_language to replace the language. Previous field conflicted with the global language argument.

2017-03-31

  • Added : get_sms returns new field client_did_id.
  • Added : get_fax_profiles returns new field client_account_id.

2017-01-30

  • Added : queue_sms new values : retry_limit.

2016-11-29

  • Added : get_account_details new returned values : Sub-Accounts details.

2016-11-29

  • Added : get_peers new filters and returned values : client_subaccount_id and client_filter_ids.
  • Added : get_dids new filters and returned values : client_subaccount_id and client_filter_ids.
  • Added : get_calls new filters and returned values : client_subaccount_id and client_filter_ids.
  • Added : update_dids new fields : client_subaccount_id and client_filter_ids.
  • Added : update_peers new fields : client_subaccount_id and client_filter_ids.

2016-11-28

  • Added : get_channels allows you list all your current channels.
  • Added : update_channel allows you to update your channels.
  • Added : delete_channel allows you to delete your channels.

2016-11-21

  • Added : get_new_dids now returns a new field : cancellation_fees.
  • Added : activate_new_did now returns a new field : cancellation_fees.
  • Added : delete_did now returns two new messages : deleted_entry (client_did_id) and cancellation_fees.

2016-10-19

  • Added : get_peers now returns two new field : callerid_type, callerid_format.
  • Added : update_peer now supports two new arguments: callerid_type, callerid_format.

2016-10-17

  • Added : get_did_exchanges now returns four new field : fax_supported, sms_supported, fax_since, sms_since.

2016-10-14

  • Added : activate_new_did now returns two new fields : price_mrc and price_nrc.
  • Added : get_new_dids now returns two new fields : price_mrc and price_nrc.
  • Added : get_did_exchanges now returns one new field : price_mrc.

2016-10-12

  • Added : get_dids now has 6 new filters : ratecenter_id, district, state_id, country_id, options, client_peer_id.
  • Modified : get_dids will now only return active dids or the ones in the redemption process ( recently deleted ).

2016-10-04

  • Added : get_dids now has a new fax_support, sms_support, npa and nxx filters.
  • Modified : get_dids now returns sms_support and fax_support for each matched did.

2016-08-22

  • Added : get_new_dids now has a new fax_support option to allow ordering of Fax/t38 compatible numbers.
  • Modified : get_new_dids now filters on sms_support. It previously silently failed.
  • Modified : get_new_dids now returns sms_support and fax_support for each matched did.

2016-08-15

  • Modified : order_new_dids now has a different syntax for the t38_support option to better match other api methods.
  • Added : order_new_dids now has a new sms_support option to allow ordering of SMS compatible numbers.

2016-02-26

  • Modified : get_did now returns the forward number, email notification and callback url fields.

2016-02-01

  • Modified : update_did now supports 5 new options and 3 new fields related to SMS features.

2016-01-19

  • Modified : API now supports getting SMS with get_sms request type

2015-11-09

  • Modified : API now supports sending SMS with queue_sms request type (*requires DID with SMS support)

2015-06-15

  • Update : The API now forces SSL connexions over HTTPS. All traffic will be redirected from HTTP.

2015-06-01

  • Update : SSL connexions must now use TLS 1.2 or greater

2015-05-07

  • Update : updated security measures

2015-04-21

  • Added : delete_did is a new request_type

2015-04-17

  • Added : update_did has a new argument callerid_name_rewrite
  • Added : update_did has a new argument callerid_number_rewrite

2015-04-01

  • Added : get_new_dids has a new argument district
  • Added : activate_new_did has a new argument skip_notification
  • Added : get_new_dids has a new argument order
  • Added : get_new_dids has a new argument state_id

2015-03-30

  • Added : get_new_dids has a new argument included_patterns

2015-02-25

  • Modified : Core lib for did will not accept 0 as a valid media file id anymore

2015-02-24

  • Modified : get_e911 will only return active e911 provisions

2015-02-18

  • Modified : get_calls return to include billed_duration which was previously matched to billsec now both fields are returned

2015-02-09

  • Modified : API now supports e911 custom phone_numbers that are not actual dids in the client account (*requires activation of option by administration)
Table of Contents