MCube Setup
This guide walks you through connecting your MCube account to Vocobase for outbound and inbound calling. MCube is a popular telephony provider in India with support for local and toll-free numbers.Prerequisites
- An MCube account with API access enabled
- Your MCube JWT authentication token
- Your MCube executive number
- Every inbound DID in E.164 format
- An approved Vocobase partner account with an API key
Step 1: Get your MCube credentials
1
Log in to MCube
Sign in to your MCube dashboard or contact your MCube account manager.
2
Get your JWT token
MCube uses JWT tokens for API authentication. You can find your token in the MCube dashboard under API Settings, or request it from MCube support.
3
Get your executive number
The executive number is the agent/extension number assigned to your MCube account. It acts as the caller ID for outbound calls.Format: 4-15 digits, with an optional
+ prefix (e.g., +919876543210).Step 2: Configure MCube in Vocobase
MCube is a first-class BYOP provider on the telephony connections model. Create a named connection (recommended — every connection gets a stableconnection_id you can pass to POST /calls/start):
+ required) and is used as the line your outbound calls are placed from.
Alternatively, the provider config shortcut below remains supported and creates or updates your default MCube connection:
Step 3: Add and assign inbound DIDs
MCube does not expose a DID inventory endpoint that Vocobase pulls. Add the DIDs manually to the selected connection withPOST /api/v2/phone-numbers/sync. Use E.164 format even if MCube sends the webhook DID without +91; Vocobase handles national-format suffix matching during inbound routing.
A DID may exist on more than one connection for outbound use, but only one active row for that DID can have
inbound_enabled: true. This keeps inbound routing deterministic.Step 4: Make a test call
Start an outbound call using themcube provider:
If you omit the
provider field in the call request, MCube is used by default.connection_id to select one (omitting it with multiple active connections returns CONNECTION_AMBIGUOUS):
Troubleshooting
”MCube not configured” error
You will receive a400 error if you try to make a call with "provider": "mcube" before configuring credentials. Run PUT /config/telephony/mcube with valid credentials.
”Invalid MCube credentials” error
- Verify your JWT token has not expired — MCube tokens may have an expiration date
- Confirm the executive number is correctly formatted (4-15 digits, optional
+prefix) - Contact MCube support to verify your API access is active
Calls not connecting
- Ensure the destination number is reachable from your MCube account
- Check that your MCube account has sufficient balance
- Verify that API-initiated calls are enabled on your MCube plan
Inbound call returns unknown_number
- Confirm the dialed DID was added to the same MCube
connection_idselected by the webhook’s exeNumber - Store the DID in E.164 format, for example
+918071844607 - Confirm the DID row has an owned
agent_idandinbound_enabled: true - Use
GET /api/v2/phone-numbers?provider=MCUBE&connection_id=...to inspect the current mapping
JWT token expired
MCube JWT tokens may have an expiration date. If calls start failing after a period of time, generate a new JWT token from MCube and update your configuration:Updating credentials
To update your MCube credentials, callPUT /config/telephony/mcube again with the new values. Both fields (jwt_token, exe_number) are required each time. This updates your default MCube connection; additional named connections are managed through the connections API.
Next steps
Twilio Setup
Configure Twilio as an alternative telephony provider.
Quick Start
Create an agent and make your first call.