| Account SID | api_key - your Vobiz Auth ID, sent as the X-Auth-ID header |
| Auth Token | auth_token, sent as the X-Auth-Token header |
Client(account_sid, auth_token) | Vobiz(api_key=AUTH_ID, auth_token=AUTH_TOKEN) (Python) · new VobizClient({ apiKey, authToken }) (Node) |
API base https://api.twilio.com/2010-04-01 | https://api.vobiz.ai/api/v1 |
| Account scope implicit in the request path | Explicit auth_id passed to every account-scoped method |
client.calls.create(to, from_, url, method) | client.calls.make_call(auth_id, from_, to, answer_url, answer_method) |
url / inline twiml on the call | answer_url + answer_method (both explicit) |
TwiML <Response> document | VobizXML <Response> built with vobizxml.ResponseElement() |
<Say> | <Speak> · live: speak_text.call(auth_id, call_uuid, text=) |
<Play> | <Play> · live: play_audio.call(auth_id, call_uuid, urls=) |
<Gather input numDigits timeout finishOnKey> | <Gather inputType numDigits executionTimeout digitEndTimeout finishOnKey> (reference) |
<Dial><Number> / <Dial><Client> | <Dial><Number> / <Dial><User> |
<Record> / record="record-from-answer" | <Record> · live: record_calls.start_recording / stop_recording |
<Redirect> (continue at another TwiML URL) | <Redirect> (continue at another VobizXML URL) - the way to move a call imperatively |
<Hangup> / client.calls(sid).update(status='completed') | <Hangup> · live_calls.hangup_call(auth_id, call_uuid) |
<Enqueue> / Queues | live_calls.list_queued_calls / get_queued_call |
client.calls(sid).update(...) (in-call redirect) | live_calls.get_live_call(auth_id, call_uuid, status='live') + play_audio/speak_text/dtmf/record_calls |
AvailablePhoneNumbers search | phone_numbers.list_inventory_numbers(auth_id, country=, search=) |
IncomingPhoneNumbers.create (buy) | phone_numbers.purchase_from_inventory(auth_id, e164=) |
| Number → TwiML app / trunk binding | phone_numbers.assign_number_to_trunk(auth_id, phone_number, trunk_group_id=) |
| Elastic SIP Trunk | trunks.create_trunk(auth_id, name=, trunk_type=, max_concurrent_calls=) |
| Credential List / IP ACL / Origination URI | credentials.* / ip_access_control_list.create_ip_acl / origination_uri.create_origination_uri |
Subaccounts (Accounts resource) | sub_accounts.create_subaccount(auth_id, name=, email=, kyc_mode=, business_type=, enabled=) |
| Regulatory Bundles / number compliance | sub_account_kyc.* - India KYC (PAN/GST/CIN/DigiLocker/hosted sessions) |
Recordings resource | recordings.list_recordings / get_recording / delete_recording(auth_id, ...) |
Call logs (Calls list) | cdr.list_cdrs(auth_id, from_number=, to_number=, start_date=, end_date=, ...) / get_cdr(auth_id, call_id) |
| Conference / Participant resources | conferences.* + conference.* / conference_members.* / conference_recording.* |
X-Twilio-Signature + RequestValidator | X-Vobiz-Signature + SDK validator |
Webhook params CallSid / From / To / Digits | Ring/answer-flow params posted to your answer_url / Gather action URL |