Skip to content

Managed Numbers

Overview

A managed number is a phone number Decibyl rents from the carrier on your behalf. You get a number without opening a carrier account, and we handle the telecom compliance application, the number-to-application wiring, and the monthly rental.

The alternative is bring-your-own: you open a Plivo (or Twilio, Telnyx, Vonage…) account yourself and add its credentials under Telephony Configurations. That path is unchanged and needs none of what follows — your numbers sit under your own carrier account, verified in your own name.

What it costs

A managed number is a monthly rental, and the Numbers screen shows it before you buy. It is billed monthly by autopay, from the bank account you authorise, and the first month is prorated by day from the day you buy.

The rental accrues whether or not you place a single call. It is a separate line from per-call charges — a quiet month still costs the rental.

If autopay is ever revoked, the rental falls back to your prepaid credit balance and the unpaid schedule below applies. Nothing is released because you turned autopay off.

Before you can buy a number

Your account has to be verified by the telecom licensee. This is a real regulatory requirement under the DoT directive of June 2025, not a Decibyl policy, and no amount of configuration works around it.

  1. Enter your business details

    Go to Verification and enter your legal entity name, GSTIN and registered address.

  2. Upload your documents

    For a company:

    • Registration certificate — a Certificate of Incorporation or a Udyam (MSME) registration. Either is accepted; many small businesses have only the latter.
    • GST certificate

    For an individual: an authorised signatory ID and an address proof.

    Files must be PDF, JPEG or PNG, and under 5MB.

  3. Submit for verification

    We check the documents are complete and legible, then forward them to the carrier. Our approval does not enable calling — it is a pre-screen so that a carrier round trip is not wasted on a blurry scan.

    The carrier’s decision is the one that opens telephony. It usually takes a few working days.

Verification states

StatusWhat it meansWhat to do
not_startedNothing uploaded yetUpload documents
submitted / under_reviewWith our teamWait. Keep building and testing over the browser meanwhile
rejectedWe sent it backRead the reason, fix, resubmit
forwardedWith the telecom operatorWait
carrier_approvedVerified. You can buy numbers and place calls—
carrier_rejectedThe operator declinedRead the reason, fix, resubmit
suspendedThe operator paused a previously approved accountRead the reason. Your numbers are still yours; most suspensions lift once the document in question is updated
expiredThe application lapsedUpload current documents and submit again

While you are unverified you can still build agents and test them over the browser — WebRTC involves no phone number and no licensee.

Buying a number

Search what the carrier has available:

Terminal window
curl -X POST https://api.decibyl.ai/api/v1/managed-numbers/search \
-H "X-API-Key: $DECIBYL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"telephony_configuration_id": 1,
"country_iso": "IN",
"number_type": "local",
"city": "Hyderabad"
}'

An empty list is a normal answer. Indian local inventory is thin and moves during the day — try a different city, or try again later.

Authorise autopay first

A number is monthly rent from the day it is issued, so a standing instruction has to be in place before one is handed over. Start it once per account:

Terminal window
curl -X POST https://api.decibyl.ai/api/v1/billing/mandate \
-H "X-API-Key: $DECIBYL_API_KEY"

The response carries an authorisation_url — a Razorpay-hosted page where the authorisation actually happens (UPI Autopay, card, or eNACH). Open it in a browser and complete it there.

Buying before the mandate is authorised is refused with 403 and a message saying so. That is deliberate: a number issued against an unauthorised mandate is rent nobody has agreed to pay.

Then buy one

Terminal window
curl -X POST https://api.decibyl.ai/api/v1/managed-numbers \
-H "X-API-Key: $DECIBYL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"telephony_configuration_id": 1,
"address": "+918041234567",
"label": "Support line",
"inbound_workflow_id": 42
}'

Buying does three things at once: rents the number, binds it to the application that routes inbound calls to your agent, and links your compliance application to it. If any step fails, the number is released back to the carrier — you are never left paying for a number that does not work.

Set inbound_workflow_id to the agent that should answer. You can attach one later, but a number with no agent rejects inbound calls.

When a rental goes unpaid

With autopay authorised, the rental is collected from your bank on the monthly cycle and never touches your prepaid credit. If the mandate is revoked, halted by your bank, or was never set up, collection falls back to that balance — which is where the schedule below starts. If the balance is short, here is exactly what happens — no step is skipped and nothing happens sooner than stated:

DayWhat happens
0The charge fails. We retry daily. Calls still work
7Calls on that number are paused. The number is still yours
15, 25Reminders
45The number becomes eligible for release

You are emailed before any of this bites, not after: a warning goes out when your balance drops below about ten days of your recent usage, and a more urgent one under three. The address used is every account member’s, so keep at least one that somebody reads.

Two things worth being clear about:

  • Topping up restores everything immediately. A suspended number is fully recoverable — the number is still held at the carrier, and the next successful charge reactivates it and resets the clock.
  • Nothing is released automatically. Day 45 is when release becomes permitted, not when it happens. Releasing a number is irreversible — it goes back to the carrier’s pool and may be issued to someone else — so it always takes a deliberate action.

Giving a number up

Terminal window
curl -X POST https://api.decibyl.ai/api/v1/managed-numbers/{id}/release \
-H "X-API-Key: $DECIBYL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"reason": "no longer needed", "force": true}'

Billing stops when the number is released. We keep the record that you held it.

Checking status

Ask Claude, if you have the MCP server connected:

“Why can’t my agent make calls?” “What phone numbers do I have and what’s answering on each?” “What am I paying monthly?”

Or over the API: GET /api/v1/kyc for verification, and the telephony configuration endpoints for numbers.

Troubleshooting

The carrier rejected my application

Read carrier_rejection_reason on the verification page. The two most common causes are a business name that does not match the registration certificate exactly, and the same file uploaded to two document slots. Fix and submit again — we amend the existing application rather than filing a second one.

Search returns no numbers

Normal. Indian local inventory is thin. Try another city, or try again later. Retrying in a tight loop will not help and may hit the carrier’s rate limit.

Inbound calls to my number are rejected

Either no agent is attached (inbound_workflow_id is null) or the number is suspended for non-payment. Check the number’s status — active means routing is fine, suspended means the rental is unpaid.

My account was approved and now says suspended

The licensee paused it, usually because a document lapsed. Your numbers are still held and calls resume when it is reinstated. The reason is on the verification page.