Update Agent
Update an agent’s configuration, tools, or settings
curl --request PATCH \
--url https://api.ag.dev/v0.1/agents/{agentId} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"goalPrompt": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": true,
"tools": [
{
"source": "builtin"
}
],
"resultSchema": {
"type": "<string>",
"properties": {},
"required": [
"<string>"
]
}
}
'import requests
url = "https://api.ag.dev/v0.1/agents/{agentId}"
payload = {
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"goalPrompt": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": True,
"tools": [{ "source": "builtin" }],
"resultSchema": {
"type": "<string>",
"properties": {},
"required": ["<string>"]
}
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
webhookUrl: '<string>',
goalPrompt: '<string>',
customPlanningInstructions: '<string>',
customToolCallInstructions: '<string>',
customResultInstructions: '<string>',
enableContextCompression: true,
tools: [{source: 'builtin'}],
resultSchema: {type: '<string>', properties: {}, required: ['<string>']}
})
};
fetch('https://api.ag.dev/v0.1/agents/{agentId}', 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.ag.dev/v0.1/agents/{agentId}",
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>',
'description' => '<string>',
'webhookUrl' => '<string>',
'goalPrompt' => '<string>',
'customPlanningInstructions' => '<string>',
'customToolCallInstructions' => '<string>',
'customResultInstructions' => '<string>',
'enableContextCompression' => true,
'tools' => [
[
'source' => 'builtin'
]
],
'resultSchema' => [
'type' => '<string>',
'properties' => [
],
'required' => [
'<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ag.dev/v0.1/agents/{agentId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.ag.dev/v0.1/agents/{agentId}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ag.dev/v0.1/agents/{agentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"modelStackId": "<string>",
"inputSchema": {},
"goalPrompt": "<string>",
"tools": [
{
"source": "builtin",
"type": "searchWeb"
}
],
"resultType": "document",
"isActive": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": true,
"resultSchema": {}
}Authorizations
Provide either X-API-Key: or Authorization: Bearer
Path Parameters
Agent ID
Body
All fields are optional for partial updates
anthropic/default, anthropic/default-next, openai/default, openai/reasoning, openai/reasoning-low, hybrid/reasoning-low Show child attributes
Show child attributes
Whether to enable context compression when agent run becomes too long
1- Option 1
- Option 2
Show child attributes
Show child attributes
document, json Show child attributes
Show child attributes
Response
Agent updated successfully
Unique identifier for the agent
The model stack used by the agent
JSON schema defining input structure
The main goal prompt for the agent
Available tools for the agent
- Option 1
- Option 2
Show child attributes
Show child attributes
Type of result the agent produces
document, json Whether the agent is active
Agent creation timestamp
Agent last update timestamp
Human-readable name for the agent
Human-readable description for the agent
Webhook URL for run completion notifications
Custom planning instructions
Custom tool call instructions
Custom result formatting instructions
Whether context compression is enabled
JSON schema for result validation (only for json result type)
curl --request PATCH \
--url https://api.ag.dev/v0.1/agents/{agentId} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"goalPrompt": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": true,
"tools": [
{
"source": "builtin"
}
],
"resultSchema": {
"type": "<string>",
"properties": {},
"required": [
"<string>"
]
}
}
'import requests
url = "https://api.ag.dev/v0.1/agents/{agentId}"
payload = {
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"goalPrompt": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": True,
"tools": [{ "source": "builtin" }],
"resultSchema": {
"type": "<string>",
"properties": {},
"required": ["<string>"]
}
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
webhookUrl: '<string>',
goalPrompt: '<string>',
customPlanningInstructions: '<string>',
customToolCallInstructions: '<string>',
customResultInstructions: '<string>',
enableContextCompression: true,
tools: [{source: 'builtin'}],
resultSchema: {type: '<string>', properties: {}, required: ['<string>']}
})
};
fetch('https://api.ag.dev/v0.1/agents/{agentId}', 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.ag.dev/v0.1/agents/{agentId}",
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>',
'description' => '<string>',
'webhookUrl' => '<string>',
'goalPrompt' => '<string>',
'customPlanningInstructions' => '<string>',
'customToolCallInstructions' => '<string>',
'customResultInstructions' => '<string>',
'enableContextCompression' => true,
'tools' => [
[
'source' => 'builtin'
]
],
'resultSchema' => [
'type' => '<string>',
'properties' => [
],
'required' => [
'<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ag.dev/v0.1/agents/{agentId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.ag.dev/v0.1/agents/{agentId}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ag.dev/v0.1/agents/{agentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"goalPrompt\": \"<string>\",\n \"customPlanningInstructions\": \"<string>\",\n \"customToolCallInstructions\": \"<string>\",\n \"customResultInstructions\": \"<string>\",\n \"enableContextCompression\": true,\n \"tools\": [\n {\n \"source\": \"builtin\"\n }\n ],\n \"resultSchema\": {\n \"type\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"modelStackId": "<string>",
"inputSchema": {},
"goalPrompt": "<string>",
"tools": [
{
"source": "builtin",
"type": "searchWeb"
}
],
"resultType": "document",
"isActive": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"description": "<string>",
"webhookUrl": "<string>",
"customPlanningInstructions": "<string>",
"customToolCallInstructions": "<string>",
"customResultInstructions": "<string>",
"enableContextCompression": true,
"resultSchema": {}
}