List Guard Rails
curl --request GET \
--url https://api.bland.ai/v1/guard_rails \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/guard_rails"
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/guard_rails', 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/guard_rails",
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/guard_rails"
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/guard_rails")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/guard_rails")
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": [
{
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "tcpa:ai_disclosure",
"name": null,
"description": null,
"prompt": null,
"config": {
"end_seconds": 30
},
"attachments": [
{
"source_type": "PERSONA",
"source_id": "98765432-1234-1234-1234-123456789012",
"actions": [
{ "type": "end_call" }
]
}
],
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-01-15T10:30:00.000Z"
},
{
"id": "b2c3d4e5-6789-01bc-defg-2345678901bc",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "custom",
"name": "No Medical Advice",
"description": "Prevents the agent from providing medical advice",
"prompt": "Flag if the agent provides any medical advice, diagnosis, or treatment recommendations",
"config": {},
"attachments": [
{
"source_type": "PATHWAY",
"source_id": "11111111-2222-3333-4444-555555555555",
"actions": [
{ "type": "transfer", "config": { "phone_number": "+15551234567" } }
]
}
],
"created_at": "2025-01-16T14:20:00.000Z",
"updated_at": "2025-01-16T14:20:00.000Z"
}
],
"errors": null
}
Guard Rails
List Guard Rails
Retrieve a list of all guard rails in your organization.
GET
/
v1
/
guard_rails
List Guard Rails
curl --request GET \
--url https://api.bland.ai/v1/guard_rails \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/guard_rails"
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/guard_rails', 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/guard_rails",
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/guard_rails"
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/guard_rails")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/guard_rails")
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": [
{
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "tcpa:ai_disclosure",
"name": null,
"description": null,
"prompt": null,
"config": {
"end_seconds": 30
},
"attachments": [
{
"source_type": "PERSONA",
"source_id": "98765432-1234-1234-1234-123456789012",
"actions": [
{ "type": "end_call" }
]
}
],
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-01-15T10:30:00.000Z"
},
{
"id": "b2c3d4e5-6789-01bc-defg-2345678901bc",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "custom",
"name": "No Medical Advice",
"description": "Prevents the agent from providing medical advice",
"prompt": "Flag if the agent provides any medical advice, diagnosis, or treatment recommendations",
"config": {},
"attachments": [
{
"source_type": "PATHWAY",
"source_id": "11111111-2222-3333-4444-555555555555",
"actions": [
{ "type": "transfer", "config": { "phone_number": "+15551234567" } }
]
}
],
"created_at": "2025-01-16T14:20:00.000Z",
"updated_at": "2025-01-16T14:20:00.000Z"
}
],
"errors": null
}
Headers
string
required
Your API key for authentication.
Query Parameters
string
Filter guard rails by the type of source they’re attached to.Options:
PERSONA, PATHWAY, INBOUNDstring
Filter guard rails by a specific source ID (must be a valid UUID).
Response
array
Array of guard rail objects.
string
Unique identifier for the guard rail.
string
Organization ID that owns this guard rail.
string
Type of guard rail. One of:
tcpa:ai_disclosure, tcpa:recording_disclosure, tcpa:self_introduction, tcpa:opt_out, or custom.string
Name of the guard rail (for custom guard rails).
string
Description of the guard rail (for custom guard rails).
string
Detection prompt (only for custom guard rails).
object
Configuration object. For TCPA time-based guard rails, contains
end_seconds.array
Array of sources this guard rail is attached to. Each attachment contains
source_type (PERSONA, PATHWAY, or INBOUND), source_id, and actions.string
ISO 8601 timestamp of when the guard rail was created.
string
ISO 8601 timestamp of when the guard rail was last modified.
array
Any errors that occurred (null if none).
{
"data": [
{
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "tcpa:ai_disclosure",
"name": null,
"description": null,
"prompt": null,
"config": {
"end_seconds": 30
},
"attachments": [
{
"source_type": "PERSONA",
"source_id": "98765432-1234-1234-1234-123456789012",
"actions": [
{ "type": "end_call" }
]
}
],
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-01-15T10:30:00.000Z"
},
{
"id": "b2c3d4e5-6789-01bc-defg-2345678901bc",
"org_id": "12345678-1234-1234-1234-123456789012",
"type": "custom",
"name": "No Medical Advice",
"description": "Prevents the agent from providing medical advice",
"prompt": "Flag if the agent provides any medical advice, diagnosis, or treatment recommendations",
"config": {},
"attachments": [
{
"source_type": "PATHWAY",
"source_id": "11111111-2222-3333-4444-555555555555",
"actions": [
{ "type": "transfer", "config": { "phone_number": "+15551234567" } }
]
}
],
"created_at": "2025-01-16T14:20:00.000Z",
"updated_at": "2025-01-16T14:20:00.000Z"
}
],
"errors": null
}
Docs for agents: llms.txt
Was this page helpful?
⌘I