Phone Numbers
Detach Numbers from Agent
Stop routing inbound calls on phone numbers to an agent.
POST
/
v2
/
agents
/
{agent_id}
/
inbound
/
detach
Detach Numbers from Agent
curl --request POST \
--url https://api.bland.ai/v2/agents/{agent_id}/inbound/detach \
--header 'Content-Type: application/json' \
--header 'authorization: <authorization>' \
--data '
{
"inbound_numbers": [
"<string>"
]
}
'import requests
url = "https://api.bland.ai/v2/agents/{agent_id}/inbound/detach"
payload = { "inbound_numbers": ["<string>"] }
headers = {
"authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({inbound_numbers: ['<string>']})
};
fetch('https://api.bland.ai/v2/agents/{agent_id}/inbound/detach', 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/v2/agents/{agent_id}/inbound/detach",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'inbound_numbers' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v2/agents/{agent_id}/inbound/detach"
payload := strings.NewReader("{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bland.ai/v2/agents/{agent_id}/inbound/detach")
.header("authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v2/agents/{agent_id}/inbound/detach")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"agent_id": "8a60ad62-9f9e-4d97-817f-ac47ee2639cc",
"detached_count": 2
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "INVALID_BODY",
"message": "inbound_numbers must be a non-empty array of phone numbers"
}
]
}
Overview
Removes the agent from the given phone numbers. Only numbers currently attached to this agent are affected; any others in the list are skipped and not counted. Detached numbers have no inbound assignment until you attach them somewhere else. Detaching does not restore the pathway or persona a number had before you attached it. One exception applies to texts: if the number had a V1 pathway set for texts before the attach, texts to it run that pathway again. The reverse operation is Attach Numbers to Agent. Requires an admin, owner, operator, or prompter role.Headers
Path Parameters
Body Parameters
Phone numbers to detach, each exactly as it appears on your account (for example
+18005551234). Must be a non-empty array of non-empty strings; surrounding whitespace is trimmed. Returns 400 INVALID_BODY otherwise.Response
How many of the given numbers were attached to this agent and are now detached.
0 when none were, including when the agent has never had numbers attached or the agent ID is unknown. This endpoint does not return 404 for an unknown agent.{
"data": {
"agent_id": "8a60ad62-9f9e-4d97-817f-ac47ee2639cc",
"detached_count": 2
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "INVALID_BODY",
"message": "inbound_numbers must be a non-empty array of phone numbers"
}
]
}
Docs for agents: llms.txt
Was this page helpful?
⌘I
Detach Numbers from Agent
curl --request POST \
--url https://api.bland.ai/v2/agents/{agent_id}/inbound/detach \
--header 'Content-Type: application/json' \
--header 'authorization: <authorization>' \
--data '
{
"inbound_numbers": [
"<string>"
]
}
'import requests
url = "https://api.bland.ai/v2/agents/{agent_id}/inbound/detach"
payload = { "inbound_numbers": ["<string>"] }
headers = {
"authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({inbound_numbers: ['<string>']})
};
fetch('https://api.bland.ai/v2/agents/{agent_id}/inbound/detach', 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/v2/agents/{agent_id}/inbound/detach",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'inbound_numbers' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v2/agents/{agent_id}/inbound/detach"
payload := strings.NewReader("{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bland.ai/v2/agents/{agent_id}/inbound/detach")
.header("authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v2/agents/{agent_id}/inbound/detach")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"inbound_numbers\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"agent_id": "8a60ad62-9f9e-4d97-817f-ac47ee2639cc",
"detached_count": 2
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "INVALID_BODY",
"message": "inbound_numbers must be a non-empty array of phone numbers"
}
]
}