TryVox

Verified Caller IDs

Register and verify the phone numbers you can use as the `from` field on outbound calls.

Verified Caller IDs

Outbound calls require the from number to be a verified caller ID on your account. This prevents spoofing — you can only initiate calls from numbers you've proven you own. Inbound calls are unaffected.

A verified caller ID is one of:

  • A TryVox number you've purchased (still requires verification)
  • An external phone number you control (your office, your mobile, a SIP-routed line)

How verification works

  1. Initiate — submit a phone number. TryVox places a call to that number and reads out a 6-digit OTP. (You can request "channel": "sms" to receive the OTP via SMS instead.)
  2. Verify — submit the OTP back. The number flips to verified and is usable as from on outbound calls.
  3. Manage — list, update the alias, or delete entries.

Endpoints

All endpoints live under /v1/voice/accounts/{auth_id}/verified-caller-ids and authenticate with HTTP Basic.

MethodPathPurpose
POST/verified-caller-idsInitiate verification
POST/verified-caller-ids/{phone_number}/verifySubmit OTP to complete verification
GET/verified-caller-idsList all verified caller IDs
GET/verified-caller-ids/{phone_number}Get a single caller ID
PUT/verified-caller-ids/{phone_number}Update alias
DELETE/verified-caller-ids/{phone_number}Remove a caller ID

Verification states

A caller ID entry has one of two statuses:

  • pending — initiated but the OTP has not yet been submitted (or was incorrect). Cannot be used as from.
  • verified — OTP confirmed. Usable as from on outbound calls indefinitely (until deleted).
{
  "id": "8f7a4b2e-91c2-4f3d-9a1e-2c4b6d8f0a1c",
  "account_id": "TJab12cd34",
  "phone_number": "+919876543210",
  "alias": "Office line",
  "verification_status": "verified",
  "verified_at": "2026-04-09T10:35:12Z",
  "created_at": "2026-04-09T10:30:00Z"
}

Why ownership matters

Resources are owned by the API key's Auth ID. If you rotate to a new API key:

  • Verified caller IDs created under the old key stay attached to the old key
  • Outbound calls authenticated with the new key can't use the old key's verified from numbers
  • You'll need to re-verify them under the new Auth ID

See Authentication → Account-Scoped Endpoints for the underlying identity model.

Quick reference

# 1. Initiate (TryVox calls the number with an OTP)
curl -X POST https://api.tryvox.io/v1/voice/accounts/$TRYVOX_AUTH_ID/verified-caller-ids \
  -u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
  -H "Content-Type: application/json" \
  -d '{"phone_number": "+919876543210", "alias": "Office", "channel": "call"}'

# 2. Submit the OTP
curl -X POST https://api.tryvox.io/v1/voice/accounts/$TRYVOX_AUTH_ID/verified-caller-ids/+919876543210/verify \
  -u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
  -H "Content-Type: application/json" \
  -d '{"otp": "123456"}'

Next steps

On this page