curl --request PATCH \
--url https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"auto_approve": true,
"chat": [
"<string>"
],
"embedding": [
"<string>"
],
"image": [
"<string>"
],
"transcription": [
"<string>"
],
"speech": [
"<string>"
],
"decision": [
"<string>"
]
}
'import requests
url = "https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}"
payload = {
"name": "<string>",
"auto_approve": True,
"chat": ["<string>"],
"embedding": ["<string>"],
"image": ["<string>"],
"transcription": ["<string>"],
"speech": ["<string>"],
"decision": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
auto_approve: true,
chat: ['<string>'],
embedding: ['<string>'],
image: ['<string>'],
transcription: ['<string>'],
speech: ['<string>'],
decision: ['<string>']
})
};
fetch('https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}', 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/access-list/{access_list_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'auto_approve' => true,
'chat' => [
'<string>'
],
'embedding' => [
'<string>'
],
'image' => [
'<string>'
],
'transcription' => [
'<string>'
],
'speech' => [
'<string>'
],
'decision' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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-v2.requesty.ai/v1/manage/access-list/{access_list_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}Update Access List
Update an access list’s name, allowed models, or auto-approve setting. name and auto_approve only change when included. The model fields are a set operation, not an add: if the request includes any model field, the list ends up with exactly the models sent and every modality left out is cleared. To add models, get the list, edit the arrays and send all modalities back. Requires an API key with write manage permissions.
curl --request PATCH \
--url https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"auto_approve": true,
"chat": [
"<string>"
],
"embedding": [
"<string>"
],
"image": [
"<string>"
],
"transcription": [
"<string>"
],
"speech": [
"<string>"
],
"decision": [
"<string>"
]
}
'import requests
url = "https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}"
payload = {
"name": "<string>",
"auto_approve": True,
"chat": ["<string>"],
"embedding": ["<string>"],
"image": ["<string>"],
"transcription": ["<string>"],
"speech": ["<string>"],
"decision": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
auto_approve: true,
chat: ['<string>'],
embedding: ['<string>'],
image: ['<string>'],
transcription: ['<string>'],
speech: ['<string>'],
decision: ['<string>']
})
};
fetch('https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}', 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/access-list/{access_list_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'auto_approve' => true,
'chat' => [
'<string>'
],
'embedding' => [
'<string>'
],
'image' => [
'<string>'
],
'transcription' => [
'<string>'
],
'speech' => [
'<string>'
],
'decision' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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-v2.requesty.ai/v1/manage/access-list/{access_list_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v2.requesty.ai/v1/manage/access-list/{access_list_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"auto_approve\": true,\n \"chat\": [\n \"<string>\"\n ],\n \"embedding\": [\n \"<string>\"\n ],\n \"image\": [\n \"<string>\"\n ],\n \"transcription\": [\n \"<string>\"\n ],\n \"speech\": [\n \"<string>\"\n ],\n \"decision\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}{
"error": {
"origin": "router",
"message": "<string>"
}
}name and auto_approve are optional and only change when you include them.
chat, decision, embedding, image, transcription, speech), the access list ends up with exactly the models you send, and every modality you leave out is cleared.For example, sending only chat to a list that also has embedding models removes the embedding models.{
"chat": ["openai/gpt-4o", "anthropic/claude-sonnet-4"],
"embedding": ["openai/text-embedding-3-small"],
"image": [],
"transcription": [],
"speech": [],
"decision": []
}
name) leaves the models unchanged.Authorizations
API key for authentication
Path Parameters
The access list ID
Body
All fields are optional. name and auto_approve only change when included. The model fields replace the whole model list: if any model field is included, every modality not included is cleared. Send all modalities to keep them.
New name for the access list
Whether new models matching the list patterns are automatically approved
Allowed chat/completion model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Allowed embedding model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Allowed image generation model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Allowed transcription model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Allowed speech model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Allowed decision model identifiers. Replaces the current list; if any model field is sent and this one is omitted, it is cleared
Response
Access list updated successfully
Was this page helpful?