Connect Twilio or Telnyx
Attach your own carrier account so its numbers become caller IDs, sync and activate numbers, and understand what disconnecting does to your texting lines.
Zyan does not sell you phone numbers. You bring your own Twilio or Telnyx account, Zyan verifies the credentials live before storing them, and that account's numbers become selectable caller IDs. The two carriers are peers — their numbers land in one registry, tagged by provider, and a campaign does not care which one a number came from.
Before you start
Connecting a carrier is owner-only: Only a workspace owner can connect the Twilio account. You will need the credentials from the provider's own console.
Connect Twilio
Open the telephony settings
Go to SettingsVoice & Telephony and find the Twilio card under Telephony providers.
Paste the Account SID
The placeholder starts AC….
Paste the Auth token
The hint tells you where it lives: Twilio ConsoleAccountAPI keys & tokens.
Click Verify & connect Twilio
The credentials are checked against Twilio before anything is stored. A typo fails here rather than silently later.
Click Sync numbers
This imports the phone numbers on the account.
Activate the numbers you want to use
A number is not selectable as a caller ID until it is activated.
The auth token is shown once
It goes into the workspace vault and is never displayed again. Keep your own copy in your password manager — Zyan will not read it back to you.
Connect Telnyx
Open the Telnyx card
Same section, below Twilio.
Paste the API key
The hint says Telnyx portalAuthAPI Keys.
Fill the optional fields if you need them
Messaging profile ID, Webhook public key and Friendly name.
Save
The key is verified live against Telnyx before it is stored.
Sync and activate numbers
Exactly as with Twilio. They join the same registry.
Settings reference
| Setting | What it changes | Default |
|---|---|---|
| Account SID | Identifies your Twilio account. Starts with AC. | — |
| Auth token | Authenticates against Twilio. Stored in the workspace vault and never displayed again. | — |
| API key | Authenticates against Telnyx. Vault-stored, never shown again. | — |
| Messaging profile ID | Optional. Which Telnyx messaging profile sends SMS. | — |
| Webhook public key | Optional. Verifies inbound SMS webhooks. Found in the messaging profile's settings. | — |
| Friendly name | Optional. A label for the connection. | — |
| Activate / Deactivate | Per number. Whether it is selectable as a caller number on a campaign. | — |
The numbers table
Once synced, each number shows:
| Column | What it tells you |
|---|---|
| Number | The E.164 number |
| Label | Your name for it |
| Type | Account number — owned on the carrier account — or Verified caller ID |
| Verified | When it was verified |
| Status | Active or inactive |
If the table is empty you get: No phone numbers found on this Twilio account. Buy a number in the Twilio console, then sync. Zyan cannot buy a number for you.
Verified caller ID numbers are restricted
A number typed as Verified caller ID rather than Account number is an
external verified caller ID. Using one on a campaign triggers
external_caller_id_forbidden at preflight unless an experimental platform flag
is on, and even then it is limited to test-mode campaigns. For ordinary calling,
use an Account number.
Calling policy: what governs a dial
Connecting a carrier does not decide who gets called. Four things do, and they all have to agree:
- The campaign's Caller number must be configured, active and allowed for that campaign.
- The campaign's calling window, read in each lead's local time.
- The campaign's Audience classification and the consent state of each lead.
- The platform's live-call gates, which are armed by Zyan rather than by you.
A carrier that is connected and syncing is only the first of those.
Disconnecting
Disconnect is owner-only, and it is not just a voice decision. If texting lines are still using the credentials, the function refuses and asks Switch off Twilio texting too? before you can force it through.
There is a softer option. Pausing the provider from its tile in SettingsIntegrations keeps the credentials but takes it out of service — its own settings card then shows no connect form and says Turn it back on under Settings → Integrations.
Pausing a carrier pauses texting as well
Voice and SMS share the provider connection. Pausing Twilio from the Integrations tile stops your texting lines too, without warning you a second time.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Verification fails immediately | The SID or token is wrong, or copied with whitespace | Re-copy from the provider console; credentials are checked live before being stored |
| No numbers appear after syncing | The carrier account holds no numbers | Buy a number in the provider's console, then Sync numbers again |
| A number is not offered on a campaign | It is synced but not activated | Activate it in the numbers table |
| The connect form has vanished from the card | The provider is paused from its Integrations tile | Turn it back on under Settings → Integrations |
| Disconnect is refused | Texting lines still use the credentials | Answer the Switch off Twilio texting too? prompt deliberately |
| Preflight says the caller ID is forbidden | The number is a verified caller ID, not an account number | Select an account number instead |
| You cannot see the connect card at all | Connecting a carrier is owner-only | Ask the workspace owner |