The Voximplant Management API provides control of Voximplant accounts and services. You can use it to integrate with service side applications for management of phone numbers, calling, messaging, billing, logs, call records, user access, and more. The Management API includes an HTTP interface and many client library options for most popular programming languages for easy use.
The Control API allows you to:
- Start scenarios/conferences programmatically
- Control active VoxEngine sessions and exchange information with them
The Provisioning API allows you to:
- Create and edit Voximplant accounts, as well as child accounts
- Create and edit service accounts (including managing their permissions)
- Edit Voximplant applications, users, and rules
- Start execution of existed Voximplant scenarios
- Exchange data with active Voximplant sessions
The Phone Number API handles manipulations related to phone numbers, caller IDs, and SIP registrations, as follows:
- Purchase numbers, activate them and bind to applications
- Check if numbers support SMS; if so, enable receiving and sending SMS
- Manage SIP registrations
- Check call history or download it as CSV
See the entire tree of methods in the API reference.
The SDK needs to connect to the cloud and login via Voximplant user credentials.
You can create users manually via the control panel or programmatically via the HTTP API.
Here are the methods to call via API to create/delete/get users, etc:
- AddUser – adds a new user.
- DelUser – deletes the specified user(s).
- GetUsers – shows the users of the specified account.
- SetUserInfo – edits the user.
- TransferMoneyToUser – transfers the account's money to the user or transfer the user's money to the account if the money amount is negative.
Here is an example of an addUser request (follow the method links to find the other requests):
Voximplant requires fully-qualified credentials to select which application handles the call. A login attempt fails if the user is not assigned to the specified application in the Voximplant control panel.
This is how you should log in on the example of the Web SDK:
To manage ChildAccounts, read the ChildAccounts article.
Find the rule identifier in the Routing section inside each particular application:
The media_session_access_url is returned in response to let developer control the created session. When developer makes a HTTP request to media_session_access_url, the AppEvents.HttpRequest event is triggered in the scenario. A developer can process it and return some data right away or use httpRequest to notify an external webservice about some event that can happen later.
All modern languages let a developer make HTTP requests and handle HTTP responses, but now there is no need to create your own wrappers for our API, just use the API client libraries which ensure you are using the API in the best supported manner. The API libraries speed up the development and let developers focus on the high-level aspects of their work instead of taking care of the low-level details of requests/responses.
Currently we have the following libraries:
Although the API libraries differ from each other, some of the prerequisites are common for them. To use any of our libraries, you need the following:
A service account to grant access to Management API on behalf of your main account
Specific prerequisites along with usage nuances for each particular library are described in the corresponding GitHub README files.