Skip to main content
PUT
/
assistants
/
{assistant_id}
curl -X PUT https://api.avoca.ai/v1/assistants/asst_abc123 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Workspace-ID: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "knowledge_base": {
      "business_hours": "Now open Sundays 10am-4pm! Monday-Friday 8am-6pm, Saturday 9am-4pm",
      "services": [
        "Drain cleaning",
        "Water heater repair and installation",
        "Leak detection and repair",
        "Emergency plumbing",
        "Bathroom remodeling",
        "Sewer line repair",
        "Gas line services"
      ],
      "pricing": {
        "service_call": "$89",
        "emergency_fee": "$150",
        "sunday_surcharge": "$50"
      }
    },
    "model": {
      "systemPrompt": "You are a friendly receptionist for ABC Plumbing. We now offer Sunday service! Make sure to mention this when customers ask about availability."
    }
  }'
{
  "data": {
    "id": "asst_abc123",
    "updated_at": "2024-01-20T14:30:00Z",
    "status": "active",
    "changes_applied": [
      "knowledge_base.business_hours",
      "knowledge_base.services",
      "knowledge_base.pricing",
      "model.systemPrompt"
    ]
  },
  "meta": {
    "request_id": "req_xyz789",
    "timestamp": "2024-01-20T14:30:00Z"
  }
}
Use this endpoint to update your AI assistant’s configuration without recreating it. Changes take effect immediately for new calls.

Request

assistant_id
string
required
The unique identifier of the assistant to update
name
string
Update the assistant’s display name
voice
object
Update voice configuration
model
object
Update AI model settings
firstMessage
string
Update the greeting message
knowledge_base
object
Update business information
transfer_rules
object
Update transfer logic
status
string
Change assistant status:
  • active - Enable the assistant
  • paused - Temporarily disable
advanced_settings
object
Update advanced configurations

Response

id
string
Assistant ID
updated_at
string
ISO 8601 timestamp of update
status
string
Current assistant status
changes_applied
array
List of fields that were updated
curl -X PUT https://api.avoca.ai/v1/assistants/asst_abc123 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Workspace-ID: YOUR_WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "knowledge_base": {
      "business_hours": "Now open Sundays 10am-4pm! Monday-Friday 8am-6pm, Saturday 9am-4pm",
      "services": [
        "Drain cleaning",
        "Water heater repair and installation",
        "Leak detection and repair",
        "Emergency plumbing",
        "Bathroom remodeling",
        "Sewer line repair",
        "Gas line services"
      ],
      "pricing": {
        "service_call": "$89",
        "emergency_fee": "$150",
        "sunday_surcharge": "$50"
      }
    },
    "model": {
      "systemPrompt": "You are a friendly receptionist for ABC Plumbing. We now offer Sunday service! Make sure to mention this when customers ask about availability."
    }
  }'
{
  "data": {
    "id": "asst_abc123",
    "updated_at": "2024-01-20T14:30:00Z",
    "status": "active",
    "changes_applied": [
      "knowledge_base.business_hours",
      "knowledge_base.services",
      "knowledge_base.pricing",
      "model.systemPrompt"
    ]
  },
  "meta": {
    "request_id": "req_xyz789",
    "timestamp": "2024-01-20T14:30:00Z"
  }
}

Common Update Scenarios

Business Hours Changes

{
  "knowledge_base": {
    "business_hours": "Extended hours! Monday-Saturday 7am-8pm"
  }
}

Add Emergency Message

{
  "model": {
    "systemPrompt": "URGENT: Due to freeze warning, prioritize pipe-related emergencies."
  }
}

Temporary Pause

{
  "status": "paused",
  "firstMessage": "We're at capacity today. Please leave a message and we'll call back ASAP."
}

Price Updates

{
  "knowledge_base": {
    "pricing": {
      "service_call": "$99",
      "emergency_fee": "$175"
    }
  }
}