> ## Documentation Index
> Fetch the complete documentation index at: https://docs.callhq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Assistant



## OpenAPI

````yaml patch /assistants/{id}
openapi: 3.1.0
info:
  title: OpenAPI Plant Store
  description: >-
    A sample API that uses a plant store as an example to demonstrate features
    in the OpenAPI specification
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.callhq.ai/api
security:
  - apiKeyAuth: []
paths:
  /assistants/{id}:
    patch:
      tags:
        - Assistants
      summary: Update Assistant
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: Assistant ID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: >-
                Fields to update. Only `name`, `status`, and `description` will
                be updated locally.
              properties:
                name:
                  type: string
                  example: Updated Assistant
                status:
                  type: boolean
                  example: true
                description:
                  type: string
                  example: This assistant handles hospitality queries.
                voice:
                  type: object
                  description: >-
                    Voice configuration. Supports ElevenLabs or Sarvam. For
                    Sarvam, voiceId, model, and language are required.
                  properties:
                    provider:
                      type: string
                      enum:
                        - elevenlabs
                        - sarvam
                      description: Voice provider. Use 'elevenlabs' or 'sarvam'.
                      example: sarvam
                    voiceId:
                      type: string
                      description: >-
                        Voice identifier. For Sarvam, use voice names like
                        'anushka'. For ElevenLabs, use their voice IDs.
                      example: anushka
                    model:
                      type: string
                      description: >-
                        Required for both ElevenLabs and Sarvam. Model name
                        (e.g. 'bulbul:v2' for Sarvam or 'eleven_turbo_v2_5' for
                        ElevenLabs).
                      example: bulbul:v2
                    language:
                      type: string
                      description: >-
                        Required for Sarvam. Free-form language value (e.g.
                        'hi', 'en').
                      example: en
                    speed:
                      type: number
                      description: Speech rate. Default 1.
                      example: 1
                transcriber:
                  type: object
                  description: Speech-to-text configuration.
                  properties:
                    provider:
                      type: string
                      enum:
                        - AssemblyAI
                        - Azure
                        - Deepgram
                        - ElevenLabs
                        - Gladia
                        - Google
                        - Sarvam
                        - Smallest
                      example: Deepgram
                    model:
                      type: string
                      description: >-
                        Model for the provider. Use one of: AssemblyAI
                        (universal), Azure (azure), Deepgram (nova-3, nova-2,
                        nova-3-medical, nova-2-atc, nova-2-automotive,
                        nova-2-conversationalai, nova-2-drivethru,
                        nova-2-finance, nova-2-medical, nova-2-meeting),
                        ElevenLabs (Scribe V2 Realtime), Gladia (Gladia
                        Solaria-1), Google (latest_long), Sarvam (saaras:v2.5,
                        saaras:v3, saarika:v2.5), Smallest (Smallest Lightning).
                      example: nova-3
                    language:
                      type: string
                      description: Language for transcription. Select from supported codes.
                      enum:
                        - bn
                        - en
                        - es
                        - fr
                        - gu
                        - hi
                        - id
                        - inm
                        - kn
                        - ml
                        - mr
                        - nl
                        - or
                        - pa
                        - pt
                        - ta
                        - te
                        - th
                        - vi
                      example: en
                model:
                  type: object
                  description: >-
                    LLM configuration. Supported providers and models: openai
                    (gpt-4.1-mini, gpt-4.1, gpt-4.1-nano, gpt-4o-mini, gpt-4o,
                    gpt-3.5-turbo), azure (gpt-4.1-mini-cluster,
                    gpt-4.1-cluster, gpt-4.1-nano-cluster, gpt-4o-mini-cluster,
                    gpt-4o-cluster, gpt-4-cluster, gpt-3.5-cluster), openrouter
                    (gpt-oss-20b, gpt-oss-120b, gpt-4, gpt-4o-mini, gpt-4o,
                    gpt-4.1, gpt-4.1-nano, gpt-4.1-mini, claude-sonnet-4),
                    deepseek (deepseek-chat), anthropic (sonnet-4).
                  properties:
                    provider:
                      type: string
                      enum:
                        - openai
                        - azure
                        - openrouter
                        - deepseek
                        - anthropic
                      example: openai
                    model:
                      type: string
                      description: >-
                        Model name. Must match the provider. Examples: gpt-4o,
                        gpt-4.1-mini, gpt-4.1-nano, deepseek-chat, sonnet-4,
                        claude-sonnet-4.
                      example: gpt-4o
                    temperature:
                      type: number
                      example: 0.5
                    maxTokens:
                      type: integer
                      example: 250
                    emotionRecognitionEnabled:
                      type: boolean
                      example: false
                    messages:
                      type: array
                      items:
                        type: object
                        properties:
                          role:
                            type: string
                            example: system
                          content:
                            type: string
                            example: >-
                              This is a blank template with minimal defaults,
                              you can change the model, temperature, and
                              messages.
                    knowledgeBase:
                      type: object
                      description: >-
                        Knowledge base config. Can be at model level or root
                        level.
                      properties:
                        fileIds:
                          type: array
                          items:
                            type: string
                firstMessage:
                  type: string
                  example: Hi! How can I help you today?
                firstMessageMode:
                  type: string
                  enum:
                    - assistant-speaks-first
                    - user-speaks-first
                  example: assistant-speaks-first
                backgroundSound:
                  type: string
                  example: office
                silenceTimeoutSeconds:
                  type: integer
                  example: 10
                backgroundDenoisingEnabled:
                  type: boolean
                  example: true
                firstMessageInterruptionsEnabled:
                  type: boolean
                  example: false
                maxDurationSeconds:
                  type: integer
                  example: 3600
                analysisPlan:
                  type: object
                  description: >-
                    Analysis plan configuration for call insights and follow-up
                    actions.
                knowledgeBase:
                  type: object
                  description: >-
                    Knowledge base at root level. Files are validated against
                    organization ownership.
                  properties:
                    fileIds:
                      type: array
                      items:
                        type: string
                hangupUsingPrompt:
                  type: object
                  description: Configuration for ending the call using a custom prompt.
                  properties:
                    enabled:
                      type: boolean
                      example: false
                    prompt:
                      type: string
                      description: Custom goodbye message when ending the call.
                      example: Thank you for calling. Goodbye!
      responses:
        '200':
          description: Assistant updated successfully
        '404':
          description: Assistant not found
      security:
        - apiKeyAuth: []
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````