Getting Started

Welcome to CarrierX API!

This simple yet powerful RESTful API allows developers to build an entire communications infrastructure for their applications, including voice calls, text messaging, and conferencing.

Why Use CarrierX API?

CarrierX offers a geo-distributed infrastructure that delivers incredible voice call clarity at disruptive prices. If you have your own voice application, you can use it to call landline or mobile phones using CarrierX API.

CarrierX owns a wide network of phone numbers—or DIDs—all over the world. Your users do not have to puzzle over how to connect to your VoIP application.

The users simply dial a number, like they do with any other phones, and connect to a voice application, or to another regular phone without even knowing its number (in the case you want to keep it secret), or to several other users in a conference. Moreover, most often it is a local number, not an international one.

Where Do I Start?

As all the methods used with CarrierX API require authentication, you should really start with registering and obtaining your credentials and authentication token. The next thing your will need is to rent a phone number (DID) that will be used as an intermediary between regular phones and voice applications.

Follow the steps below to learn how this can be done.

Step 1. Registering with CarrierX

The easiest way to register with CarrierX is to use the Contact Us form. Fill in all the fields and describe the reason for the contact.

You will receive an email with the credentials allowing you to access the CarrierX portal. The link in the email will direct you to the portal. You can also access it using the portal address. Log into the portal and proceed to the next step to get your security token.

Step 2. Obtaining Authentication Token

Click Account, then Security Tokens.

Security Tokens

Click Add New Token in the upper-right corner.

Add New Token

Enter the token name and click Create Token.

Create Token

The token will be created and added to the list of available tokens. Click its name to view the details.

Token Details

Access Token is what you need for API access. Click reveal to view and copy the access token. This will be used in -H 'Authorization: Bearer' header when sending requests to API.

Step 3. Sending First Request

Now you can send a test request to see that everything works as expected. Send the following request:

curl -X GET \
'https://api.carrierx.com/core/v2/oauth/whoami' \
-H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>'

Do not forget to replace the <YOUR_ACCESS_TOKEN> part with the access token your obtained at Step 2.

A successful request will return a 200 response code with data about you as CarrierX partner.

{
    "acls": [],
    "address1": null,
    "address2": null,
    "attributes": {},
    "balance": "351.53",
    "billing_email": "jsmith@freeconferencecall.com",
    "callbacks": {},
    "charge_at": "20",
    "city": null,
    "company_name": "CarrierX",
    "country_code": "USA",
    "date_created": "2018-09-20T21:34:55.000Z",
    "display_id": "CX90576809",
    "login": "johnsmith",
    "name": "John Smith",
    "owner_email": "jsmith@freeconferencecall.com",
    "parent_assigned_acls": [],
    "parent_sid": "ac38746e-d2e2-4cd6-29ae-b6658f0728b6",
    "partner_sid": "ed437907-002d-4ecc-aa3a-efdf5e50dba0",
    "payment_type": "prepay",
    "phonenumber": "5162065319",
    "prepay_amount": "100",
    "available_scopes" : [],
    "spending_limit": "0",
    "state": null,
    "status": "active",
    "system_attributes": {},
    "tech_email": "jsmith@freeconferencecall.com",
    "transformations": [],
    "zip": "90804"
}

Step 4. Renting Phone Number

Follow the steps of our detailed Rent Phone Number Quick Start Guide to find out how to rent a phone number from CarrierX using the portal or programmatically with the help of API.

Next Steps

Now you can create an endpoint, add a trunk group with trunks, and associate a phone number with that trunk group.

Further Reading

Read the following articles to get a better understanding of how things work in CarrierX: