Skip to main content
PUT
/
v1
/
flow
/
agents
/
{agent_id}
/
demote
Demote agent v1
curl --request PUT \
  --url https://flow.seekr.com/v1/flow/agents/{agent_id}/demote \
  --header 'Authorization: <api-key>'
import requests

url = "https://flow.seekr.com/v1/flow/agents/{agent_id}/demote"

headers = {"Authorization": "<api-key>"}

response = requests.put(url, headers=headers)

print(response.text)
const options = {method: 'PUT', headers: {Authorization: '<api-key>'}};

fetch('https://flow.seekr.com/v1/flow/agents/{agent_id}/demote', 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://flow.seekr.com/v1/flow/agents/{agent_id}/demote",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);

$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://flow.seekr.com/v1/flow/agents/{agent_id}/demote"

req, _ := http.NewRequest("PUT", url, nil)

req.Header.Add("Authorization", "<api-key>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.put("https://flow.seekr.com/v1/flow/agents/{agent_id}/demote")
.header("Authorization", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://flow.seekr.com/v1/flow/agents/{agent_id}/demote")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'

response = http.request(request)
puts response.read_body
{
  "id": "<string>",
  "name": "<string>",
  "instructions": "<string>",
  "user_id": "<string>",
  "team_id": "<string>",
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z",
  "model_id": "<string>",
  "output": {
    "instructions": "<string>",
    "model_id": "<string>",
    "temperature": 1
  },
  "temperature": 1,
  "planner_temperature": 1,
  "tools": [
    {
      "name": "<string>",
      "tool_env": {
        "FILE_SEARCH_INDEX": "<string>",
        "DOCUMENT_TOOL_DESC": "<string>",
        "EMBEDDING_MODEL": "<string>",
        "TOP_K": 10,
        "SCORE_THRESHOLD": 0
      },
      "id": "<string>"
    }
  ],
  "last_deployed_at": "2023-11-07T05:31:56Z",
  "active_duration": 0
}
{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}
Move an agent to an inactive state. The agent’s configuration is retained but it will not handle inference requests. When demoting an agent that has other agents linked as tools, the linked agents are not automatically demoted — each must be demoted individually if needed. An agent that is linked as a tool to another agent cannot be demoted while that relationship is active. Demote the parent agent first, or unlink the agent-as-tool.

Authorizations

Authorization
string
header
required

Your Seekr API key, sent in the Authorization header with no 'Bearer' prefix.

Path Parameters

agent_id
string
required

Response

Successful Response

id
string
required
name
string
required
instructions
string
required
status
enum<string>
required
Available options:
Inactive,
Pending,
Active,
Updating,
Failed
reasoning_effort
enum<string>
required

Controls how much reasoning the agent uses when working through a request. Accepts low, medium, or high, where higher levels produce more thorough reasoning. The speed_optimized and performance_optimized values are only supported for backward compatibility. speed_optimized maps to low, and performance_optimized maps to high.

Available options:
low,
medium,
high,
speed_optimized,
performance_optimized
user_id
string
required
team_id
string | null
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
model_id
string | null
output
AgentOutputConfig · object | null
temperature
number | null
Required range: 0 <= x <= 2
planner_temperature
number | null
Required range: 0 <= x <= 2
tools
(FileSearch · object | WebSearch · object | RunPython · object | AgentAsTool · object | MCPConnectorTool · object)[]
last_deployed_at
string<date-time> | null
active_duration
integer
default:0
Required range: x >= 0
Last modified on July 10, 2026