List policies
curl --request GET \
--url https://api-v2.requesty.ai/v1/manage/policy \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-v2.requesty.ai/v1/manage/policy"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-v2.requesty.ai/v1/manage/policy', 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-v2.requesty.ai/v1/manage/policy",
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: Bearer <token>"
],
]);
$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-v2.requesty.ai/v1/manage/policy"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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-v2.requesty.ai/v1/manage/policy")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v2.requesty.ai/v1/manage/policy")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"policies": [
{
"id": "8f2c1e4a-3b6d-4f1a-9c7e-2d5b8a1f0e3c",
"name": "production-chat",
"config": {
"fallback": {
"models": [
{
"model": "openai/gpt-4o",
"key": "POLICY_KEY_REQUESTY_FIRST",
"retries": 2
},
{
"model": "anthropic/claude-sonnet-4",
"key": "POLICY_KEY_BYOK_FIRST",
"retries": 1
}
]
}
},
"organization_id": "5d1b9e2f-7a4c-4e8b-a3f6-1c2d3e4f5a6b",
"author_id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
"scope": "POLICY_SCOPE_ORGANIZATION"
}
]
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}List Policies
List the organization’s routing policies. Returns every organization-scoped policy with its ID, name, and configuration; policy names are returned without the policy/ prefix. Requires an API key with read manage permissions.
GET
/
v1
/
manage
/
policy
List policies
curl --request GET \
--url https://api-v2.requesty.ai/v1/manage/policy \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-v2.requesty.ai/v1/manage/policy"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-v2.requesty.ai/v1/manage/policy', 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-v2.requesty.ai/v1/manage/policy",
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: Bearer <token>"
],
]);
$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-v2.requesty.ai/v1/manage/policy"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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-v2.requesty.ai/v1/manage/policy")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v2.requesty.ai/v1/manage/policy")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"policies": [
{
"id": "8f2c1e4a-3b6d-4f1a-9c7e-2d5b8a1f0e3c",
"name": "production-chat",
"config": {
"fallback": {
"models": [
{
"model": "openai/gpt-4o",
"key": "POLICY_KEY_REQUESTY_FIRST",
"retries": 2
},
{
"model": "anthropic/claude-sonnet-4",
"key": "POLICY_KEY_BYOK_FIRST",
"retries": 1
}
]
}
},
"organization_id": "5d1b9e2f-7a4c-4e8b-a3f6-1c2d3e4f5a6b",
"author_id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
"scope": "POLICY_SCOPE_ORGANIZATION"
}
]
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}List the routing policies in your organization. Each policy includes its
id, which you pass to Update Policy or Delete Policy, its name, and its config. Names are returned without the policy/ prefix; add it when you use a policy as the model in inference requests, for example policy/production-chat.
Fallback policies → · Load balancing policies →Last modified on October 8, 2026
Was this page helpful?