Voice Prerequisites

Before you can make or receive calls using the EnableX Voice API, there are five things to set up: an account and project, API credentials, a phone number, that number configured on your project, and optionally a voice prompt. This page walks through each step in order.

1. Account Setup

The EnableX Portal is where you manage projects, credentials, phone numbers, and configuration. Everything in the Voice API flows through a project you own in the portal.

Register or Log In

If you are new to EnableX, register for an account at portal.enablex.io. If you already have an account, log in with your existing credentials.

Create a Voice-Enabled Project

Once you are logged in, you need a project with Voice enabled. A project is the container for your credentials, phone numbers, and configuration.

There are two paths:

  • New project — Create a fresh project and select Voice as one of the enabled services at creation time.
  • Existing project — Open your existing project and enable the Voice service from within the project's settings.

Either way, Voice must be explicitly enabled on the project before the Voice API will accept requests authenticated with that project's credentials.

Trial Account Restrictions

Trial accounts have access to the Voice API and include a free shared phone number, but with the following restrictions:

  • Outbound calls can only be made to the mobile number registered when the account was created.
  • Call duration is restricted to 45 seconds per call.
  • Inbound calls are not supported on shared numbers. If you need to test inbound call flows on a trial account, please contact our sales team.

2. Get API Credentials

Every API request to the EnableX Voice API must be authenticated using an App ID and an App Key. These two values together identify your project and authorize access.

How Credentials Are Issued

When you create a project in the EnableX Portal, the platform automatically generates an App ID and App Key for it. These credentials are sent to the email address associated with your EnableX account. Check your inbox — including your spam folder — after creating a project.

Finding Credentials in the Portal

You can also view your credentials at any time directly inside the portal. Navigate to your project and look for the API credentials or settings section. Both the App ID and App Key are displayed there.

Resetting or Resending Credentials

If you have lost access to your credentials or suspect they have been compromised, you have two options from within the portal:

  • Resend — Re-send the current App ID and App Key to your registered email address.
  • Reset — Generate a new App Key. The previous key is immediately invalidated. Any integration using the old key will fail until updated.
Keep Your App Key Secret

Your App Key is a sensitive credential — treat it like a password. Never hardcode it in client-side code, commit it to a source repository, or share it publicly. Store it in an environment variable or a secrets manager. If it is ever exposed, reset it from the Portal immediately. Old keys become invalid as soon as a reset is performed.

3. Get a Phone Number

To make or receive calls, your project needs at least one phone number. EnableX provides Direct Inward Dialing (DID) numbers — these are real telephone numbers that callers can dial to reach your application, and numbers that your application can use as the displayed caller ID on outbound calls.

Shared and Dedicated Numbers

EnableX offers two types of DID numbers:

  • Shared numbers — A number shared across multiple projects, typically used for development and testing. Inbound calls are not supported on shared numbers.
  • Dedicated numbers — A number reserved exclusively for your project, suitable for production deployments where you need full control over caller ID and inbound routing.
Trial Account: Free Shared Number

Trial accounts are provisioned with one free shared DID number automatically. This number can be used for outbound call testing. No order placement is required on trial. Note that inbound calls are not supported on shared numbers — contact sales if you need inbound testing on a trial account.

Placing an Order for a Number

For paid accounts, you obtain a number by placing a rental order through the EnableX Portal. The process involves:

  1. Selecting the country and number type you need.
  2. Choosing an available number from the inventory shown.
  3. Confirming the order. EnableX provisions the number to your account.

Once provisioned, the number appears in your account's number inventory and is ready to be assigned to a project.

4. Configure the Phone Number on Your Project

Having a phone number in your account inventory is not enough on its own — the number must be explicitly linked to a specific project. This association tells EnableX which project's webhook and configuration to apply when a call comes in on that number, and which number to present as caller ID on outbound calls from that project.

Adding a Number to a Project

In the EnableX Portal, open the project you want to use and go to the voice resources or phone numbers section. From there, you can add numbers from your account inventory to the project. A number can only be active on one project at a time.

Once a number is added to a project:

  • Inbound calls to that number are routed to the webhook URL configured on the project.
  • The number can be used as the from value when initiating outbound calls through the Voice API.
Multiple Numbers Per Project

A project can have more than one phone number assigned to it. Each number can have its own inbound configuration, or all numbers can share the same webhook endpoint — depending on how you set up the project.

5. Configure a Voice Prompt

A voice prompt is an audio clip that plays to a caller — typically a greeting, hold message, or menu instruction. Configuring a voice prompt is optional for many Voice API use cases, but it is required if you want to play a pre-recorded audio file rather than using text-to-speech in your call flow.

Prompt Format

EnableX accepts voice prompts as WAV files. The file must meet the platform's audio format requirements (sampling rate and encoding) to play back correctly. Refer to the portal upload interface for the exact specifications.

Uploading a Prompt

Prompts are uploaded through the EnableX Portal within your project's voice resources section. After upload, each prompt is assigned an identifier that you reference in your call flow configuration or API calls.

Text-to-Speech as an Alternative

If you do not want to upload audio files, EnableX supports text-to-speech (TTS) directly in call flow actions. You provide a text string and choose a voice and language; the platform synthesizes and plays the speech in real time. No file upload is needed for TTS-only flows.

Associating a Prompt with a Phone Number

Once a prompt is uploaded, you can associate it with a specific phone number in your project. This means that when a call arrives on that number, the associated prompt plays as the initial greeting before any further call handling logic runs. This association is configured in the portal on the phone number's settings within the project.

Prompts vs. In-Call Actions

A prompt configured on a phone number plays at the very start of an inbound call, before your webhook responds. In-call audio playback — including TTS and file playback mid-call — is handled separately through the Voice API's call action commands, which are covered in the API Reference.

What's Next

With your account, credentials, phone number, and optional voice prompt in place, you are ready to start integrating with the Voice API.

  • Authentication — Learn how to authenticate every API request using your App ID and App Key.
  • Voice API — Full reference for all Voice API endpoints — outbound calls, inbound handling, DTMF, recording, and more.
  • Broadcast API — Initiate and manage automated voice broadcast campaigns at scale.
  • Media Streaming — Stream live call audio to your WebSocket server for real-time AI processing.