Getting Started with the Restcomm Management APIs
Restcomm’s Management APIs help CSPs stay at the top of their business by providing all the tools they need to monitor and manage their enterprise customer accounts, applications, phone numbers, notifications and usage statistics. Service providers can also administer their own Restcomm organization, segment existing accounts, and provision Restcomm functionalities under a custom domain name.
The Management APIs are implemented on the top of the HTTP protocol and can be used with a programming language of choice.
Restcomm Management APIs support the following capabilities:
HTTPS and basic authentication
HTTP GET, POST, PUT and DELETE requests
XML or JSON responses
GET: Lists or reads objects and includes the information needed to perform any Read operations on the object. Sample use: list all of the applications under your Restcomm account.
POST/PUT: Creates or updates objects. Most requests using the POST/PUT method require JSON/XML in the request body. Sample use: modify a Client under your Restcomm account.
DELETE: Removes objects. Sample use: delete an application or client under your Restcomm account.
Restcomm Management APIs use basic HTTP authentication to restrict access to API endpoints to authenticated users only. After you sign up with Restcomm, you can find your Account SID and Auth Token by navigating to Your Profile → Account in the Restcomm Console.
You then need to use these credentials in your request’s Authorization header using Basic authentication type (i.e. Authorization: Basic <base64-encoded AccountSID:AuthToken>). Here’s how you would use an HTTP client to authenticate with Restcomm:
curl -X GET https://mycompany.restcomm.com/restcomm/2012-04-24/Accounts/ACCOUNT_SID.json?PageSize=1 \ -u 'YourAccountSid:YourAuthToken'
API resources are accessed via HTTPS requests utilizing UTF-8 format. Data passed to the API through POST and PUT requests should use urlencoded format (i.e. Content-Type: application/x-www-form-urlencoded).
Restcomm can return its API responses either in .json or .xml format depending on the suffix of the URL the request was made on. For example, a request sent to
will yield a .json response, while a request sent to
wlparam:replace[text="https://$DOMAIN/restcomm/2012-04-24/Accounts/ACCOUNT_SID/Calls.xml will yield an .xml response.
Some Management APIs support pagination by accepting as query parameters the page number we interested in as well as the page size. The following query parameters are supported:
Which page of SMS records to return, starting from 0.
Number of records returned per page.
For example, the following request will return the first page of results with a size of 10 items:
curl -X GET https://mycompany.restcomm.com/restcomm/2012-04-24/Accounts/ACCOUNT_SID/SMS/Messages.json?Page=0&PageSize=10 \ -u 'YourAccountSid:YourAuthToken'