***

title: Management API
subtitle: Control applications, numbers, sessions, and account resources through the Management API
---------------------

For a complete documentation index, fetch https://docs.voximplant.ai/llms.txt

**Management API** enables you to perform most [control panel](https://manage.voximplant.com/) operations using **API requests**.

To use management API, you need a [service account](https://manage.voximplant.com/settings/service_accounts). You can manage service account permissions by assigning roles. If a service account lacks assigned roles, it has limited access to basic Management API methods.

## What you can do with management API

With management API, you can perform the following tasks:

* Create and edit Voximplant accounts, including child accounts.
* Create and edit service accounts, including managing their permissions.
* Edit Voximplant applications, users, and rules.
* Execute existing Voximplant scenarios.
* Exchange data with active Voximplant sessions.
* Purchase numbers, activate them, and bind them to applications.
* Check if numbers support SMS; if so, enable receiving and sending SMS.
* Manage SIP registrations.
* View call history or download it as CSV.
* Start scenarios and conferences.
* Control active Voximplant sessions.
* Automate calls.

For more information about management API, refer to the [API Reference](https://voximplant.com/docs/references/httpapi).

## How to create a service account

To create a service account, follow these steps:

1. Log in to the [Voximplant control panel](https://manage.voximplant.com/).
2. Choose **Settings** from the main menu.
3. Choose **Service Accounts** in the side menu.

![Service accounts in the menu](https://files.buildwithfern.com/voximplant.docs.buildwithfern.com/cde39341a2a961e29e23849aeafc7c88da19b3ef33a4fe5d2e4bd26457e8b567/docs/assets/platform/voxengine/gettingstarted-basicconcepts-serviceaccounts-menu.png)

4. Then click **Add** in the upper right corner:

![Add a service account](https://files.buildwithfern.com/voximplant.docs.buildwithfern.com/ec8ff96415d26bb3e0df6275843ec6635662d6e96b5df58ac0d1d00618c89618/docs/assets/platform/voxengine/gettingstarted-basicconcepts-serviceaccounts-add.png)

5. This opens a **New service account** editor. Provide the necessary details, including roles and description where you are going to use this service account (optional):

![Specify roles](https://files.buildwithfern.com/voximplant.docs.buildwithfern.com/d3c7e761135422e155216edf930b7b5199121df7e4e6bd2650a33a9c2a6a388b/docs/assets/platform/voxengine/gettingstarted-basicconcepts-serviceaccounts-editor.png)

<Info title="Note">
  You can change roles after creating the service account.
</Info>

When you click **Generate key**, the editor will generate a JSON file and download it to your computer. This file contains your account ID, email, the generated key ID, and the private key used for [authorization with a JWT](/platform/management-api/authorization#json-web-token).

## Service account roles

Service account roles grant **additional permissions** to your service account. Without any role, only the following management API requests are available:

* [GetAccountInfo](https://voximplant.com/docs/references/httpapi/accounts#getaccountinfo)
* [GetResourcePrice](https://voximplant.com/docs/references/httpapi/accounts#getresourceprice)
* [GetSubscriptionPrice](https://voximplant.com/docs/references/httpapi/accounts#getsubscriptionprice)
* [GetActualPhoneNumberRegion](https://voximplant.com/docs/references/httpapi/phonenumbers#getactualphonenumberregion)
* [GetRecordStorages](https://voximplant.com/docs/references/httpapi/recordstorages#getrecordstorages)
* [GetRoles](https://voximplant.com/docs/references/httpapi/rolesystem#getroles)
* [SetSubUserInfo](https://voximplant.com/docs/references/httpapi/rolesystem#setsubuserinfo)
* [GetKeys](https://voximplant.com/docs/references/httpapi/rolesystem#getkeys)
* [CreateKey](https://voximplant.com/docs/references/httpapi/rolesystem#createkey)
* [UpdateKey](https://voximplant.com/docs/references/httpapi/rolesystem#updatekey)
* [DeleteKey](https://voximplant.com/docs/references/httpapi/rolesystem#deletekey)
* [GetKeyRoles](https://voximplant.com/docs/references/httpapi/rolesystem#getkeyroles)
* [SetKeyRoles](https://voximplant.com/docs/references/httpapi/rolesystem#setkeyroles)
* [RemoveKeyRoles](https://voximplant.com/docs/references/httpapi/rolesystem#removekeyroles)

To extend the number of available management API requests for a service account, add a role to it. You can add a role while creating a service account, or you can choose an existing account in the **Service accounts** list, click the three dots menu, and choose **Edit**:

![Edit an account](https://files.buildwithfern.com/voximplant.docs.buildwithfern.com/bba3337f542d0adc671e17f5865793c1cdf13115bffff4f60e38071a1aacfa50/docs/assets/platform/voxengine/gettingstarted-basicconcepts-serviceaccounts-edit.png)

This opens a service account editor. Click **Add role** and choose one or more roles, depending on the rights you need to provide to the service account:

![Add roles](https://files.buildwithfern.com/voximplant.docs.buildwithfern.com/a08502adddc693c2a256d99fadddd34d8a70c9e7cc29a255d707b56fef6cd37f/docs/assets/platform/voxengine/gettingstarted-basicconcepts-serviceaccounts-chooseroles.png)

After you click **Save**, the service account's permissions are updated.