Skip to content

Smart IVR AI callback

Deliver the AI's routing decision for a Smart IVR call

No authentication required
token query · string *
Opaque per-call token issued by SmartIvrSendScript, validated against the channel

Request body · required

Request schema
channel*string
Asterisk channel name
ivrId*string
IVR the call originated from
action*string
transfer or hangup
enum: transfer hangup
languagestring
AI-identified language, used only if none was detected earlier
destinationobject
Required when action=transfer
extensionstring
Extension/number to route to via INCOMING-{instance}, same as a normally dialed extension

Responses

Channel redirected
Response schema
successboolean
Bad Request - Request validation failed
Response schema
No response body.
Channel/token invalid, or the call already ended before this callback arrived
Response schema
successboolean
post https://{username}.voxbi.cloud/api/{version}/smartIvr/callback
Base URL https://{username}.voxbi.cloud/api/{version}
Request sample
curl -X POST 'https://{username}.voxbi.cloud/api/{version}/smartIvr/callback'
const response = await fetch('https://{username}.voxbi.cloud/api/{version}/smartIvr/callback', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
});

const data = await response.json();
console.log(data);
import requests

response = requests.post('https://{username}.voxbi.cloud/api/{version}/smartIvr/callback')
response.raise_for_status()
data = response.json()
print(data)
<?php
$context = stream_context_create([
    'http' => [
        'method'  => 'POST',
        'header'  => "Content-Type: application/json",
    ],
]);

$response = file_get_contents('https://{username}.voxbi.cloud/api/{version}/smartIvr/callback', false, $context);
$data = json_decode($response, true);
print_r($data);
Sample request
No request example provided.
No example for this status.
No example for this status.
No example for this status.