Get Outbound Call Status
curl --request GET \
--url https://allomia.com/api/outbound/{id}/status \
--header 'Authorization: <authorization>'import requests
url = "https://allomia.com/api/outbound/{id}/status"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://allomia.com/api/outbound/{id}/status', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://allomia.com/api/outbound/{id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://allomia.com/api/outbound/{id}/status"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://allomia.com/api/outbound/{id}/status")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://allomia.com/api/outbound/{id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"outboundCallId": "<string>",
"contactId": "<string>",
"status": "<string>",
"callDetails": {
"startedAt": "<string>",
"endedAt": "<string>",
"duration": 123,
"endedReason": "<string>"
}
}Outbound Calls
Get Outbound Call Status
Retrieves the current status and details of a previously created outbound call
GET
/
api
/
outbound
/
{id}
/
status
Get Outbound Call Status
curl --request GET \
--url https://allomia.com/api/outbound/{id}/status \
--header 'Authorization: <authorization>'import requests
url = "https://allomia.com/api/outbound/{id}/status"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://allomia.com/api/outbound/{id}/status', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://allomia.com/api/outbound/{id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://allomia.com/api/outbound/{id}/status"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://allomia.com/api/outbound/{id}/status")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://allomia.com/api/outbound/{id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"outboundCallId": "<string>",
"contactId": "<string>",
"status": "<string>",
"callDetails": {
"startedAt": "<string>",
"endedAt": "<string>",
"duration": 123,
"endedReason": "<string>"
}
}Get Outbound Call Status
Retrieves the current status and details of a previously created outbound call. Theid in the URL path is the outboundCallId returned when the call was created. Requires a tenant or organization-level API key for authentication.
Poll this endpoint after creating an outbound call to track whether it is
still in progress or has reached a terminal state. Terminal states are
completed, failed, busy, and no-answer. The callDetails object is
only present once the call has reached a terminal state.Headers
string
required
API key is required. Enter either your tenant-specific or organization-specific API key in the format
Bearer YOUR-API-KEYPath Parameters
string
required
The outbound call ID (
outboundCallId) returned from the Create Outbound Call endpoint.Response
string
UUID identifying the outbound call.
string
UUID of the contact associated with this outbound call.
string
Current status of the outbound call. Possible values:
| Status | Description |
|---|---|
calling | The call has been dispatched and is in progress |
completed | The call connected and ended normally |
failed | The call could not be completed due to an error |
busy | The destination number was busy |
no-answer | The call rang but was not answered |
object
Present only when the call has reached a terminal state (
completed, failed, busy, or no-answer).Show properties
Show properties
string
ISO 8601 timestamp when the call started (e.g.,
"2026-04-01T14:30:00Z"). null if the call never connected.string
ISO 8601 timestamp when the call ended (e.g.,
"2026-04-01T14:32:30Z").integer
Call duration in seconds.
null if the call never connected.string
Reason the call ended (e.g.,
"customer-ended-call").Example Request
curl -X GET https://allomia.com/api/outbound/c3d4e5f6-a7b8-9012-cdef-345678901234/status \
-H "Authorization: Bearer YOUR-API-KEY"
Example Response — Call In Progress
{
"outboundCallId": "c3d4e5f6-a7b8-9012-cdef-345678901234",
"contactId": "d4e5f6a7-b8c9-0123-defa-456789012345",
"status": "calling",
"callDetails": null
}
Example Response — Call Completed
{
"outboundCallId": "c3d4e5f6-a7b8-9012-cdef-345678901234",
"contactId": "d4e5f6a7-b8c9-0123-defa-456789012345",
"status": "completed",
"callDetails": {
"startedAt": "2026-04-01T14:30:00Z",
"endedAt": "2026-04-01T14:32:30Z",
"duration": 150,
"endedReason": "customer-ended-call"
}
}
Example Response — Call Failed (no answer)
{
"outboundCallId": "c3d4e5f6-a7b8-9012-cdef-345678901234",
"contactId": "d4e5f6a7-b8c9-0123-defa-456789012345",
"status": "no-answer",
"callDetails": {
"startedAt": null,
"endedAt": "2026-04-01T14:30:45Z",
"duration": null,
"endedReason": "no-answer"
}
}
Error Responses
401: Unauthorized
401: Unauthorized
Returned when the API key is missing or invalid.
{
"error": "Invalid or missing API key"
}
404: Outbound call not found
404: Outbound call not found
Returned when no outbound call exists for the provided ID, or the call does not belong to the organization associated with the API key.
{
"error": "Outbound call not found"
}
500: Internal server error
500: Internal server error
{
"error": "Internal server error occurred"
}