Partner/Reseller API Overview

This page will help you get started with Partner / Reseller API.

This API provides all the functionality for external systems to headlessly provision and administer there reseller / partner account, allowing for fully automated setups. Functionality includes:

  • Provision and configure:
    • Accounts
    • Users
  • Role management
  • Credit allocation
  • Chargeable activity reports
  • Inbound number allocation

Our own administrative tools utilise the same API, therefore ensuring our APIs are fit for purpose and ready for enterprise volumes.

This section will cover off how to use the Reseller Services API

Key concepts

Account

This is a CPaaS account and all billing is collated at account level.

User

A user belongs to an account and is used to access the portal.

Role

A role defines a set of actions that a user can perform. We have a set of predefined roles that can be
applied to users, or to an account to allow all the users in that account to perform the actions.


Calling the service

Calling the Reseller Service methods using JSON is straightforward in most programming languages.

The service endpoint is https://services-cpaas.dotdigital.com/WebApi/ResellerService

To receive JSON responses please ensure you add the HTTP header, otherwise the service will return XML:
Accept: application/json

We recommend specifying a timeout of at least 130 seconds to ensure you always receive a response from our servers. This allows for our internal timeout of 125 seconds plus a 5 second allowance for network and protocol overheads.

Callers must supply their partner/reseller API access credentials in the Authorization header using basic HTTP authentication. All inbound calls to the Integration APIs require clients to use the HTTPS protocol, therefore securing the web traffic with TLS (Transport Layer Security).

📘

No partner/reseller API user?

Please contact your account manager to request a user and access to this service.

Responses

All service calls return an HTTP response code and an optional payload containing a JSON document.

ResultHTTP Status codeDescription
Success200The call completed successfully. The result is returned as a JSON payload.
Bad request400The call did not complete successfully due to the supplied parameters failing validation. The
payload will contain a JSON object that describes the error
Authentication
failure
401The call did not complete successfully due to an invalid username or password
Server Error500An internal error has occurred.
Gateway
Timeout
504An internal timeout has occurred

Errors

Errors are returned as a JSON object in the following format:

{
  "ErrorDetail":{
  	"Message":"Value cannot be null. Parameter name: request",
  },
  "ErrorType":"ArgumentFaultContract"
}