Mostly inbound calls?
Choose a low-cost monthly licence fee and simply pay as you go for the calls you make
Outbound calls to different places?
Get 2,000 outbound minutes per user/ month and one inbound number per user
Covers international calls to over 45 countries including:
Here the functions of the VoIPstudio API are described, which will give you access to all basic VoIPstudio resources.
The REST API enables VoIPstudio customers access to a wide range of resources. Our API has predictable, resource-orientated URLs, and uses HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. We support cross-origin resource sharing, allowing you to interact securely with our API from a client-side web application. JSON is returned by all API responses, including errors.
The base URL for the API id:
Authentication to the API is performed via HTTP Basic Auth. This type of authentication should be a straightforward operation in most popular programming languages. Incoming requests handled by our API are expected to have a Authorization
header with a base64 encoded value built from user_id
and user_token
returned from a successful "login" response, or user_id
and created API Key
. To get base64
value of Authorization
, Base64 encode your user_id
and user_token
separated by a colon.
Authorization
header is expected in the below format:
Authorization: Basic base64('user_id:user_token')
or
Authorization: Basic base64('user_id:API_Key')
Example of authenticated request:
using user_token
returned by POST /login
curl -H "Content-Type: application/json" -H "Authorization: Basic base64('user_id:user_token')" https://l7api.com/v1.1/voipstudio/cdrs
or using API_Key
curl -H "Content-Type: application/json" -H "Authorization: Basic base64('user_id:API_Key')" https://l7api.com/v1.1/voipstudio/cdrs
or short form using curl
parameter -u, --user <user:password>
:
curl -u user_id:user_token -H "Content-Type: application/json" https://l7api.com/v1.1/voipstudio/cdrs
or using API_Key
curl -u user_id:API_Key -H "Content-Type: application/json" https://l7api.com/v1.1/voipstudio/cdrs
VoIPstudio REST API uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 2xx range indicate success, codes in the 4xx range indicate an error that has failed given the information provided (e.g., a required parameter was omitted, etc.), and codes in the 5xx range indicate a server error.
Each successful response, depending on HTTP method, contains the following properties:
GET collection of resources:
data
- an array of resources datatotal
- total number of resourcesGET single resource:
data
- resources datalinks
- links to related resourcesEach error response contains the following properties:
message
- general error messageerrors
- an array of error messagesFor data collection endpoints such as GET https://l7api.com/v1.1/voipstudio/cdrs
pager can be used to return a specific number of records from a given page in the data set. To apply pager please append the following parameters to the URL ?page=N&limit=Z
where N
is a page number and Z
is the number of records to be returned (maximum 5000).
To filter data, the filter
parameter can be passed as a URL query string. The value of filter
parameter has to be JSON encoded string in the format shown below:
[ {"property":"_PROPERTY_NAME_","operator":"_OPERATOR_","value":"_SEARCH_VALUE_"}, {"property":"_PROPERTY_NAME_","operator":"_OPERATOR_","value":"_SEARCH_VALUE_"} ... ]
The three tokens above _PROPERTY_NAME_
, _OPERATOR_
and _VALUE_TO_SEARCH_
should be interpreted as below:
_PROPERTY_NAME_
this can be any property that belongs to particular endpoint object. See "Resources" section below for detailed explanation of data model for each endpoint.
_OPERATOR_
can be one of:
eq
or =
when looking for records with "property" value equal to _SEARCH_VALUE_
ne
, neq
, <>
or !=
when looking for records with "property" value NOT equal to _SEARCH_VALUE_
lt
or <
when looking for records with "property" value less than _SEARCH_VALUE_
lte
or <=
when looking for records with "property" value less than or equal _SEARCH_VALUE_
gt
or >
when looking for records with "property" value greater than _SEARCH_VALUE_
gte
or >=
when looking for records with "property" value greater than or equal _SEARCH_VALUE_
in
when looking for records with "property" value included in _SEARCH_VALUE_
(Note: search value needs to be passed as an array, eg: [ "foo", "bar" ]
)like
when looking for records with "property" value matching pattern of _SEARCH_VALUE_
notlike
when looking for records with "property" value NOT matching pattern of _SEARCH_VALUE_
_SEARCH_VALUE_
the value you want to search for
Example of request to /cdrs
endpoint searching for incoming calls (dst_id
property equals user Id) to user Id 123456
after 1st Sep. 2018:
curl -u user_id:API_Key -H "Content-Type: application/json" https://l7api.com/v1.1/voipstudio/cdrs?filter=[ {"property":"dst_id","operator":"eq","value":"123456"}, {"property":"calldate","operator":"gt","value":"2018-09-01 00:00:00"} ]
group_by
parameter is available for grouping records by specific property: ``GET https://l7api.com/v1.1/voipstudio/cdrs?group_by=src`. This parameter should be passed as URL query string.
Start a free 30 day trial now, no credit card details are needed!
Thousands of businesses across the world trust VoIPstudio for all of their most vital business communications. Why not be the next?
Thousands of businesses across the world trust VoIPstudio for all of their most vital business communications. Why not be the next?
Start a free 30 day trial now, no credit card details are needed!