GET /v1/telephony/providers returns the same list at runtime, with the exact
field keys, labels, defaults and hints the dashboard renders. Read it rather
than guessing field names.
Connecting an account
Two calls. The first records the credential and checks it against the carrier; the second builds the carrier-side setup.display_name is yours and must be unique in the workspace. Connecting a second
account with the same carrier identity — the same Plivo Auth ID, the same Twilio
or Exotel Account SID — is a 409.
Credentials become workspace secrets
Send a credential as plaintext and Talqing stores it as a workspace secret named after the carrier and the field —PLIVO_AUTH_TOKEN, EXOTEL_API_TOKEN — and keeps only the reference. If that
name is already taken by something else, a suffixed name is allocated rather
than overwriting it.
You can also pass a secret you created yourself:
GET on an account returns the
{{secrets.NAME}} reference map and nothing else.
Creating an account validates the credential against the carrier immediately. A
credential the carrier rejects leaves the account in error with the carrier’s
own message on status_message — the account is still there, so you can fix it
with a PATCH rather than starting again.
A PATCH to credentials merges, so you can rotate one key without
re-sending the others. Run provision again afterwards.
What provisioning builds
POST /v1/telephony/accounts/{account_id}/provision creates the carrier-side
objects that let calls flow in both directions, and the outbound identity
Talqing dials with. Run it after connecting an account, and again after
replacing its credentials.
It is safe to repeat. It converges the carrier side to what the account should
have rather than creating a second copy of anything. The response’s status and
setup_steps say what is working and what is left.
Account statuses
PATCH accepts only disabled and connected on status. The other four are
states the platform writes.
Setup steps you do in the carrier’s console
Some carrier work happens in the carrier’s own product, and no API can read it back. That is what an account’ssetup_steps are for: each step carries a
title, a detail, numbered instructions, a link to the carrier’s own
documentation, and done.
A step marked user_confirmable: true cannot be checked over any API. You do
it, then you tell Talqing you have done it:
can_inbound to true on every non-disabled number on the
account. Setting it back to false reverses that just as broadly.
Per-carrier setup
Plivo
Plivo
Account info:
auth_id — from the Plivo console home page, in the form
MAXXXXXXXX.Credentials: auth_token — the auth token shown beside it.Everything else is driven over Plivo’s API. Provisioning leaves nothing for
you to do in the Plivo console, and the account has no setup steps.Twilio
Twilio
Account info:
account_sid — from the Twilio console home page, in the
form ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.Credentials: auth_token — the auth token shown beside it.Twilio’s API host is the same worldwide, so there is no region or subdomain
to copy across. Provisioning leaves nothing for you to do in the Twilio
console, and the account has no setup steps.Vobiz
Vobiz
Account info:
auth_id — from the Vobiz console home page, in the form
MA_XXXXXXXX.Credentials: auth_token — the auth token shown beside it.Vobiz serves every account from one global API host, so there is no region
or subdomain to copy across. Provisioning leaves nothing for you to do in
the Vobiz console, and the account has no setup steps.Exotel — the one with a console step
Exotel — the one with a console step
Account infoUntil you confirm, every Exotel number imports with inbound disabled —
its
Credentials:
api_key and api_token, both from Exotel’s API Settings
page.The console step. Exotel can only hand an incoming call to a Flow, never
straight to a connection. So your numbers need a small Flow that passes the
call to Talqing. It takes about two minutes, once per account — not once per
number.1
Create a Custom App
In Exotel’s App Bazaar, under Custom Apps, click Create. Name it
something like “Talqing inbound”.
2
Add the Connect applet
Drag the Connect applet from Voice Applets onto Call Start.
Leave “Configure using flow builder here” selected, and leave both
Primary URL boxes empty — those are for calling a webhook of your
own, not for reaching Talqing.
3
Point it at Talqing
Under Dial Whom, pick Dial phone number(s) and paste the value
the setup step gives you — it begins
sip: — into that box, then save
the Flow. The box asks for a phone number; the sip: prefix is what
overrides that and tells Exotel to hand the call over instead of
dialling anyone. Read the value from setup_steps on the account
(the dashboard renders it with a Copy button); it is specific to your
account.4
Attach your numbers to the Flow
In ExoPhones, click Assign ExoPhones to Flow, tick every number
Talqing should answer and the Flow you just made, then click Attach
Flow. A number still showing “Install an App” is not connected yet.
5
Confirm it here
PATCH /v1/telephony/accounts/{account_id} with
{"console_setup_confirmed": true}, or press the confirm button in the
dashboard.readiness reads needs_carrier_setup and it cannot be assigned an
agent. Outbound calling from those numbers works the whole time.Disconnecting an account
DELETE /v1/telephony/accounts/{account_id} is permanent, and it is guarded on
both sides.
- Every number on the account must be
disabledfirst. A number that ispending,provisioning,activeorerrorblocks the delete withdisable all phone numbers on this account before deleting it. This is what stops a delete quietly taking live numbers off the air. - The carrier-side teardown has to succeed. Talqing removes the objects it
created on your carrier account before dropping the row that records their
ids. If the carrier refuses — an expired credential, an API outage — the
delete fails with a
502naming the carrier’s reason, and nothing is removed here. Fix the credential and retry.
Next
Phone numbers
Import the numbers this account owns and put an agent on one.
Troubleshooting
Credential expiry, setup that will not finish, numbers stuck in error.