Overview
Ready to register your 10DLC brand or campaign? You're in the right place.
10DLC brand and campaign registration
In addition to the API, you can also create brands and campaigns on the Sinch Customer Dashboard.
The following articles are available to walk you through the process on the dashboard:
Toll-free number brand and campaign registration
TFN registration is very similar to 10DLC registration, with a few key differences:
- While EINs are recommended where available, they are not required.
- Some special 10DLC usecases are not supported for TFN campaigns.
- No external registration is done at this time. The internally generated ID provided by Sinch will be the only identifier used.
- No pass-through charges apply to TFN campaigns at this time.
- TFN campaigns require an estimated volume to be provided. This value is for guidance only, it does not function as a cap on traffic volume.
- Each brand - campaign - number combination will be unique. If a company wants multiple numbers, their brand and campaign information should be submitted once per number.
TFN Registration steps | ||||
---|---|---|---|---|
Client submits tfn brand registration | → | tfnBrandRegistrations | → | Sinch |
Client gets back brandRegistrationId | ← | {brandRegistrationId} | ← | Sinch |
Client polls using brandRegistrationId | → | tfnBrandRegistrations/{brandRegistrationId} | → | Sinch |
Client gets status of brand | ← | {brandRegistrationStatus} | ← | Sinch |
Client submits tfn campaign registration | → | tfnCampaignRegistration:submit | → | Sinch |
Client gets back campaignRegistrationId | ← | {campaignRegistrationId} | ← | Sinch |
Client polls using campaignRegistrationId | → | tfnCampaignRegistrations/{campaignRegistrationId} | → | Sinch |
Client gets back status of campaign | ← | {status} | ← | Sinch |
Authentication
There are two ways to authenticate the Registration API: Basic and OAuth 2.0. The recommended way is via OAuth as it is more secure.
OAuth2.0 authentication
Achieve more secure API authentication with OAuth 2.0 access tokens.
Access tokens are short lived. Typically, they will only last one hour. This is done to keep your data (and ours) safer.
In exchanging credentials, you'll get a long string called an access token. This access token will serve as your bearer token in the authorization header of API calls.
Find your credentials in the Sinch Customer Dashboard. Or here if you're using the beta version of the Customer Dashboard.
There are two pieces of information needed to obtain an access token: the key ID and key secret corresponding to your project ID.
Get an access token
To get an access token, do the following:
- Login to the Sinch Client Dashboard to get your access keys . If you're using the beta version of our dashboard, click here instead.
-
Click on
New Key
and when prompted, enter a display name, then click
Confirm
.
Does it have to be a new key?
Not at all. If you have existing credentials saved, feel free to use them.
-
A
Key ID
and
Key Secret
will display. Save the project ID, key ID, and key secret someplace safe.
Important:
The key secret is only viewable at the time of initial creation.
If you accidentally misplace they key secret, no worries! Create a new key.
-
Using the following curl command, get your access token using the key ID and key secret.
curl https://auth.sinch.com/oauth2/token \ -d grant_type=client_credentials \ -u YOUR_Key_ID:YOUR_Key_Secret
- You'll see your new access token in the response. Now you're ready to use this token on calls to the API. The access token will be useable for one hour.
Short lived
The access token is meant to be short lived for enhanced security. Generate one as often as it is necessary.
Basic authentication
HTTP Basic authentication works on all Sinch REST APIs. Basic auth is often the preferred option for testing because it is simple and easy to use.
Basic authentication is sent in the authorization header with each call.
No matter the programming language, there are three main components for successful basic authentication in a request:
-
The designation of authorization type, which is
basic
-
The
username
, which in Sinch's case isYOUR_Key_ID
, corresponding to your project -
The
password
, which isYOUR_Key_Secret
, again, corresponding to the project
You can view and manage your API credentials here (or here if you're using the beta version of the Customer Dashboard).
Need help?
Check out this article for a walk-through on finding your key and secret.
Use basic authentication credentials in an API call
-
First, create a new project
in the Customer Dashboard
by clicking
New Key
.
If you are using the beta version of the Customer Dashboard, create a new project here instead.
-
Copy your
project ID
,
key ID
, and
key secret
.
Important:
Keep your key secret somewhere safe as it is only viewable upon initial project creation. The project ID and key ID are always readily available in the Customer Dashboard. If you misplace your key secret, simply generate a new key!
-
Use your Key ID as the username (sometimes called the
client_id
) and your key secret as the password (can be referred to as theclient_secret
) in every call made to a Sinch API.
Base URL
The following URLs can be used by the REST API.
Server | URL |
---|---|
HTTP 10DLC API Server (Default(US)) | http://us10dlc.api.sinch.com |
Formats and conventions
Let's take a brief look at some of the formats used in the REST API.
JSON
JSON (application/json
) is the content type of both requests and responses if not otherwise specified.
Requests with invalid JSON will be rejected.
Null values
Null values can be omitted in requests and will be omitted in responses. In some cases, explicitly setting null
will overwrite a previously set value with null
.
New features
New features might result in additional request and response parameters. New request parameters will either have a default value or be considered optional to retain backwards compatibility. It's highly recommended to ignore any unexpected parameters when reading JSON in API responses and in callback handlers.