Reset a route to healthy
curl --request POST \
--url https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"upstream_model": "gpt-4o-mini"
}
'import requests
url = "https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset"
payload = { "upstream_model": "gpt-4o-mini" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({upstream_model: 'gpt-4o-mini'})
};
fetch('https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset', 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://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset",
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([
'upstream_model' => 'gpt-4o-mini'
]),
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://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset"
payload := strings.NewReader("{\n \"upstream_model\": \"gpt-4o-mini\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"upstream_model\": \"gpt-4o-mini\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"upstream_model\": \"gpt-4o-mini\"\n}"
response = http.request(request)
puts response.read_body{
"provider_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"upstream_model": "<string>",
"was_ejected": true,
"shared_state_cleared": true
}{
"error": "BadRequest",
"message": "request_timeout_secs must be between 1 and 3600"
}LLM Gateway: Route Health
Reset a route to healthy
Force a (provider, upstream model) route back to healthy, clearing
any active cooldown both on the local pod and across the fleet. Useful
after an upstream incident is resolved and you don’t want to wait for
natural recovery.
POST
/
admin
/
llm-gw
/
route-health
/
{provider_id}
/
reset
Reset a route to healthy
curl --request POST \
--url https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"upstream_model": "gpt-4o-mini"
}
'import requests
url = "https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset"
payload = { "upstream_model": "gpt-4o-mini" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({upstream_model: 'gpt-4o-mini'})
};
fetch('https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset', 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://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset",
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([
'upstream_model' => 'gpt-4o-mini'
]),
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://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset"
payload := strings.NewReader("{\n \"upstream_model\": \"gpt-4o-mini\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"upstream_model\": \"gpt-4o-mini\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{host}/api/llm-gateway/admin/llm-gw/route-health/{provider_id}/reset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"upstream_model\": \"gpt-4o-mini\"\n}"
response = http.request(request)
puts response.read_body{
"provider_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"upstream_model": "<string>",
"was_ejected": true,
"shared_state_cleared": true
}{
"error": "BadRequest",
"message": "request_timeout_secs must be between 1 and 3600"
}Authorizations
JWT obtained through Barndoor's authentication flow. Pass the token
verbatim in Authorization: Bearer <token>. Use the Barndoor SDK's
loginInteractive() helper to obtain a token in scripts and notebooks.
Path Parameters
Body
application/json
Example:
"gpt-4o-mini"
⌘I