Get Trunk Health
curl --request GET \
--url https://api.bland.ai/v1/sip/status \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/sip/status"
headers = {"authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/status")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/sip/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{
"data": {
"status": "healthy",
"response_time_ms": 42,
"checked_at": "2026-03-09T12:00:00Z"
},
"errors": null
}
SIP Trunks
Get Trunk Health
Get the health status of a SIP trunk by probing the endpoint with SIP OPTIONS.
GET
/
v1
/
sip
/
status
Get Trunk Health
curl --request GET \
--url https://api.bland.ai/v1/sip/status \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/sip/status"
headers = {"authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/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://api.bland.ai/v1/sip/status")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/sip/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{
"data": {
"status": "healthy",
"response_time_ms": 42,
"checked_at": "2026-03-09T12:00:00Z"
},
"errors": null
}
Headers
string
required
Your API key for authentication.
Query Parameters
string
required
The phone number to check health for. Must be in E.164 format.
Response
string
Health status:
"healthy", "unreachable", or "unchecked". Inbound-only trunks show "unchecked" since there is no outbound endpoint to probe.number
Response time of the SIP OPTIONS probe in milliseconds.
null if unreachable or unchecked.string
ISO 8601 timestamp of when the health check was performed.
Example Request
curl -X GET 'https://api.bland.ai/v1/sip/status?phone_number=%2B14150000000' \
-H "Authorization: Bearer <token>"
{
"data": {
"status": "healthy",
"response_time_ms": 42,
"checked_at": "2026-03-09T12:00:00Z"
},
"errors": null
}
Docs for agents: llms.txt
Was this page helpful?
⌘I