# Update assistant div strong ๐Ÿ”จ In Development โ€” This section is still being developed and may change. Update an existing assistant's configuration, tools, and settings. #### Path Parameters **`assistant_id`** string required The unique identifier of the assistant to update. #### Request Body **`name`** string optional The name of the assistant. Must be unique within the organization. **`description`** string optional A brief description of the assistant's purpose and capabilities. **`model`** string optional The AI model to use for this assistant. [View available models โ†’](/docs/documentation/getting-started/models) **`instructions`** string optional System instructions that define the assistant's behavior and personality. **`avatar_id`** string optional Predefined avatar identifier from the Aitronos avatar library. [View available avatars โ†’](/docs/api-reference/avatars/list) **`avatar`** string optional Custom avatar URL. Used when you want to provide your own avatar image instead of using a predefined one. **`toolConfigurations`** object optional Configuration for built-in system tools and external integrations. See [Assistant object](/docs/api-reference/objects/assistant-object) for full structure. **`systemMessage`** array optional Pre-configured system messages or input examples. An array of input message objects with texts, images, or files. **`contextStrategy`** string optional ยท Defaults to `auto` Sets the overall thread context management strategy. Values: `full`, `off`, `auto`, `saver`. **`maxToolCalls`** integer optional Maximum number of built-in tool calls allowed per response. **`parallelToolCalls`** boolean optional Whether the assistant can execute multiple tool calls simultaneously. **`accessMode`** string optional Access control for the assistant. One of `private`, `restricted`, `department`, `organization`, `global`, `public`. **`temperature`** number optional Controls randomness in responses (0.0 to 2.0). **`maxOutputSynapses`** integer optional Maximum output length in synapses. **`isActive`** boolean optional Whether the assistant is active and available for use. **`apiEnabled`** boolean optional Whether the assistant is accessible via API. Update Name ```bash curl https://api.freddy.aitronos.com/v1/assistants/asst_abc123 \ -X PUT \ -H "Authorization: Bearer $FREDDY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Updated Assistant Name" }' ``` ```python import requests response = requests.put( "https://api.freddy.aitronos.com/v1/assistants/asst_abc123", headers={ "Authorization": f"Bearer {api_key}", "Content-Type": "application/json" }, json={ "name": "Updated Assistant Name" } ) assistant = response.json() ``` ```javascript const response = await fetch('https://api.freddy.aitronos.com/v1/assistants/asst_abc123', { method: 'PUT', headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ name: 'Updated Assistant Name' }) }); const assistant = await response.json(); ``` Update Tools ```bash curl https://api.freddy.aitronos.com/v1/assistants/asst_abc123 \ -X PUT \ -H "Authorization: Bearer $FREDDY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "tools": [ { "type": "web_search", "search_context_size": "large" }, { "type": "code_interpreter" }, { "type": "function", "name": "get_weather", "description": "Get current weather", "parameters": { "type": "object", "properties": { "location": {"type": "string"} } } } ] }' ``` ```python import requests response = requests.put( "https://api.freddy.aitronos.com/v1/assistants/asst_abc123", headers={ "Authorization": f"Bearer {api_key}", "Content-Type": "application/json" }, json={ "tools": [ { "type": "web_search", "search_context_size": "large" }, { "type": "code_interpreter" }, { "type": "function", "name": "get_weather", "description": "Get current weather", "parameters": { "type": "object", "properties": { "location": {"type": "string"} } } } ] } ) assistant = response.json() ``` ```javascript const response = await fetch('https://api.freddy.aitronos.com/v1/assistants/asst_abc123', { method: 'PUT', headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ tools: [ { type: 'web_search', 'search_context_size': 'large' }, { type: 'code_interpreter' }, { type: 'function', name: 'get_weather', description: 'Get current weather', parameters: { type: 'object', properties: { location: { type: 'string' } } } } ] }) }); const assistant = await response.json(); ``` ## Response **Returns** The updated [Assistant object](/docs/api-reference/objects/assistant-object) with all configuration details. 200 OK ```json { "id": "asst_abc123", "name": "Updated Assistant Name", "description": "AI assistant for research and analysis", "model": "gpt-4o", "instructions": "You are a research assistant that helps find and analyze information.", "tools": [ { "type": "web_search", "search_context_size": "large" }, { "type": "code_interpreter" }, { "type": "function", "name": "get_weather", "description": "Get current weather", "parameters": { "type": "object", "properties": { "location": {"type": "string"} } } } ], "access_mode": "private", "is_active": true, "temperature": 0.3, "max_output_synapses": 4000, "created_at": "2024-01-15T10:30:00Z", "updated_at": "2024-01-20T14:45:00Z", "organization_id": "org_abc123", "created_by": "user_abc123" } ``` Errors ```json { "error": { "code": "assistant_not_found", "message": "Assistant with ID 'asst_abc123' not found", "trace_id": "trace_abc123" } } ```