For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://docs.synthflow.ai/api-reference/platform-api/agents/llms.txt. For full documentation content, see https://docs.synthflow.ai/api-reference/platform-api/agents/llms-full.txt.

# Get an agent

GET https://api.synthflow.ai/v2/assistants/{model_id}



Reference: https://docs.synthflow.ai/api-reference/platform-api/agents/get-assistant

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: Synthflow APIs
  version: 1.0.0
paths:
  /assistants/{model_id}:
    get:
      operationId: get-assistant
      summary: Get an agent
      description: ''
      tags:
        - ''
      parameters:
        - name: model_id
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/model_id'
        - name: Authorization
          in: header
          description: Bearer authentication
          required: true
          schema:
            type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get-assistant_Response_200'
        '400':
          description: '400'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Get-assistantRequestBadRequestError'
servers:
  - url: https://api.synthflow.ai/v2
  - url: https://api.us.synthflow.ai/v2
components:
  schemas:
    model_id:
      type: string
      description: Agent ID. You can find it on the agent’s page in your dashboard.
      title: model_id
    status:
      type: string
      description: Whether the request was successful.
      title: status
    pagination:
      type: object
      properties:
        total_records:
          type: integer
        limit:
          type: integer
        offset:
          type: integer
      title: pagination
    AgentModelEndCallReasonsV2ItemsClosingMessageMode:
      type: string
      enum:
        - static
        - prompt
        - none
      description: >-
        Controls how the farewell message is generated. static: message is
        spoken verbatim. prompt: message is an instruction to the LLM. none: LLM
        generates its own farewell.
      title: AgentModelEndCallReasonsV2ItemsClosingMessageMode
    AgentModelEndCallReasonsV2Items:
      type: object
      properties:
        reason:
          type: string
          description: The condition that triggers call termination.
        closing_message_mode:
          $ref: >-
            #/components/schemas/AgentModelEndCallReasonsV2ItemsClosingMessageMode
          description: >-
            Controls how the farewell message is generated. static: message is
            spoken verbatim. prompt: message is an instruction to the LLM. none:
            LLM generates its own farewell.
        closing_message:
          type: string
          description: >-
            The closing message content. Interpretation depends on
            closing_message_mode.
      required:
        - reason
      title: AgentModelEndCallReasonsV2Items
    AgentModelMaxDuration:
      type: object
      properties:
        duration_seconds:
          type: integer
          description: Maximum length of the call in seconds.
        is_enabled:
          type: boolean
          description: Whether there's a limit on call length.
      title: AgentModelMaxDuration
    AgentModelVoicemailMessageMode:
      type: string
      enum:
        - exact_message
        - prompt
      description: The mode used to generate the voicemail message.
      title: AgentModelVoicemailMessageMode
    AgentModelVoicemailMessage:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether voicemail message leaving is enabled.
        mode:
          $ref: '#/components/schemas/AgentModelVoicemailMessageMode'
          description: The mode used to generate the voicemail message.
        exact_message:
          type: string
          description: >-
            The exact message to leave on the voicemail. Used when mode is
            `exact_message`.
        prompt:
          type: string
          description: >-
            A prompt used to generate the voicemail message. Used when mode is
            `prompt`.
      description: >-
        Configuration for the message left when a voicemail is detected.
        Requires `greeting_message_mode` to be set to `human`.
      title: AgentModelVoicemailMessage
    type:
      type: string
      enum:
        - outbound
        - inbound
        - widget
      description: Agent type.
      title: type
    name:
      type: string
      description: Agent name.
      title: name
    timezone:
      type: string
      enum:
        - Africa/Accra
        - Africa/Addis_Ababa
        - Africa/Algiers
        - Africa/Asmara
        - Africa/Bamako
        - Africa/Bangui
        - Africa/Banjul
        - Africa/Bissau
        - Africa/Blantyre
        - Africa/Brazzaville
        - Africa/Bujumbura
        - Africa/Cairo
        - Africa/Casablanca
        - Africa/Ceuta
        - Africa/Conakry
        - Africa/Dakar
        - Africa/Dar_es_Salaam
        - Africa/Djibouti
        - Africa/Douala
        - Africa/El_Aaiun
        - Africa/Freetown
        - Africa/Gaborone
        - Africa/Harare
        - Africa/Johannesburg
        - Africa/Juba
        - Africa/Kampala
        - Africa/Khartoum
        - Africa/Kigali
        - Africa/Kinshasa
        - Africa/Lagos
        - Africa/Libreville
        - Africa/Lome
        - Africa/Luanda
        - Africa/Lubumbashi
        - Africa/Lusaka
        - Africa/Malabo
        - Africa/Maputo
        - Africa/Maseru
        - Africa/Mbabane
        - Africa/Mogadishu
        - Africa/Monrovia
        - Africa/Nairobi
        - Africa/Ndjamena
        - Africa/Niamey
        - Africa/Nouakchott
        - Africa/Ouagadougou
        - Africa/Porto-Novo
        - Africa/Sao_Tome
        - Africa/Tripoli
        - Africa/Tunis
        - Africa/Windhoek
        - America/Adak
        - America/Anchorage
        - America/Anguilla
        - America/Antigua
        - America/Araguaina
        - America/Argentina/Buenos_Aires
        - America/Argentina/Catamarca
        - America/Argentina/Cordoba
        - America/Argentina/Jujuy
        - America/Argentina/La_Rioja
        - America/Argentina/Mendoza
        - America/Argentina/Rio_Gallegos
        - America/Argentina/Salta
        - America/Argentina/San_Juan
        - America/Argentina/San_Luis
        - America/Argentina/Tucuman
        - America/Argentina/Ushuaia
        - America/Aruba
        - America/Asuncion
        - America/Atikokan
        - America/Bahia
        - America/Bahia_Banderas
        - America/Barbados
        - America/Belem
        - America/Belize
        - America/Blanc-Sablon
        - America/Boa_Vista
        - America/Bogota
        - America/Boise
        - America/Cambridge_Bay
        - America/Campo_Grande
        - America/Cancun
        - America/Caracas
        - America/Cayenne
        - America/Cayman
        - America/Chicago
        - America/Chihuahua
        - America/Ciudad_Juarez
        - America/Costa_Rica
        - America/Creston
        - America/Cuiaba
        - America/Curacao
        - America/Danmarkshavn
        - America/Dawson
        - America/Dawson_Creek
        - America/Denver
        - America/Detroit
        - America/Dominica
        - America/Edmonton
        - America/Eirunepe
        - America/El_Salvador
        - America/Fort_Nelson
        - America/Fortaleza
        - America/Glace_Bay
        - America/Goose_Bay
        - America/Grand_Turk
        - America/Grenada
        - America/Guadeloupe
        - America/Guatemala
        - America/Guayaquil
        - America/Guyana
        - America/Halifax
        - America/Havana
        - America/Hermosillo
        - America/Indiana/Indianapolis
        - America/Indiana/Knox
        - America/Indiana/Marengo
        - America/Indiana/Petersburg
        - America/Indiana/Tell_City
        - America/Indiana/Vevay
        - America/Indiana/Vincennes
        - America/Indiana/Winamac
        - America/Inuvik
        - America/Iqaluit
        - America/Jamaica
        - America/Juneau
        - America/Kentucky/Louisville
        - America/Kentucky/Monticello
        - America/Kralendijk
        - America/La_Paz
        - America/Lima
        - America/Los_Angeles
        - America/Lower_Princes
        - America/Maceio
        - America/Managua
        - America/Manaus
        - America/Marigot
        - America/Martinique
        - America/Matamoros
        - America/Mazatlan
        - America/Menominee
        - America/Merida
        - America/Metlakatla
        - America/Mexico_City
        - America/Miquelon
        - America/Moncton
        - America/Monterrey
        - America/Montevideo
        - America/Montserrat
        - America/Nassau
        - America/New_York
        - America/Nome
        - America/Noronha
        - America/North_Dakota/Beulah
        - America/North_Dakota/Center
        - America/North_Dakota/New_Salem
        - America/Nuuk
        - America/Ojinaga
        - America/Panama
        - America/Paramaribo
        - America/Phoenix
        - America/Port_of_Spain
        - America/Port-au-Prince
        - America/Porto_Velho
        - America/Puerto_Rico
        - America/Punta_Arenas
        - America/Rankin_Inlet
        - America/Recife
        - America/Regina
        - America/Resolute
        - America/Rio_Branco
        - America/Santarem
        - America/Santiago
        - America/Santo_Domingo
        - America/Sao_Paulo
        - America/Scoresbysund
        - America/Sitka
        - America/St_Barthelemy
        - America/St_Johns
        - America/St_Kitts
        - America/St_Lucia
        - America/St_Thomas
        - America/St_Vincent
        - America/Swift_Current
        - America/Tegucigalpa
        - America/Thule
        - America/Tijuana
        - America/Toronto
        - America/Tortola
        - America/Vancouver
        - America/Whitehorse
        - America/Winnipeg
        - America/Yakutat
        - Antarctica/Casey
        - Antarctica/Davis
        - Antarctica/DumontDUrville
        - Antarctica/Macquarie
        - Antarctica/Mawson
        - Antarctica/McMurdo
        - Antarctica/Palmer
        - Antarctica/Rothera
        - Antarctica/Syowa
        - Antarctica/Troll
        - Antarctica/Vostok
        - Arctic/Longyearbyen
        - Asia/Aden
        - Asia/Almaty
        - Asia/Amman
        - Asia/Anadyr
        - Asia/Aqtau
        - Asia/Aqtobe
        - Asia/Ashgabat
        - Asia/Atyrau
        - Asia/Baghdad
        - Asia/Bahrain
        - Asia/Baku
        - Asia/Bangkok
        - Asia/Barnaul
        - Asia/Beirut
        - Asia/Bishkek
        - Asia/Brunei
        - Asia/Chita
        - Asia/Choibalsan
        - Asia/Colombo
        - Asia/Damascus
        - Asia/Dhaka
        - Asia/Dili
        - Asia/Dubai
        - Asia/Dushanbe
        - Asia/Famagusta
        - Asia/Gaza
        - Asia/Hebron
        - Asia/Ho_Chi_Minh
        - Asia/Hong_Kong
        - Asia/Hovd
        - Asia/Irkutsk
        - Asia/Jakarta
        - Asia/Jayapura
        - Asia/Jerusalem
        - Asia/Kabul
        - Asia/Kamchatka
        - Asia/Karachi
        - Asia/Kathmandu
        - Asia/Khandyga
        - Asia/Kolkata
        - Asia/Krasnoyarsk
        - Asia/Kuala_Lumpur
        - Asia/Kuching
        - Asia/Kuwait
        - Asia/Macau
        - Asia/Magadan
        - Asia/Makassar
        - Asia/Manila
        - Asia/Muscat
        - Asia/Nicosia
        - Asia/Novokuznetsk
        - Asia/Novosibirsk
        - Asia/Omsk
        - Asia/Oral
        - Asia/Phnom_Penh
        - Asia/Pontianak
        - Asia/Pyongyang
        - Asia/Qatar
        - Asia/Qostanay
        - Asia/Qyzylorda
        - Asia/Riyadh
        - Asia/Sakhalin
        - Asia/Samarkand
        - Asia/Seoul
        - Asia/Shanghai
        - Asia/Singapore
        - Asia/Srednekolymsk
        - Asia/Taipei
        - Asia/Tashkent
        - Asia/Tbilisi
        - Asia/Tehran
        - Asia/Thimphu
        - Asia/Tokyo
        - Asia/Tomsk
        - Asia/Ulaanbaatar
        - Asia/Urumqi
        - Asia/Ust-Nera
        - Asia/Vientiane
        - Asia/Vladivostok
        - Asia/Yakutsk
        - Asia/Yangon
        - Asia/Yekaterinburg
        - Asia/Yerevan
        - Atlantic/Azores
        - Atlantic/Bermuda
        - Atlantic/Canary
        - Atlantic/Cape_Verde
        - Atlantic/Faroe
        - Atlantic/Madeira
        - Atlantic/Reykjavik
        - Atlantic/South_Georgia
        - Atlantic/St_Helena
        - Atlantic/Stanley
        - Australia/Adelaide
        - Australia/Brisbane
        - Australia/Broken_Hill
        - Australia/Darwin
        - Australia/Eucla
        - Australia/Hobart
        - Australia/Lindeman
        - Australia/Lord_Howe
        - Australia/Melbourne
        - Australia/Perth
        - Australia/Sydney
        - Europe/Amsterdam
        - Europe/Andorra
        - Europe/Astrakhan
        - Europe/Athens
        - Europe/Belgrade
        - Europe/Berlin
        - Europe/Bratislava
        - Europe/Brussels
        - Europe/Bucharest
        - Europe/Budapest
        - Europe/Busingen
        - Europe/Chisinau
        - Europe/Copenhagen
        - Europe/Dublin
        - Europe/Gibraltar
        - Europe/Guernsey
        - Europe/Helsinki
        - Europe/Isle_of_Man
        - Europe/Istanbul
        - Europe/Jersey
        - Europe/Kaliningrad
        - Europe/Kirov
        - Europe/Kyiv
        - Europe/Lisbon
        - Europe/Ljubljana
        - Europe/London
        - Europe/Luxembourg
        - Europe/Madrid
        - Europe/Malta
        - Europe/Mariehamn
        - Europe/Minsk
        - Europe/Monaco
        - Europe/Moscow
        - Europe/Oslo
        - Europe/Paris
        - Europe/Podgorica
        - Europe/Prague
        - Europe/Riga
        - Europe/Rome
        - Europe/Samara
        - Europe/San_Marino
        - Europe/Sarajevo
        - Europe/Saratov
        - Europe/Simferopol
        - Europe/Skopje
        - Europe/Sofia
        - Europe/Stockholm
        - Europe/Tallinn
        - Europe/Tirane
        - Europe/Ulyanovsk
        - Europe/Vaduz
        - Europe/Vatican
        - Europe/Vienna
        - Europe/Vilnius
        - Europe/Volgograd
        - Europe/Warsaw
        - Europe/Zagreb
        - Europe/Zurich
        - Indian/Antananarivo
        - Indian/Chagos
        - Indian/Christmas
        - Indian/Cocos
        - Indian/Comoro
        - Indian/Kerguelen
        - Indian/Mahe
        - Indian/Maldives
        - Indian/Mauritius
        - Indian/Mayotte
        - Indian/Reunion
        - Pacific/Apia
        - Pacific/Auckland
        - Pacific/Bougainville
        - Pacific/Chatham
        - Pacific/Chuuk
        - Pacific/Easter
        - Pacific/Efate
        - Pacific/Fakaofo
        - Pacific/Fiji
        - Pacific/Funafuti
        - Pacific/Galapagos
        - Pacific/Gambier
        - Pacific/Guadalcanal
        - Pacific/Guam
        - Pacific/Honolulu
        - Pacific/Kanton
        - Pacific/Kiritimati
        - Pacific/Kosrae
        - Pacific/Kwajalein
        - Pacific/Majuro
        - Pacific/Marquesas
        - Pacific/Midway
        - Pacific/Nauru
        - Pacific/Niue
        - Pacific/Norfolk
        - Pacific/Noumea
        - Pacific/Pago_Pago
        - Pacific/Palau
        - Pacific/Pitcairn
        - Pacific/Pohnpei
        - Pacific/Port_Moresby
        - Pacific/Rarotonga
        - Pacific/Saipan
        - Pacific/Tahiti
        - Pacific/Tarawa
        - Pacific/Tongatapu
        - Pacific/Wake
        - Pacific/Wallis
        - US/Alaska
        - US/Central
        - US/Eastern
        - US/Hawaii
        - US/Mountain
        - US/Pacific
      default: Europe/Berlin
      description: The agent's timezone.
      title: timezone
    voice_prompt:
      type: string
      description: >-
        Slightly alters the agent's intonation, talking speed or sentiment for a
        subtle yet noticeable effect.
      title: voice_prompt
    voice_stability:
      type: integer
      description: >-
        Range is 0 to 1. Lower settings may make the voice sound more expressive
        but less predictable, while higher settings make it sound steadier but
        less emotional.
      title: voice_stability
    voice_similarity_boost:
      type: integer
      description: >-
        Range 0 to 1. Determines how closely the AI matches the original voice.
        Higher settings potentially including unwanted noise from the original
        recording.
      title: voice_similarity_boost
    voice_optimise_streaming_latency:
      type: integer
      description: Range 0 to 4. Optimises streaming latency
      title: voice_optimise_streaming_latency
    voice_style:
      type: integer
      description: >-
        Range 0 to 1. Enhances the distinct characteristics of the original
        voice, but may slow down processing and make the voice less stable.
      title: voice_style
    voice_use_speaker_boost:
      type: boolean
      description: >-
        Amplifies the voice’s likeness to the original speaker, which can
        slightly slow down the response time.
      title: voice_use_speaker_boost
    allowed_idle_time_seconds:
      type: integer
      description: The agent will disconnect after this period.
      title: allowed_idle_time_seconds
    initial_pause_seconds:
      type: integer
      description: Duration before the agent starts speaking.
      title: initial_pause_seconds
    transcriber_keywords:
      type: array
      items:
        type: string
      description: Add business terms to improve accuracy and recognition.
      title: transcriber_keywords
    ring_pause_seconds:
      type: integer
      description: Ring time before the agent answers the call.
      title: ring_pause_seconds
    AgentBackgroundNoiseType:
      type: string
      enum:
        - cafe
        - office
      description: What kind of background noise should be present.
      title: AgentBackgroundNoiseType
    AgentBackgroundNoise:
      type: object
      properties:
        enabled:
          type: boolean
          description: If enabled, the agent will add background noise.
        type:
          $ref: '#/components/schemas/AgentBackgroundNoiseType'
          description: What kind of background noise should be present.
        volume:
          type: integer
          description: How loud the background noise should be.
      description: Add background noise to make the call more natural.
      title: AgentBackgroundNoise
    AgentNoiseCancellation:
      type: string
      enum:
        - standard
        - advanced
      description: >-
        Removes background noise on the customer's side (like chatter in a café
        or keyboard clicks) to make their voice clearer and easier for the agent
        to understand.
      title: AgentNoiseCancellation
    AgentEndCallReasonsV2ItemsClosingMessageMode:
      type: string
      enum:
        - static
        - prompt
        - none
      description: >-
        Controls how the farewell message is generated. static: message is
        spoken verbatim. prompt: message is an instruction to the LLM. none: LLM
        generates its own farewell.
      title: AgentEndCallReasonsV2ItemsClosingMessageMode
    AgentEndCallReasonsV2Items:
      type: object
      properties:
        reason:
          type: string
          description: The condition that triggers call termination.
        closing_message_mode:
          $ref: '#/components/schemas/AgentEndCallReasonsV2ItemsClosingMessageMode'
          description: >-
            Controls how the farewell message is generated. static: message is
            spoken verbatim. prompt: message is an instruction to the LLM. none:
            LLM generates its own farewell.
        closing_message:
          type: string
          description: >-
            The closing message content. Interpretation depends on
            closing_message_mode.
      required:
        - reason
      title: AgentEndCallReasonsV2Items
    AgentVoiceSynthesizer:
      type: string
      enum:
        - eleven_multilingual_v2
        - eleven_turbo_v2
        - eleven_turbo_v2_5
        - eleven_flash_v2
        - eleven_flash_v2_5
      description: The engine used to synthesize voice.
      title: AgentVoiceSynthesizer
    AgentMinWordsToInterrupt:
      type: string
      enum:
        - '0'
        - '1'
        - '2'
        - '3'
        - '4'
        - '5'
      description: >-
        You can set how many words the human must speak before the AI will stop
        speaking and listening.
      title: AgentMinWordsToInterrupt
    prompt:
      type: string
      description: >-
        Add variables in curly brackets. For example,
        <code>{your-variable}</code>.
      title: prompt
    greeting_message:
      type: string
      description: >-
        The greeting message the agent will open the conversation with. You can
        add variables in curly brackets (for example,
        <code>{your-variable}</code>).
      title: greeting_message
    greeting_message_mode:
      type: string
      enum:
        - human
        - agent_static
        - agent_dynamic
      description: >
        Controls how the agent delivers the initial greeting. `human`: the agent
        waits for the human to speak first. `agent_static`: the agent speaks
        `greeting_message` once the call is established. `agent_dynamic`: the
        agent generates a greeting from the prompt and speaks it once the call
        is established. Note: `voicemail_message` requires this to be set to
        `human`. Changing away from `human` while `voicemail_message` is enabled
        will fail.
      title: greeting_message_mode
    greeting_message_human_talk_timeout:
      type: integer
      description: >
        The maximum number of seconds the agent waits for the human to speak
        first when `greeting_message_mode` is set to `human`. If the human does
        not speak within this time, the agent will start the conversation
        automatically.
      title: greeting_message_human_talk_timeout
    llm:
      type: string
      enum:
        - gpt-4.1
        - gpt-4.1-nano
        - gpt-4.1-mini
        - gpt-5-mini
        - gpt-5-nano
        - gpt-5.1
        - gpt-5.2
        - synthflow
      description: The LLM powering this agent.
      title: llm
    language:
      type: string
      enum:
        - multi
        - en-US
        - bg
        - cs
        - de-DE
        - el
        - fi
        - fr-FR
        - es-ES
        - hu
        - it
        - fr
        - pt-BR
        - nl-NL
        - hi
        - zh-CN
        - 'no'
        - sv-SE
        - da
        - da-DK
        - id
        - ja
        - ko
        - ms
        - ro
        - ru
        - sk
        - tr
        - uk
        - vi
        - th
        - pl
      description: >-
        This agent's language. For the list of available languages, see <a
        href="/about-supported-languages">Supported languages</a>
      title: language
    voice_id:
      type: string
      description: >-
        Voice ID for this agent. To retrieve voice IDs, use the Get voices
        endpoint.
      title: voice_id
    AgentPatienceLevel:
      type: string
      enum:
        - low
        - medium
        - high
      description: Patience level of the agent.
      title: AgentPatienceLevel
    Agent:
      type: object
      properties:
        timezone:
          $ref: '#/components/schemas/timezone'
        voice_prompt:
          $ref: '#/components/schemas/voice_prompt'
        voice_stability:
          $ref: '#/components/schemas/voice_stability'
        voice_similarity_boost:
          $ref: '#/components/schemas/voice_similarity_boost'
        voice_optimise_streaming_latency:
          $ref: '#/components/schemas/voice_optimise_streaming_latency'
        voice_style:
          $ref: '#/components/schemas/voice_style'
        voice_use_speaker_boost:
          $ref: '#/components/schemas/voice_use_speaker_boost'
        allowed_idle_time_seconds:
          $ref: '#/components/schemas/allowed_idle_time_seconds'
        initial_pause_seconds:
          $ref: '#/components/schemas/initial_pause_seconds'
        transcriber_keywords:
          $ref: '#/components/schemas/transcriber_keywords'
        ring_pause_seconds:
          $ref: '#/components/schemas/ring_pause_seconds'
        background_noise:
          $ref: '#/components/schemas/AgentBackgroundNoise'
          description: Add background noise to make the call more natural.
        noise_cancellation:
          $ref: '#/components/schemas/AgentNoiseCancellation'
          description: >-
            Removes background noise on the customer's side (like chatter in a
            café or keyboard clicks) to make their voice clearer and easier for
            the agent to understand.
        realistic_filler_words:
          type: boolean
          description: >-
            If enabled, the agent will be using realistic filler words (for
            example, "um").
        is_transcript_disabled:
          type: boolean
          description: If set to true, conversations will not be transcribed.
        redact_pii:
          type: boolean
          description: >-
            Whether to redact personally identifiable information (PII) from
            transcripts, post-call webhooks, and internal logs. Redacted data
            includes credit card numbers, CVVs, expiration dates, social
            security numbers, names, email addresses, phone numbers, and
            physical addresses.
        synthesizer_filter_words:
          type: array
          items:
            description: Any type
          description: Words or characters that the agent should not say.
        end_call_reasons:
          type: array
          items:
            type: string
          description: >-
            Deprecated: use end_call_reasons_v2 instead. Custom conditions that
            trigger automatic call termination (simple string array format).
            Works with both simple prompt and Flow Designer agents.
        end_call_reasons_v2:
          type: array
          items:
            $ref: '#/components/schemas/AgentEndCallReasonsV2Items'
          description: >-
            Custom conditions that trigger automatic call termination with
            per-reason closing message control. When both end_call_reasons and
            end_call_reasons_v2 are present, v2 takes precedence.
        voice_synthesizer:
          $ref: '#/components/schemas/AgentVoiceSynthesizer'
          description: The engine used to synthesize voice.
        suppression_level:
          type: number
          format: double
          description: >-
            Setting this value will enable voice isolation in addition to
            background noise detection, the value assigned the term is the
            strength with a higher value stronger voice isolation.
        interruption_fade_out:
          type: integer
          description: >-
            Each frame is 20 ms. When you interrupt the bot, the volume slowly
            goes down to 0 over that many frames. For example, 5 translates to a
            100 ms fadeout.
        voice_speed:
          type: number
          format: double
          description: Adjust how fast or slow your agent will talk on the call.
        voice_volume:
          type: number
          format: double
          description: Adjust how loud or quite your agent will talk on the call.
        min_words_to_interrupt:
          $ref: '#/components/schemas/AgentMinWordsToInterrupt'
          description: >-
            You can set how many words the human must speak before the AI will
            stop speaking and listening.
        prompt:
          $ref: '#/components/schemas/prompt'
        greeting_message:
          $ref: '#/components/schemas/greeting_message'
        greeting_message_mode:
          $ref: '#/components/schemas/greeting_message_mode'
        greeting_message_human_talk_timeout:
          $ref: '#/components/schemas/greeting_message_human_talk_timeout'
        llm:
          $ref: '#/components/schemas/llm'
        language:
          $ref: '#/components/schemas/language'
        voice_id:
          $ref: '#/components/schemas/voice_id'
        patience_level:
          $ref: '#/components/schemas/AgentPatienceLevel'
          description: Patience level of the agent.
        send_user_idle_reminders:
          type: boolean
          default: false
          description: Enables or disables idle reminders.
        reminder_after_idle_time_seconds:
          type: integer
          description: Time in seconds before sending an idle reminder.
        reminder_after_idle_message:
          type: string
          description: The idle reminder message.
        fallback_voice_id:
          $ref: '#/components/schemas/voice_id'
        fallback_provider:
          type: string
          description: >-
            The provider for the fallback voice (e.g., elevenlabs, deepgram,
            azure).
        fallback_model:
          type: string
          description: The model to be used by the fallback provider.
      title: Agent
    AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants:
      type: object
      properties:
        end_call_reasons:
          type: array
          items:
            type: string
          description: >-
            Optional. Some GET responses include `end_call_reasons` at the top
            level of each assistant object (in addition to
            `agent.end_call_reasons`). To configure end-call reasons, set
            **`agent.end_call_reasons`** on create or update requests; a
            top-level `end_call_reasons` on those requests is ignored.
        end_call_reasons_v2:
          type: array
          items:
            $ref: '#/components/schemas/AgentModelEndCallReasonsV2Items'
          description: >-
            Custom conditions that trigger automatic call termination with
            per-reason closing message control. When both end_call_reasons and
            end_call_reasons_v2 are present, v2 takes precedence.
        description:
          type: string
          description: Agent description.
        phone_number:
          type: string
          description: The phone number attached to the agent.
        external_webhook_url:
          type: string
          description: >-
            URL of the webhook that should receive data after the call, such as
            the transcript.
        is_recording:
          type: boolean
          description: Whether the conversation should be recorded.
        max_duration:
          $ref: '#/components/schemas/AgentModelMaxDuration'
        voicemail_message:
          $ref: '#/components/schemas/AgentModelVoicemailMessage'
          description: >-
            Configuration for the message left when a voicemail is detected.
            Requires `greeting_message_mode` to be set to `human`.
        type:
          $ref: '#/components/schemas/type'
        name:
          $ref: '#/components/schemas/name'
        agent:
          $ref: '#/components/schemas/Agent'
        model_id:
          type: string
          description: The ID of the agent.
      title: >-
        AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants
    AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/pagination'
        assistants:
          $ref: >-
            #/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants
      title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse
    get-assistant_Response_200:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/status'
        response:
          $ref: >-
            #/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse
      title: get-assistant_Response_200
    Get-assistantRequestBadRequestError:
      type: object
      properties: {}
      title: Get-assistantRequestBadRequestError
  securitySchemes:
    sec0:
      type: http
      scheme: bearer

```

## SDK Code Examples

```python
import requests

url = "https://api.synthflow.ai/v2/assistants/model_id"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.synthflow.ai/v2/assistants/model_id"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.synthflow.ai/v2/assistants/model_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.synthflow.ai/v2/assistants/model_id")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.synthflow.ai/v2/assistants/model_id");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.synthflow.ai/v2/assistants/model_id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```