curl --request PATCH \
--url https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"userFavorite": true,
"agent": {
"handle": "<string>",
"description": "<string>",
"avatar_url": "<string>",
"max_steps_per_run": 123,
"visualization_enabled": true
},
"instructions": "<string>",
"generation_settings": {
"model_id": "<string>",
"provider_id": "<string>",
"temperature": 123,
"reasoning_effort": "<string>"
},
"tags": [
{
"name": "<string>"
}
],
"editors": [
{
"user_id": "<string>",
"email": "<string>",
"full_name": "<string>"
}
],
"skills": [
{
"sId": "<string>",
"name": "<string>"
}
],
"toolset": [
{
"name": "<string>",
"description": "<string>",
"type": "MCP",
"configuration": {
"mcp_server_name": "<string>"
}
}
]
}
'import requests
url = "https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}"
payload = {
"userFavorite": True,
"agent": {
"handle": "<string>",
"description": "<string>",
"avatar_url": "<string>",
"max_steps_per_run": 123,
"visualization_enabled": True
},
"instructions": "<string>",
"generation_settings": {
"model_id": "<string>",
"provider_id": "<string>",
"temperature": 123,
"reasoning_effort": "<string>"
},
"tags": [{ "name": "<string>" }],
"editors": [
{
"user_id": "<string>",
"email": "<string>",
"full_name": "<string>"
}
],
"skills": [
{
"sId": "<string>",
"name": "<string>"
}
],
"toolset": [
{
"name": "<string>",
"description": "<string>",
"type": "MCP",
"configuration": { "mcp_server_name": "<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({
userFavorite: true,
agent: {
handle: '<string>',
description: '<string>',
avatar_url: '<string>',
max_steps_per_run: 123,
visualization_enabled: true
},
instructions: '<string>',
generation_settings: {
model_id: '<string>',
provider_id: '<string>',
temperature: 123,
reasoning_effort: '<string>'
},
tags: [{name: '<string>'}],
editors: [{user_id: '<string>', email: '<string>', full_name: '<string>'}],
skills: [{sId: '<string>', name: '<string>'}],
toolset: [
{
name: '<string>',
description: '<string>',
type: 'MCP',
configuration: {mcp_server_name: '<string>'}
}
]
})
};
fetch('https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}', 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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}",
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([
'userFavorite' => true,
'agent' => [
'handle' => '<string>',
'description' => '<string>',
'avatar_url' => '<string>',
'max_steps_per_run' => 123,
'visualization_enabled' => true
],
'instructions' => '<string>',
'generation_settings' => [
'model_id' => '<string>',
'provider_id' => '<string>',
'temperature' => 123,
'reasoning_effort' => '<string>'
],
'tags' => [
[
'name' => '<string>'
]
],
'editors' => [
[
'user_id' => '<string>',
'email' => '<string>',
'full_name' => '<string>'
]
],
'skills' => [
[
'sId' => '<string>',
'name' => '<string>'
]
],
'toolset' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => 'MCP',
'configuration' => [
'mcp_server_name' => '<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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}"
payload := strings.NewReader("{\n \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}")
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 \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"agentConfiguration": {
"id": 12345,
"sId": "7f3a9c2b1e",
"version": 2,
"versionCreatedAt": "2023-06-15T14:30:00Z",
"versionAuthorId": "0ec9852c2f",
"name": "Customer Support Agent",
"description": "An AI agent designed to handle customer support inquiries",
"instructions": "Always greet the customer politely and try to resolve their issue efficiently.",
"pictureUrl": "https://example.com/agent-images/support-agent.png",
"status": "active",
"scope": "workspace",
"userFavorite": true,
"model": {
"providerId": "openai",
"modelId": "gpt-4",
"temperature": 0.7
},
"actions": [],
"maxStepsPerRun": 10,
"templateId": "b4e2f1a9c7"
},
"skippedActions": [
{
"name": "<string>",
"reason": "<string>"
}
]
}Update agent configuration
Update the agent configuration identified by in the workspace identified by .
curl --request PATCH \
--url https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"userFavorite": true,
"agent": {
"handle": "<string>",
"description": "<string>",
"avatar_url": "<string>",
"max_steps_per_run": 123,
"visualization_enabled": true
},
"instructions": "<string>",
"generation_settings": {
"model_id": "<string>",
"provider_id": "<string>",
"temperature": 123,
"reasoning_effort": "<string>"
},
"tags": [
{
"name": "<string>"
}
],
"editors": [
{
"user_id": "<string>",
"email": "<string>",
"full_name": "<string>"
}
],
"skills": [
{
"sId": "<string>",
"name": "<string>"
}
],
"toolset": [
{
"name": "<string>",
"description": "<string>",
"type": "MCP",
"configuration": {
"mcp_server_name": "<string>"
}
}
]
}
'import requests
url = "https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}"
payload = {
"userFavorite": True,
"agent": {
"handle": "<string>",
"description": "<string>",
"avatar_url": "<string>",
"max_steps_per_run": 123,
"visualization_enabled": True
},
"instructions": "<string>",
"generation_settings": {
"model_id": "<string>",
"provider_id": "<string>",
"temperature": 123,
"reasoning_effort": "<string>"
},
"tags": [{ "name": "<string>" }],
"editors": [
{
"user_id": "<string>",
"email": "<string>",
"full_name": "<string>"
}
],
"skills": [
{
"sId": "<string>",
"name": "<string>"
}
],
"toolset": [
{
"name": "<string>",
"description": "<string>",
"type": "MCP",
"configuration": { "mcp_server_name": "<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({
userFavorite: true,
agent: {
handle: '<string>',
description: '<string>',
avatar_url: '<string>',
max_steps_per_run: 123,
visualization_enabled: true
},
instructions: '<string>',
generation_settings: {
model_id: '<string>',
provider_id: '<string>',
temperature: 123,
reasoning_effort: '<string>'
},
tags: [{name: '<string>'}],
editors: [{user_id: '<string>', email: '<string>', full_name: '<string>'}],
skills: [{sId: '<string>', name: '<string>'}],
toolset: [
{
name: '<string>',
description: '<string>',
type: 'MCP',
configuration: {mcp_server_name: '<string>'}
}
]
})
};
fetch('https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}', 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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}",
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([
'userFavorite' => true,
'agent' => [
'handle' => '<string>',
'description' => '<string>',
'avatar_url' => '<string>',
'max_steps_per_run' => 123,
'visualization_enabled' => true
],
'instructions' => '<string>',
'generation_settings' => [
'model_id' => '<string>',
'provider_id' => '<string>',
'temperature' => 123,
'reasoning_effort' => '<string>'
],
'tags' => [
[
'name' => '<string>'
]
],
'editors' => [
[
'user_id' => '<string>',
'email' => '<string>',
'full_name' => '<string>'
]
],
'skills' => [
[
'sId' => '<string>',
'name' => '<string>'
]
],
'toolset' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => 'MCP',
'configuration' => [
'mcp_server_name' => '<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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}"
payload := strings.NewReader("{\n \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\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://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://dust.tt/api/v1/w/{wId}/assistant/agent_configurations/{sId}")
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 \"userFavorite\": true,\n \"agent\": {\n \"handle\": \"<string>\",\n \"description\": \"<string>\",\n \"avatar_url\": \"<string>\",\n \"max_steps_per_run\": 123,\n \"visualization_enabled\": true\n },\n \"instructions\": \"<string>\",\n \"generation_settings\": {\n \"model_id\": \"<string>\",\n \"provider_id\": \"<string>\",\n \"temperature\": 123,\n \"reasoning_effort\": \"<string>\"\n },\n \"tags\": [\n {\n \"name\": \"<string>\"\n }\n ],\n \"editors\": [\n {\n \"user_id\": \"<string>\",\n \"email\": \"<string>\",\n \"full_name\": \"<string>\"\n }\n ],\n \"skills\": [\n {\n \"sId\": \"<string>\",\n \"name\": \"<string>\"\n }\n ],\n \"toolset\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"MCP\",\n \"configuration\": {\n \"mcp_server_name\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"agentConfiguration": {
"id": 12345,
"sId": "7f3a9c2b1e",
"version": 2,
"versionCreatedAt": "2023-06-15T14:30:00Z",
"versionAuthorId": "0ec9852c2f",
"name": "Customer Support Agent",
"description": "An AI agent designed to handle customer support inquiries",
"instructions": "Always greet the customer politely and try to resolve their issue efficiently.",
"pictureUrl": "https://example.com/agent-images/support-agent.png",
"status": "active",
"scope": "workspace",
"userFavorite": true,
"model": {
"providerId": "openai",
"modelId": "gpt-4",
"temperature": 0.7
},
"actions": [],
"maxStepsPerRun": 10,
"templateId": "b4e2f1a9c7"
},
"skippedActions": [
{
"name": "<string>",
"reason": "<string>"
}
]
}Authorizations
Your DUST API key is a Bearer token.
Body
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Replaces the skills enabled on the agent configuration.
Show child attributes
Show child attributes
Replaces the full set of tools on the agent. Any tool not present in this array is removed, so send the complete desired toolset. Each entry resolves an MCP server by name (see configuration.mcp_server_name). Entries that cannot be resolved are not applied and are returned in the skippedActions field of the response rather than causing the whole request to fail.
Show child attributes
Show child attributes
Response
Successfully updated agent configuration
Show child attributes
Show child attributes
Toolset entries that could not be applied (e.g. the referenced MCP server was not found, is not shared to an accessible space, or the name was ambiguous). The request still succeeds; inspect this list to confirm every intended tool was attached.
Show child attributes
Show child attributes