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

# Search Agents

> Search and paginate agents for the authenticated workspace.

<Note>
  Search matches agent **title**, **description**, and **agent ID** within the authenticated workspace.
</Note>

## Query parameters

| Parameter              | Type    | Default                 | Description                                                                                                                                                                                                                           |
| ---------------------- | ------- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `workspaceId`          | string  | authenticated workspace | Optional. Defaults to the bearer workspace (same as `GET /agents`). Pass only when searching another workspace you belong to. Unknown/stale ids (e.g. MCP `CONVOCORE_WORKSPACE_ID`) fall back to the bearer workspace instead of 401. |
| `search`               | string  |                         | Free-text filter on title, description, or agent ID                                                                                                                                                                                   |
| `sortBy`               | enum    | `newest`                | `newest`, `oldest`, `firstCreated`, `lastCreated`, or `alphabetical`                                                                                                                                                                  |
| `page`                 | number  | `1`                     | Page number (1-based)                                                                                                                                                                                                                 |
| `limit`                | number  | `20`                    | Page size (max 50)                                                                                                                                                                                                                    |
| `starredOnly`          | boolean | `false`                 | Return only starred agents                                                                                                                                                                                                            |
| `agentIds`             | string  |                         | Comma-separated allow-list of agent IDs                                                                                                                                                                                               |
| `excludeAgentIds`      | string  |                         | Comma-separated deny-list of agent IDs                                                                                                                                                                                                |
| `includeStarredAgents` | boolean | `true`                  | Include starred agents in the main result set                                                                                                                                                                                         |

<Tip>
  Use `GET /agents` for a full workspace list without filters. Use `GET /agents/search` when you need pagination, text search, or starred-only views.
</Tip>

## Example

```bash theme={null}
curl -G "https://eu-gcp-api.vg-stuff.com/v3/agents/search" \
  -H "Authorization: Bearer {API_KEY}" \
  --data-urlencode "search=support" \
  --data-urlencode "page=1" \
  --data-urlencode "limit=25"
```

## Related documentation

* [Get Agents](/api-reference/v3/agents/get)
* [Get Agent by ID](/api-reference/v3/agents/get_id)


## OpenAPI

````yaml GET /agents/search
openapi: 3.0.3
info:
  title: Convocore OpenAPI
  description: Full API reference for Convocore
  version: 1.0.4
servers:
  - url: https://eu-gcp-api.vg-stuff.com/v3
security: []
paths:
  /agents/search:
    get:
      tags:
        - Agents
      summary: Search Agents
      description: >-
        Search and paginate agents for a workspace by title, description, or
        agent ID
      operationId: searchAgents
      parameters:
        - name: workspaceId
          in: query
          required: false
          schema:
            type: string
        - name: search
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - newest
              - oldest
              - firstCreated
              - lastCreated
              - alphabetical
            default: newest
        - name: page
          in: query
          required: false
          schema:
            type: number
            minimum: 1
            default: 1
        - name: limit
          in: query
          required: false
          schema:
            type: number
            minimum: 1
            maximum: 50
            default: 20
        - name: starredOnly
          in: query
          required: false
          schema:
            type: boolean
            default: false
        - name: agentIds
          in: query
          required: false
          schema:
            type: string
        - name: excludeAgentIds
          in: query
          required: false
          schema:
            type: string
        - name: includeStarredAgents
          in: query
          required: false
          schema:
            type: boolean
            default: true
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  agents:
                    type: array
                    items:
                      $ref: '#/components/schemas/AgentSchema'
                  starredAgents:
                    type: array
                    items:
                      $ref: '#/components/schemas/AgentSchema'
                  total:
                    type: number
                  totalStarred:
                    type: number
                  page:
                    type: number
                  limit:
                    type: number
                  hasMore:
                    type: boolean
                required:
                  - agents
                  - starredAgents
                  - total
                  - totalStarred
                  - page
                  - limit
                  - hasMore
                additionalProperties: false
        default:
          $ref: '#/components/responses/error'
      security:
        - Authorization: []
components:
  schemas:
    AgentSchema:
      type: object
      properties:
        title:
          type: string
          description: '**Title**: The title of the agent.'
        description:
          type: string
          description: '**Description**: A brief description of the agent.'
        ownerID:
          type: string
          description: '**Owner ID**: The unique identifier of the agent''s owner.'
        theme:
          type: string
          description: >-
            **Theme**: The visual theme of the agent, e.g., 'blue-light' or
            'custom-blue-dark'.
        voiceConfig:
          $ref: '#/components/schemas/transcriber_speechGen_config_0f4a35'
        light:
          type: boolean
          description: >-
            Whether to enable light mode for the agent. If set to true, the
            agent will not retain previous chat interactions for privacy
            reasons.
        enableVertex:
          type: boolean
          description: Whether to enable Vertex AI for the agent.
        autoOpenWidget:
          type: boolean
          description: Whether to auto-open the widget when the agent is loaded.
        createdAtUNIX:
          type: number
          description: >-
            The timestamp when the agent was created, formatted as an ISO 8601
            string. Useful for tracking tool lifecycle.
        disabled:
          type: boolean
          description: >-
            Indicates whether the agent is disabled. If set to true, the agent
            will not be active.
        vectorDb:
          description: >-
            Specifies the vector database configuration for the agent. This
            database is used for handling vectorized data or embeddings.
        withRefresh:
          type: boolean
          description: >-
            Determines whether the agent should refresh its settings or data
            dynamically.
        agentPlatform:
          type: string
          description: >-
            Specifies the platform on which the agent operates, such as web,
            mobile, or other environments.
        ID:
          type: string
          description: A unique identifier for the agent used internally.
        storageID:
          type: string
          description: The identifier for the agent's storage configuration.
        VF_DIALOGUE_API_KEY:
          type: string
          description: >-
            API key for VF dialogue integration, enabling the agent to
            communicate with external systems.
        VF_PROJECT_API_KEY:
          type: string
          description: >-
            API key associated with the VF project to authenticate and enable
            specific functionalities.
        VF_PROJECT_ID:
          type: string
          description: The unique identifier of the VF project linked to the agent.
        VF_ENVIRONMENT_ALIAS:
          type: string
          description: >-
            Voiceflow environment alias for runtime calls (`versionID` / v4
            session). Unset defaults to `production` so existing agents keep
            working.
        VF_KB_API_KEY:
          type: string
          description: >-
            API key for accessing the VF knowledge base, enabling advanced
            knowledge retrieval capabilities.
        voiceflowRuntimeMode:
          $ref: '#/components/schemas/string_5cc877a7'
        roundedImageURL:
          type: string
          description: >-
            URL pointing to the rounded image asset used to visually represent
            the agent.
        rectangeImageURL:
          type: string
          description: >-
            URL pointing to the rectangular image asset for the agent's branding
            or display.
        messageDelayMS:
          type: number
          description: >-
            Specifies the delay in milliseconds for the agent to send messages,
            simulating natural conversation timing.
        scrollAnimation:
          type: boolean
          description: >-
            Indicates whether scroll animations are enabled for smooth
            transitions in the chat interface.
        proactiveMessage:
          type: string
          description: A predefined message the agent sends proactively to engage users.
        acceptFileUpload:
          type: boolean
          description: >-
            Determines if the agent accepts file uploads from users as part of
            the interaction.
        recordChatHistory:
          type: boolean
          description: >-
            Specifies whether the agent logs chat histories for future reference
            or analysis.
        chatBgURL:
          type: string
          description: URL of the background image used in the chat interface.
        disableSmoothScroll:
          type: boolean
          description: >-
            Disables smooth scrolling if set to true, potentially improving
            performance on low-end devices.
        isDeployed:
          type: boolean
          description: Indicates whether the agent is currently deployed and operational.
        tokensUsage:
          description: >-
            Tracks the token usage statistics for the agent, typically used in
            LLM integrations.
        maxTokensUsage:
          description: >-
            Defines the maximum allowable token usage for the agent to prevent
            overconsumption.
        lastModified:
          type: number
          description: >-
            The timestamp of the last modification made to the agent's
            configuration.
        fontFamily:
          type: string
          description: >-
            The font family used in the agent's user interface for consistent
            branding.
        branding:
          type: string
          description: Custom branding information or labels associated with the agent.
        customThemeJSONString:
          type: string
          description: A JSON string defining a custom theme for the agent's interface.
        autoStartWidget:
          type: boolean
          description: Determines if the widget should auto-start upon page load.
        allTimeTriggers:
          type: number
          description: The total number of triggers or interactions the agent has handled.
        syncBrowser:
          type: boolean
          description: >-
            Enables synchronization of settings or states with the browser
            session.
        delayBeforeSubmit:
          type: number
          description: >-
            The delay (in milliseconds) before submitting user input to the
            agent.
        messageAggregationSeconds:
          type: number
          description: >-
            Number of seconds the AI should wait and aggregate consecutive user
            messages (text + images) before triggering a single reply. Applies
            globally to all text-based channels (Web, WhatsApp, Instagram,
            Messenger, Telegram, SMS, Discord). Runtime default/floor is 5
            seconds so image+follow-up text merge into one turn. Higher values
            further debounce; every new inbound message resets the wait timer.
        region:
          $ref: '#/components/schemas/string_15712fd5'
        listenForUrlChanges:
          type: boolean
          description: >-
            Specifies if the agent should monitor and react to changes in the
            browser URL.
        chatForget:
          type: boolean
          description: >-
            If enabled, the agent will not retain previous chat interactions for
            privacy reasons.
        lang:
          type: string
          description: >-
            Specifies the default language for the agent's interactions and
            responses.
        enableAudioSupport:
          type: boolean
          description: >-
            Enables audio features, allowing the agent to process and respond to
            audio inputs.
        AITranslateTo:
          type: string
          description: Defines the target language for AI translation during interactions.
        enableAITranslate:
          type: boolean
          description: Activates AI-based translation for multilingual support.
        disableNoReplyListener:
          type: boolean
          description: >-
            Disables the listener for instances where no reply is detected from
            the agent.
        disableHumanHandoff:
          type: boolean
          description: Prevents the agent from escalating interactions to a human operator.
        alwaysShowHandoff:
          type: boolean
          description: >-
            Ensures the handoff option is always visible, regardless of agent
            status.
        manualControl:
          type: boolean
          description: Allows manual control over specific agent functionalities.
        enableVGHandoff:
          type: boolean
          description: Activates VG-specific handoff mechanisms for the agent.
        enableGeoAnalytics:
          type: boolean
          description: >-
            Enables geographic analytics to track user interactions based on
            location.
        hideVoiceflowAnalytics:
          type: boolean
          description: >-
            Hides Voiceflow-specific analytics including intents, conversation
            flow metrics, and rating analytics.
        hideCallAnalytics:
          type: boolean
          description: >-
            Hides voice call analytics including duration, latency, cost
            breakdown, call counts, and call end reasons.
        hideConversationMetrics:
          type: boolean
          description: >-
            Hides conversation metrics including user retention, conversation
            length, time retention, and engagement metrics.
        hideCustomAnalytics:
          type: boolean
          description: >-
            Hides user-created custom charts and metrics from the analytics
            dashboard.
        hideVapiAnalytics:
          type: boolean
          description: >-
            Hides VAPI-specific analytics including cost tracking and
            voice-related metrics.
        hideFunnelAnalytics:
          type: boolean
          description: >-
            Hides the user engagement funnel chart that tracks progression from
            widget views to high engagement.
        hideHandoffAnalytics:
          type: boolean
          description: >-
            Hides handoff analytics including accepted handover count, average
            response time, and average handling time metrics.
        fixedHandoffPopup:
          type: boolean
          description: Ensures the handoff popup remains fixed in the interface.
        buttonsLayout:
          $ref: '#/components/schemas/string_9c7e804b'
        ADVANCED_customCSS:
          type: string
          description: >-
            Specifies advanced custom CSS for overriding the default styling of
            the agent's interface.
        messagesLimit:
          type: number
          description: >-
            Sets a cap on the number of messages the agent can exchange in a
            single session.
        whatsappToken:
          type: string
          description: Token for authenticating and integrating with WhatsApp services.
        whatsappNumberId:
          type: string
          description: The ID associated with the WhatsApp number used by the agent.
        whatsappBusniessId:
          type: string
          description: >-
            The business ID for WhatsApp integration, enabling enterprise-level
            features.
        whatsappCustomBridge:
          $ref: '#/components/schemas/enabled_webhookUrl_forwardToDeveloper_a724f0'
        waTestNumber:
          type: string
          description: A test number used during WhatsApp integration setup or testing.
        waVerifyPassed:
          type: boolean
          description: Indicates if WhatsApp verification was successfully completed.
        waTestPassed:
          type: boolean
          description: Indicates if the WhatsApp integration test was successful.
        twilioSmsAccountSid:
          type: string
          description: Twilio Account SID for SMS integration.
        twilioSmsAuthToken:
          type: string
          description: Twilio Auth Token for SMS integration (encrypted).
        twilioSmsPhoneNumber:
          type: string
          description: Twilio phone number for SMS integration.
        twilioSmsMode:
          $ref: '#/components/schemas/string_ad54bab2'
        twilioSmsVerified:
          type: boolean
          description: Indicates if the Twilio SMS integration is verified.
        twilioSmsPhoneNumberSid:
          type: string
          description: >-
            Twilio IncomingPhoneNumber SID for platform rental numbers (used for
            releasing).
        twilioSmsRentalSubscriptionId:
          type: string
          description: Stripe subscription ID for platform rental SMS number billing.
        twilioSmsRentalStatus:
          $ref: '#/components/schemas/string_d525b319'
        webhookUrl:
          type: string
          description: The URL where the agent sends webhook events to external systems.
        gcloudPrivateKey:
          type: string
          description: Private key for Google Cloud services integration.
        gcloudClientEmail:
          type: string
          description: Client email for Google Cloud authentication.
        smartInit:
          type: boolean
          description: Activates smart initialization features for the agent.
        UIhandoffTitle:
          type: string
          description: Title displayed during UI handoff interactions.
        UIhandoffSubtitle:
          type: string
          description: Subtitle displayed during UI handoff interactions.
        igVerified:
          type: boolean
          description: Indicates if the agent's Instagram integration is verified.
        igAccessToken:
          type: string
          description: Access token for authenticating Instagram API requests.
        showHandoffEvenIfOffline:
          type: boolean
          description: Displays the handoff option even if the agent is offline.
        persistHandoffOnRefresh:
          type: boolean
          description: >-
            Maintains handoff state when users refresh or close their browser
            tabs.
        enableBugReporting:
          type: boolean
          description: Enables bug reporting module in the conversation's controls.
        blockInputDuringHandoffRequest:
          type: boolean
          description: >-
            Blocks chat input when a user requests human handoff but no human
            has been assigned yet. Only applies to VF agents.
        disableHandoffMessages:
          type: boolean
          description: >-
            When enabled, the system will not send automatic messages when
            handoff occurs (e.g., 'Now chatting with John').
        disableHandoffStatusMessages:
          type: boolean
          description: >-
            When enabled, the system will not send status messages during
            handoff transitions (e.g., 'We are connecting you to a human',
            'Handoff cancelled', 'No agent was available').
        customButtonJSON_STRING:
          type: string
          description: JSON string defining custom buttons for the agent's interface.
        vg_initPrompt:
          type: string
          description: >-
            LEGACY single-prompt only (enableNodes === false): opening/init user
            turn for the classic Prompt-tab agent. Ignored when enableNodes is
            true - new agents use nodes (start node), tools, and variables
            instead.
        vg_prompt:
          type: string
          description: >-
            LEGACY single-prompt only (enableNodes === false): classic main
            prompt template. Ignored for nodes agents - use node instructions /
            tools / variables.
        vg_initMessages:
          $ref: '#/components/schemas/array_0d657f67'
        vg_systemPrompt:
          type: string
          description: >-
            LEGACY single-prompt only (enableNodes === false): system
            instructions for the classic Prompt-tab agent. Ignored when
            enableNodes is true - system behavior lives on nodes (and
            tools/variables), not these vg_* fields.
        vg_temperature:
          type: number
          description: >-
            LEGACY single-prompt only (enableNodes === false): LLM temperature
            for the classic agent. Nodes agents set model/temperature per node
            (or nodesSettings), not via this field.
        vg_defaultModel:
          $ref: '#/components/schemas/string_f4bfc358'
        vg_maxTokens:
          type: number
          description: >-
            LEGACY single-prompt only (enableNodes === false): max tokens for
            the classic agent. Nodes agents configure token limits per node /
            nodesSettings instead.
        vg_kbDefaultDimension:
          type: number
          description: Default dimensionality for the agent's knowledge base embeddings.
        vg_kbTopChunks:
          type: number
          description: >-
            The number of top chunks retrieved from the knowledge base during a
            query.
        structuredSearchJobIds:
          $ref: '#/components/schemas/array_9d53dd96'
        SECRET_API_KEY:
          type: string
          description: The secret API key for secure integration with VF services.
        vg_kbCharCount:
          type: number
          description: Tracks the total character count of the agent's knowledge base.
        vg_kbDocsNum:
          type: number
          description: The total number of documents stored in the agent's knowledge base.
        vg_enableUIEngine:
          type: boolean
          description: Activates the UI engine for enhanced interface capabilities.
        vg_maxImagesPerCard:
          $ref: '#/components/schemas/S_37a4324d'
        vg_uiEngineChannelConfig:
          $ref: '#/components/schemas/whatsapp_instagram_messenger_telegram_26b9c7'
        vg_enableAboutContext:
          type: boolean
          description: Enables contextual information about the agent for users.
        vg_kb_llm:
          $ref: >-
            #/components/schemas/searchMethod_searchPrompt_modelId_temprature_ce98d7
        vg_enableUIEngineForms:
          type: boolean
          description: Enables form and input components in the UI engine for web channel.
        vg_uiEngineFormNotifyConfig:
          $ref: '#/components/schemas/enabled_extraEmails_ca0434'
        vg_enableUIEngineInvoice:
          type: boolean
          description: Enables the invoice card component in the UI engine for web channel.
        vg_uiEngineInvoiceConfig:
          $ref: '#/components/schemas/notifyOnButtonClick_notifyEmails_c468a8'
        vg_enableUIEngineCalendarBooking:
          type: boolean
          description: >-
            Enables the interactive calendar booking widget in the UI engine for
            web channel.
        vg_uiEngineCalendarConfig:
          $ref: '#/components/schemas/object_9473aac5'
        vg_max_messages_history:
          type: number
          description: Maximum number of messages retained in the chat history.
        ifKnowsThreshold:
          type: number
          description: Confidence threshold for determining if the agent 'knows' an answer.
        avatarImageUrl:
          type: string
          description: URL of the avatar image representing the agent.
        headerImageUrl:
          type: string
          description: URL of the header image displayed in the chat interface.
        bannerImageUrl:
          type: string
          description: URL of the banner image used in the agent's branding.
        soundEffectUrl:
          type: string
          description: URL of the sound effect file used for agent interactions.
        soundEffectEnabled:
          type: boolean
          description: Enables or disables sound effects for the agent.
        enableQuickFileUpload:
          type: boolean
          description: Allows quick file uploads during chat interactions.
        instagramOptions:
          $ref: '#/components/schemas/pageId_accessToken_c7a7cf'
        translateUserResponse:
          type: boolean
        starred:
          type: boolean
        flowise:
          $ref: '#/components/schemas/webhookUrl_webhookSecret_8a35db'
        vfSettings:
          $ref: '#/components/schemas/enableIgnoreUrlPaths_7b2099'
        vapi: {}
        vapiConfig:
          $ref: '#/components/schemas/object_4dc7a516'
        vgOptions:
          $ref: >-
            #/components/schemas/isLlmStudio_showSources_lightUiEngine_legacyKb_118824
        ui:
          $ref: '#/components/schemas/object_c8c60d25'
        assignedToolsIds:
          type: array
          items:
            type: string
        tools:
          type: array
          items:
            $ref: '#/components/schemas/object_d09340f1'
        internal:
          $ref: >-
            #/components/schemas/accountCreationConfig_websocketServer_setOnResponse_enableSetOnLoad_2ecc3e
        disableAutoTranscribeAudio:
          type: boolean
        enableMessagingVoiceNoteReply:
          type: boolean
        disableTranscriptSharing:
          type: boolean
        instaAgentUsername:
          type: string
        convoTags:
          type: array
          items:
            type: string
        vfConfig:
          $ref: '#/components/schemas/alwaysEnableCardButtons_2314f9'
        discord:
          $ref: '#/components/schemas/channelIds_webhookUrls_b44198'
        limits:
          $ref: '#/components/schemas/object_ed5d189f'
        tabs:
          type: array
          items:
            $ref: '#/components/schemas/object_fed7d57c'
        kbTags:
          type: array
          items:
            type: string
        kbTagsDataMap:
          type: array
          items: {}
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/object_5552960f'
        enableNodes:
          type: boolean
          description: >-
            Agent framework switch. true (default for new agents) = nodes/canvas
            runtime: use nodes, tools, and variables - ignore legacy
            vg_systemPrompt / vg_initPrompt / vg_prompt / vg_initMessages /
            vg_defaultModel / vg_temperature / vg_maxTokens for routing. false =
            classic single-prompt agent that still uses those vg_* Prompt-tab
            fields.
        advanced:
          $ref: '#/components/schemas/serverUrl_serverUrlSecret_782473'
        nodesSettings:
          $ref: '#/components/schemas/object_0aec1fe5'
        id:
          type: string
        enableFallback:
          type: boolean
          description: Enable fallback for the agent llm model.
        fallbackSettings:
          $ref: '#/components/schemas/model_creditThreshold_ebefb5'
        marketplace:
          $ref: '#/components/schemas/object_e7317833'
        disableRating:
          type: boolean
          description: Whether to disable the chat end rating feature.
        chatEndMessage:
          type: string
          description: The message to show when the chat ends.
        aiIntroductionMessage:
          type: string
          description: The message to show when the user starts the chat on metachannels.
        enableAIIntroductionMessage:
          type: boolean
          description: Whether to enable the AI introduction message or not.
        deployed:
          type: boolean
          description: Whether the agent is deployed or not.
        captureIGStories:
          type: boolean
          description: Whether to capture instagram stories or not.
        gdprCompliance:
          type: boolean
          description: Whether to comply with GDPR or not.
        disableFileUpload:
          type: boolean
        buttonVariant:
          $ref: '#/components/schemas/string_1a13364e'
        buttonColor:
          $ref: '#/components/schemas/string_4bb90e82'
        buttonSize:
          $ref: '#/components/schemas/string_6244c2ee'
        buttonRadius:
          $ref: '#/components/schemas/string_d7a0c056'
        disableButtonAnimation:
          type: boolean
          description: When true, disables NextUI button press-scale animation.
        disableButtonRipple:
          type: boolean
          description: When true, disables NextUI button ripple.
        inputVariant:
          $ref: '#/components/schemas/string_58084f33'
        inputColor:
          $ref: '#/components/schemas/string_fa95f8ca'
        inputSize:
          $ref: '#/components/schemas/string_95a6d3fc'
        inputRadius:
          $ref: '#/components/schemas/string_d67dd584'
        disableInputAnimation:
          type: boolean
          description: When true, disables NextUI input focus/label animations.
        bubbleStyle:
          $ref: '#/components/schemas/humanRadius_botRadius_humanTone_botTone_536c30'
        privacyDisclaimer:
          $ref: >-
            #/components/schemas/enabled_text_privacyPolicyUrl_acceptButtonLabel_87d480
        leadCollectionRules:
          $ref: '#/components/schemas/enabled_rules_2204dd'
        identityResolutionSettings:
          $ref: '#/components/schemas/enabled_scope_softMatchEnabled_91b042'
        emailConfig:
          $ref: '#/components/schemas/enabled_assignedEmails_1a1dc7'
        inboundEngagement:
          $ref: '#/components/schemas/object_b9e5f1c4'
        autoTest:
          $ref: '#/components/schemas/object_b0cdee8a'
        langsmithConfig:
          $ref: '#/components/schemas/enabled_apiKey_projectName_endpoint_1b7e30'
        funnelConfig:
          $ref: '#/components/schemas/enabled_steps_notificationRules_maxScore_debf72'
        webControlConfig:
          $ref: >-
            #/components/schemas/enabled_allowEval_allowScreenshare_rememberConsentForSession_7646f0
      additionalProperties: false
    transcriber_speechGen_config_0f4a35:
      type: object
      properties:
        transcriber:
          $ref: '#/components/schemas/object_909fa86c'
        speechGen:
          $ref: '#/components/schemas/S_64ca902a'
        config:
          $ref: '#/components/schemas/object_1a0081a5'
      additionalProperties: false
    string_5cc877a7:
      type: string
      enum:
        - legacy
        - auto
        - v4
      description: Controls which Voiceflow runtime path the agent should use.
    string_15712fd5:
      type: string
      enum:
        - eu
        - na
      description: >-
        Defines the geographical region settings for the agent, such as
        localization.
    string_9c7e804b:
      type: string
      enum:
        - horizontal
        - vertical
        - in-footer
      description: Defines the layout and style of buttons in the agent's interface.
    enabled_webhookUrl_forwardToDeveloper_a724f0:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            When enabled, inbound WhatsApp webhooks are forwarded to a
            developer-provided server and the returned payload is sent back
            through WhatsApp.
        webhookUrl:
          type: string
          description: >-
            Developer webhook URL that receives raw WhatsApp events and returns
            the outgoing WhatsApp payload to send.
        forwardToDeveloper:
          type: boolean
          description: >-
            When enabled, the raw Meta webhook payload is forwarded to the
            developer URL with zero alteration. The developer response is sent
            directly to the WhatsApp API as-is, with no normalization or
            processing.
      additionalProperties: false
      description: >-
        Developer-focused WhatsApp bridge that bypasses the built-in agent reply
        flow.
    string_ad54bab2:
      type: string
      enum:
        - own_account
        - platform_rental
      description: Mode for Twilio SMS - using own account or platform rental.
    string_d525b319:
      type: string
      enum:
        - active
        - pending
        - cancelled
        - past_due
      description: Status of the SMS number rental subscription.
    array_0d657f67:
      type: array
      items:
        type: string
      description: >-
        LEGACY single-prompt only (enableNodes === false): seed messages for the
        classic conversation flow. Ignored when enableNodes is true - configure
        greetings on the start node instead.
    string_f4bfc358:
      type: string
      enum:
        - moonshotai/Kimi-K2-Instruct
        - moonshotai/Kimi-K3
        - moonshotai/Kimi-K2.6
        - moonshotai/Kimi-K2.5
        - moonshotai/Kimi-K2-Thinking
        - moonshotai/Kimi-K2.5-fast
        - zai-org/GLM-5.2
        - zai-org/GLM-5
        - zai-org/GLM-5.1
        - zai-org/GLM-4.7-FP8
        - zai-org/GLM-4.5
        - zai-org/GLM-4.5-Air
        - MiniMaxAI/MiniMax-M2.1
        - MiniMaxAI/MiniMax-M2.5
        - MiniMaxAI/MiniMax-M3
        - deepseek-ai/DeepSeek-V3.2
        - deepseek-ai/DeepSeek-V4-Pro
        - deepseek-ai/DeepSeek-V3.2-fast
        - deepseek-ai/DeepSeek-R1-0528
        - deepseek-ai/DeepSeek-R1-0528-fast
        - deepseek-ai/DeepSeek-V3-0324
        - deepseek-ai/DeepSeek-V3-0324-fast
        - Qwen/Qwen3.5-397B-A17B
        - Qwen/Qwen2.5-VL-72B-Instruct
        - Qwen/Qwen3-235B-A22B-Instruct-2507
        - Qwen/Qwen3-235B-A22B-Thinking-2507
        - Qwen/Qwen3-30B-A3B-Instruct-2507
        - Qwen/Qwen3-30B-A3B-Thinking-2507
        - Qwen/Qwen3-Coder-480B-A35B-Instruct
        - Qwen/Qwen3-Coder-30B-A3B-Instruct
        - Qwen/Qwen3-Next-80B-A3B-Thinking
        - Qwen/Qwen3-32B
        - Qwen/Qwen3-32B-fast
        - Qwen/Qwen2.5-Coder-7B-fast
        - meta-llama/Llama-3.3-70B-Instruct-fast
        - meta-llama/Llama-3.3-70B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct-fast
        - nvidia/Llama-3_1-Nemotron-Ultra-253B-v1
        - nvidia/nemotron-3-super-120b-a12b
        - nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B
        - google/gemma-3-27b-it
        - google/gemma-3-27b-it-fast
        - google/gemma-2-2b-it
        - google/gemma-2-9b-it-fast
        - openai/gpt-oss-120b
        - openai/gpt-oss-20b
        - NousResearch/Hermes-4-405B
        - NousResearch/Hermes-4-70B
        - PrimeIntellect/INTELLECT-3
        - gpt-5.6
        - gpt-5.6-terra
        - gpt-5.6-luna
        - gpt-5.4-thinking-latest
        - gpt-5.4
        - gpt-5.3-chat-latest
        - gpt-5.2-2025-12-11
        - gpt-5-chat-latest
        - gpt-5-2025-08-07
        - gpt-5-mini-2025-08-07
        - gpt-5-nano-2025-08-07
        - o1
        - o1-mini
        - o3-mini
        - azure-eu-gpt-4o
        - azure-na-gpt-4o
        - gpt-4o
        - gpt-4o-mini
        - gpt-4.5-preview-2025-02-27
        - gpt-4.1-2025-04-14
        - gpt-4.1-mini-2025-04-14
        - ft:gpt-4o-mini-2024-07-18:personal:4o-with-tools-t11:A6mByttv
        - gpt-3.5-turbo
        - grok-4.5
        - grok-3-fast
        - grok-3-mini
        - grok-2-latest
        - claude-opus-4-7
        - claude-opus-4-6
        - claude-opus-4-5-20251101
        - claude-opus-4-20250514
        - claude-sonnet-4-5-20250929
        - claude-haiku-4-5-20251001
        - claude-sonnet-4-20250514
        - claude-3-7-sonnet-20250219
        - claude-3-5-sonnet-20241022
        - claude-3-5-haiku-20241022
        - claude-3-opus-20240229
        - claude-3-sonnet-20240229
        - deepseek-chat
        - gemini-3.5-flash
        - gemini-3.1-pro-preview
        - gemini-3.1-flash-lite
        - gemini-3.1-flash-lite-preview
        - gemini-3-pro-preview
        - gemini-3-flash-preview
        - gemini-2.5-pro
        - gemini-2.5-pro-preview-03-25
        - gemini-2.5-pro-exp-03-25
        - gemini-2.5-flash
        - gemini-2.5-flash-lite
        - gemini-2.5-flash-lite-preview-09-2025
        - gemini-2.5-flash-preview-05-20
        - gemini-2.0-flash-thinking-exp-1219
        - gemini-2.0-flash-exp
        - gemini-1.5-pro
        - gemini-1.5-flash
        - gemini-1.0-pro
        - deepseek-r1-distill-llama-70b
        - meta-llama/llama-4-scout-17b-16e-instruct
        - meta-llama/llama-4-maverick-17b-128e-instruct
        - llama-3.3-70b-versatile
        - llama-3.1-8b-instant
        - llama3-70b-8192
        - gemma2-9b-it
        - gemma-4-31b-dense
        - gemma-4-26b-moe
        - gemma-7b-it
        - qwen-max-latest
        - qwen-plus-latest
        - qwen-turbo-latest
        - custom-llm
      description: >-
        LEGACY single-prompt only (enableNodes === false): default LLM for the
        classic Prompt-tab agent. Nodes agents pick models on nodes /
        nodesSettings; new agents default to enableNodes=true and should not
        rely on this.
    array_9d53dd96:
      type: array
      items:
        type: string
      description: >-
        Schema-crawl job IDs indexed into Structured Search and attached to this
        agent.
    S_37a4324d:
      anyOf:
        - type: number
          enum:
            - 1
        - type: number
          enum:
            - 2
        - type: number
          enum:
            - 3
      description: >-
        Max images per UI Engine card/carousel card. 1 forces single imageUrl
        only.
    whatsapp_instagram_messenger_telegram_26b9c7:
      type: object
      properties:
        whatsapp:
          type: object
          additionalProperties:
            type: boolean
        instagram:
          type: object
          additionalProperties:
            type: boolean
        messenger:
          type: object
          additionalProperties:
            type: boolean
        telegram:
          type: object
          additionalProperties:
            type: boolean
        web:
          type: object
          additionalProperties:
            type: boolean
      additionalProperties: false
      description: >-
        Per-channel toggles for UI Engine message types (choice, visual, cardV2,
        file, ...). Missing keys = enabled.
    searchMethod_searchPrompt_modelId_temprature_ce98d7:
      type: object
      properties:
        searchMethod:
          $ref: '#/components/schemas/cc80b10d'
        searchPrompt:
          type: string
        modelId:
          $ref: '#/components/schemas/string_48078c0b'
        temprature:
          type: number
        maxTokens:
          type: number
      additionalProperties: false
      description: >-
        Configuration for LLM-based knowledge base queries, including search
        methods and model parameters.
    enabled_extraEmails_ca0434:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            When true (default if unset), form/input submits and chat-end
            ratings email workspace members + assigned org clients
            (agency-branded).
        extraEmails:
          $ref: '#/components/schemas/array_afea93b3'
      additionalProperties: false
      description: >-
        Email notification config for UI Engine form/input submits and chat-end
        ratings (Forms setup modal).
    notifyOnButtonClick_notifyEmails_c468a8:
      type: object
      properties:
        notifyOnButtonClick:
          type: boolean
          description: >-
            When true, invoice action button clicks send a notification email to
            notifyEmails (chat summary + invoice + contact + convo link).
        notifyEmails:
          $ref: '#/components/schemas/array_6ca7bd4e'
      additionalProperties: false
      description: >-
        Post-booking/payment notification config for the UI engine invoice card
        (shown under Enable UI Engine Invoice).
    object_9473aac5:
      type: object
      properties:
        connectionId:
          type: string
          description: Google Calendar connection ID used for availability + booking.
        calendarId:
          type: string
          description: Calendar ID within the connected Google account to book against.
        timezoneMode:
          $ref: '#/components/schemas/S_738da06d'
        fixedTimezone:
          type: string
          description: IANA timezone to use when timezoneMode is "fixed".
        defaultDurationMinutes:
          $ref: '#/components/schemas/number_705e7272'
        bufferMinutes:
          type: number
          description: Buffer time (minutes) to leave between booked events.
        daysAhead:
          type: number
          description: How many days ahead visitors are allowed to book.
        suggestedFields:
          $ref: '#/components/schemas/array_573e7afd'
      additionalProperties: false
      description: >-
        Configuration for the UI engine calendar booking widget (connection,
        duration, timezone, suggested fields).
    pageId_accessToken_c7a7cf:
      type: object
      properties:
        pageId:
          type: string
        accessToken:
          type: string
      additionalProperties: false
    webhookUrl_webhookSecret_8a35db:
      type: object
      properties:
        webhookUrl:
          type: string
        webhookSecret:
          type: string
      additionalProperties: false
    enableIgnoreUrlPaths_7b2099:
      type: object
      properties:
        enableIgnoreUrlPaths:
          type: boolean
      additionalProperties: false
    object_4dc7a516:
      type: object
      properties:
        syncKbOnSave:
          type: boolean
        PUBLIC_API_KEY:
          type: string
        PRIVATE_API_KEY:
          type: string
        enableVapiOnWeb:
          type: boolean
        overrideWithVG:
          type: boolean
        promptOnWeb:
          type: boolean
        maxCostMonthly:
          type: number
        maxMinutesMonthly:
          type: number
        useVfProject:
          type: boolean
        syncTools:
          type: boolean
      additionalProperties: false
    isLlmStudio_showSources_lightUiEngine_legacyKb_118824:
      type: object
      properties:
        isLlmStudio:
          type: boolean
        showSources:
          type: boolean
        lightUiEngine:
          type: boolean
        legacyKb:
          type: boolean
        maxChunkSize:
          type: number
        handoffTimeout:
          type: number
      additionalProperties: false
    object_c8c60d25:
      type: object
      properties:
        showWhatsappButtonOnWeb:
          type: boolean
          description: Show little whatsapp button on web if it's connected.
        bgImageVisible:
          type: boolean
        widgetType:
          $ref: '#/components/schemas/S_78d98652'
        enableFixedFeedbackBtns:
          type: boolean
        switchConversationSides:
          type: boolean
        switchDashboardOnly:
          type: boolean
        disableMessageMotion:
          type: boolean
          description: When true, disables framer enter/exit animation on chat messages.
        showRuntimeSteps:
          type: boolean
          description: >-
            When true, show thinking / tool / debug steps to end users (not only
            in tester).
        streamSpeed:
          $ref: '#/components/schemas/number_64ef502d'
        voice:
          $ref: >-
            #/components/schemas/question_continueBtnLabel_dismissBtnLabel_disableVoiceOrb_d5e3fd
      additionalProperties: false
    object_d09340f1:
      type: object
      properties:
        isDefault:
          type: boolean
          description: >-
            Indicates whether this tool is the default tool for the agent.
            Defaults to false if unspecified.
        method:
          $ref: '#/components/schemas/string_f358bdc1'
        id:
          type: string
          description: >-
            A unique identifier for the tool. Ensures distinct identification
            within the system.
        name:
          type: string
          description: >-
            The name of the tool, providing a human-readable identifier for
            display purposes.
        description:
          type: string
          description: >-
            A detailed description of the tool's purpose and functionality.
            Helps users understand its role within the agent.
        serverUrl:
          type: string
          description: >-
            The server URL where the tool's operations are performed. Used for
            network-based integrations.
        serverUrlSecret:
          type: string
          description: >-
            A secret token or key associated with the server URL. Provides
            secure access to the tool's backend services.
        createdAt:
          type: string
          description: >-
            The timestamp when the tool was created, formatted as an ISO 8601
            string. Useful for tracking tool lifecycle.
        updatedAt:
          type: string
          description: >-
            The timestamp when the tool was last updated, formatted as an ISO
            8601 string. Useful for versioning and auditing.
        disabled:
          type: boolean
          description: >-
            Indicates whether the tool is currently disabled. A disabled tool
            cannot be used by the agent.
        isVapiTool:
          type: boolean
          description: >-
            Indicates whether the tool is a Virtual API (VAPI) tool. VAPI tools
            enable interaction with external APIs.
        vapiId:
          type: string
          description: >-
            A unique identifier for the VAPI associated with this tool. Used for
            integration with specific API endpoints.
        isGlobal:
          type: boolean
          description: >-
            If true, this tool is globally accessible to all nodes and agents.
            Overrides context-specific restrictions.
        variablesIds:
          $ref: '#/components/schemas/array_bc125ddb'
        agentId:
          type: string
          description: >-
            The unique identifier of the agent associated with this tool. Helps
            in linking the tool to a specific agent.
        userId:
          type: string
          description: >-
            The unique identifier of the user associated with this tool. Used
            for user-specific configurations and access control.
        backchannellingPhrases:
          $ref: '#/components/schemas/array_4abb8ec6'
        toolsSettings: {}
        fields:
          type: array
          items:
            $ref: '#/components/schemas/object_6cf70218'
        channels:
          $ref: '#/components/schemas/array_d6a5d5e7'
      required:
        - id
        - name
        - description
      additionalProperties: false
    accountCreationConfig_websocketServer_setOnResponse_enableSetOnLoad_2ecc3e:
      type: object
      properties:
        accountCreationConfig:
          type: string
          enum:
            - v2
        websocketServer:
          $ref: '#/components/schemas/d8ce3774'
        setOnResponse:
          type: boolean
        enableSetOnLoad:
          type: boolean
        voiceflowResolvedRuntime:
          type: string
          enum:
            - legacy
            - v4
      additionalProperties: false
    alwaysEnableCardButtons_2314f9:
      type: object
      properties:
        alwaysEnableCardButtons:
          type: boolean
      additionalProperties: false
    channelIds_webhookUrls_b44198:
      type: object
      properties:
        channelIds:
          type: array
          items:
            type: string
        webhookUrls:
          type: array
          items:
            type: string
      additionalProperties: false
    object_ed5d189f:
      type: object
      properties:
        maxInteractionsPerUserId:
          type: number
        enableTextIpRateLimit:
          type: boolean
        maxTextInteractionsPerIp:
          type: number
        textIpRateLimitWindowHours:
          type: number
        maxAnnualCreditsUsage:
          type: number
        maxMonthlyCreditsUsage:
          type: number
        maxMessages:
          type: number
          description: Maximum number of messages allowed per conversation
        maxMessagesRetentionDays:
          type: number
          description: Retention period in days for messages
        inactiveChatRetentionDays:
          type: number
          description: >-
            Auto-delete inactive chats after this many days (0 disables, default
            90)
        analyticsRetentionDays:
          type: number
          description: >-
            Auto-delete orphaned analytics data points after this many days (0
            disables, default 90)
      additionalProperties: false
    object_fed7d57c:
      type: object
      properties:
        key:
          type: string
          enum:
            - home
            - convos
            - faq
        label:
          type: string
        iconUrl:
          type: string
        iframeUrl:
          type: string
        iframeHeight:
          type: number
        hide:
          type: boolean
        homeSpecific:
          $ref: '#/components/schemas/object_8fe16344'
        faqSpecific:
          $ref: '#/components/schemas/questions_enableCustomFaq_fba2ec'
      required:
        - key
        - label
      additionalProperties: false
    object_5552960f:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
          description: >-
            A short description of what this node does and when it should be
            used, specially useful if the node is global or when the LLM detects
            automatic rerouting.
        instructions:
          type: string
          description: What should this LLM node do.
        language:
          type: string
          description: >-
            Preferred language code for this node responses and runtime
            filler/tool-status phrases (ISO-639-1, e.g. 'en', 'bg', 'es').
        mcpServers:
          type: array
          items:
            $ref: '#/components/schemas/object_24979f75'
        voiceInstructions:
          type: string
          description: >-
            The voice instructions for this node, will be used instead of
            instructions in voice channels if provided.
        isGlobal:
          type: boolean
          description: If true, this node will be always present for the LLM
        toolsIds:
          $ref: '#/components/schemas/array_71510535'
        toolsSettings:
          $ref: >-
            #/components/schemas/googleCalendar_googleCalendarConfigs_googleSheets_airtable_db2b50
        childrenNodes:
          $ref: '#/components/schemas/array_3d48ccac'
        llmConfig:
          $ref: '#/components/schemas/object_7323121a'
        routerLlmConfig:
          $ref: '#/components/schemas/object_38962c6e'
        toolUseBias:
          type: number
          description: >-
            The bias of the LLM to use tools if 0 it will never use tools, if 1
            it will only use tools.
        autoRerouter:
          $ref: '#/components/schemas/enabled_level_982555'
        type:
          $ref: '#/components/schemas/string_4b5a8c49'
        rf:
          description: The position of the node in the reactflow canvas.
        kb:
          $ref: '#/components/schemas/enabled_maxChunks_maxQueries_tags_7233fd'
        conditionData:
          $ref: '#/components/schemas/condition_55c583'
        preStart:
          $ref: '#/components/schemas/url_enabled_testConvoIdValue_dbf150'
        startConfig:
          $ref: '#/components/schemas/object_981f790b'
      required:
        - id
        - name
        - description
        - instructions
        - llmConfig
      additionalProperties: false
      description: A node in the LLM chain.
    serverUrl_serverUrlSecret_782473:
      type: object
      properties:
        serverUrl:
          type: string
        serverUrlSecret:
          type: string
      additionalProperties: false
    object_0aec1fe5:
      type: object
      properties:
        enableUIEngineForms:
          type: boolean
          description: If true, the LLM will be able to show forms on web channel only.
        geminiLiveOptions: {}
        appendBeforePrompt:
          type: string
          description: The prompt to append to the nodes' prompt.
        routerLLmOptions:
          $ref: '#/components/schemas/object_7323121a'
        defaultLLmOptions:
          $ref: '#/components/schemas/object_7323121a'
        backchannelOnChoosingNodes:
          type: boolean
          description: If true, the LLM will say uha/i see before choosing a node.
        enableUiEngine:
          type: boolean
          description: >-
            If true, the LLM will be able to show buttons, cards, images on text
            channels only.
        enableUIEngineInvoice:
          type: boolean
        enableUIEngineCalendarBooking:
          type: boolean
        uiEngineChannelConfig:
          $ref: '#/components/schemas/whatsapp_instagram_messenger_telegram_e92689'
        uiEngineAllowedTypes:
          type: array
          items:
            type: string
        fallbackModelIds:
          type: array
          items:
            $ref: '#/components/schemas/string_48078c0b'
        silenceDetection:
          $ref: >-
            #/components/schemas/enabled_timeoutSeconds_endCallAfterNPhrases_4e0b5e
        startCallPhrases:
          type: array
          items:
            type: string
        fillerWordsOnToolUsage:
          type: boolean
          description: >-
            If true, the LLM will say filler words on tool usage, like '1
            moment', 'be right back', 'you know', etc.
        toolUsageBackchannelPhrasesByLanguage:
          $ref: '#/components/schemas/object_20eef348'
        smartEndpointing:
          $ref: >-
            #/components/schemas/enabled_waitSeconds_onPunctuationSeconds_onNoPunctuationSeconds_c36aec
        stopSpeakPlan:
          $ref: '#/components/schemas/minWords_423d9d'
        callTimeoutSeconds:
          type: number
          description: The timeout for the call in seconds.
        enableEndcallTool:
          type: boolean
          description: Whether to enable endcall tool.
        voiceSpecific:
          $ref: >-
            #/components/schemas/minCharacters_maxLengthWithoutPunctuation_e7a470
        enabledGlobalTools:
          $ref: '#/components/schemas/array_f4e2bb2a'
        defaultToolOverrides:
          $ref: '#/components/schemas/object_a531ab4b'
      additionalProperties: false
      description: Global options for the nodes setup, text/voice.
    model_creditThreshold_ebefb5:
      type: object
      properties:
        model:
          $ref: '#/components/schemas/string_cf21198c'
        creditThreshold:
          type: number
          description: The credit threshold for fallback.
      additionalProperties: false
      description: Fallback settings for the agent llm model.
    object_e7317833:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether to show the agent in marketplace or not.
        priceUSD:
          type: number
          description: The price for the agent, default is 0/free
        category:
          $ref: '#/components/schemas/string_31d66209'
        creatorDisplayName:
          type: string
          description: Custom display name for the creator in the marketplace
        shortDescription:
          $ref: '#/components/schemas/string_f8b40828'
        documentation:
          type: string
          description: Full markdown documentation explaining the agent
        toolsDocumentation:
          $ref: '#/components/schemas/array_af494ccb'
        tags:
          $ref: '#/components/schemas/array_0b05f692'
        screenshots:
          $ref: '#/components/schemas/array_a39c0595'
        demoUrl:
          type: string
          description: Link to live demo
        videoUrl:
          type: string
          description: Link to demo/tutorial video
        version:
          type: string
          description: Version of the agent listing
        changelog:
          type: string
          description: Changelog/update history
        supportEmail:
          type: string
          description: Support contact email
        listedAt:
          type: number
          description: Unix timestamp when first listed
        updatedAt:
          type: number
          description: Unix timestamp of last update
        allowCanvasPreview:
          type: boolean
          description: Whether to allow users to preview the agent canvas/workflow
        allowTryAgent:
          $ref: '#/components/schemas/boolean_04510699'
        likeCount:
          $ref: '#/components/schemas/number_af364383'
        downloadCount:
          $ref: '#/components/schemas/number_0a85400f'
      additionalProperties: false
      description: Marketplace settings for the agent.
    string_1a13364e:
      type: string
      enum:
        - custom
        - solid
        - bordered
        - light
        - flat
        - faded
        - shadow
        - ghost
      description: The variant of the button. Custom is the default original styling.
    string_4bb90e82:
      type: string
      enum:
        - default
        - primary
        - secondary
        - success
        - warning
        - danger
      description: NextUI Button color token for choice/CTA/send buttons.
    string_6244c2ee:
      type: string
      enum:
        - sm
        - md
        - lg
      description: NextUI Button size token.
    string_d7a0c056:
      type: string
      enum:
        - none
        - sm
        - md
        - lg
        - full
      description: NextUI Button radius token.
    string_58084f33:
      type: string
      enum:
        - custom
        - flat
        - bordered
        - faded
        - underlined
      description: 'Chat footer input variant. Default when unset: flat.'
    string_fa95f8ca:
      type: string
      enum:
        - default
        - primary
        - secondary
        - success
        - warning
        - danger
      description: 'NextUI Input color. Default when unset: primary.'
    string_95a6d3fc:
      type: string
      enum:
        - sm
        - md
        - lg
      description: NextUI Input size token.
    string_d67dd584:
      type: string
      enum:
        - none
        - sm
        - md
        - lg
        - full
      description: NextUI Input radius token.
    humanRadius_botRadius_humanTone_botTone_536c30:
      type: object
      properties:
        humanRadius:
          type: string
          enum:
            - sm
            - md
            - lg
            - full
        botRadius:
          type: string
          enum:
            - sm
            - md
            - lg
            - full
        humanTone:
          $ref: '#/components/schemas/string_a8f0cdc3'
        botTone:
          type: string
          enum:
            - content2
            - content1
            - flat
        density:
          $ref: '#/components/schemas/string_e9a84f63'
      additionalProperties: false
      description: Chat bubble appearance overrides for human/bot messages.
    enabled_text_privacyPolicyUrl_acceptButtonLabel_87d480:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether to show privacy disclaimer before user interaction
        text:
          type: string
          description: The privacy disclaimer text to display to users
        privacyPolicyUrl:
          type: string
          description: URL to the privacy policy page
        acceptButtonLabel:
          type: string
          description: Label for the accept/proceed button
        privacyPolicyButtonLabel:
          type: string
          description: Label for the privacy policy link button
      additionalProperties: false
      description: Privacy disclaimer configuration for the agent
    enabled_rules_2204dd:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            Whether to use custom lead collection rules. If false or not set,
            uses default behavior (collect when email, phone_number, or phone is
            present)
        rules:
          $ref: '#/components/schemas/array_b9b926e1'
      additionalProperties: false
      description: >-
        Custom lead collection rules. Allows defining which variable
        combinations should trigger lead capture. If not set, defaults to
        collecting leads when email, phone_number, or phone is present.
    enabled_scope_softMatchEnabled_91b042:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            Whether cross-channel identity linking is enabled. Defaults to true
            (on) when unset.
        scope:
          $ref: '#/components/schemas/string_4eb57127'
        softMatchEnabled:
          type: boolean
          description: >-
            v2 scaffold: allow confirmation-gated soft matching. Disabled by
            default.
      additionalProperties: false
      description: Cross-channel identity resolution settings
    enabled_assignedEmails_1a1dc7:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether email channel is enabled for this agent
        assignedEmails:
          $ref: '#/components/schemas/array_90874141'
      additionalProperties: false
      description: Email channel configuration for the agent
    object_b9e5f1c4:
      type: object
      properties:
        enabled:
          type: boolean
        channels:
          type: array
          items:
            $ref: '#/components/schemas/string_450c04d3'
        matchMode:
          $ref: '#/components/schemas/string_878f361b'
        aiRule:
          type: string
          description: >-
            Natural-language rule that decides whether AI should reply to the
            inbound message.
        aiModelId:
          type: string
          description: Model used for AI-powered inbound reply decisions.
        triggerPhrases:
          $ref: '#/components/schemas/array_22dc10c0'
        availability:
          $ref: '#/components/schemas/enabled_timezone_days_startTime_631ec6'
        applyWhen:
          type: string
          enum:
            - every_message
            - first_message_only
        afterOwnershipMode:
          type: string
          enum:
            - always_reply
            - continue_rules
        participantListMode:
          type: string
          enum:
            - none
            - allowlist
            - denylist
        participantList:
          $ref: '#/components/schemas/array_05818c85'
        analyzeAttachmentsBeforeDecision:
          type: boolean
        enableHumanHandoffTool:
          type: boolean
      additionalProperties: false
      description: >-
        Reusable inbound engagement policy used to decide whether the AI should
        reply on channels like WhatsApp and email.
    object_b0cdee8a:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether auto-testing is enabled for this agent
        triggerOnEdit:
          type: boolean
          description: Automatically run tests after agent edits
        testMode:
          $ref: '#/components/schemas/string_2413128e'
        maxTurns:
          type: number
          description: Maximum number of conversation turns (undefined = natural end)
        naturalEnd:
          type: boolean
          description: Allow AI to naturally end the conversation
        testScenario:
          type: string
          description: Default test scenario/context for auto-tests
        enabledToolIds:
          $ref: '#/components/schemas/array_b68b101e'
        enableKB:
          type: boolean
          description: Whether to test knowledge base
      additionalProperties: false
      description: Auto-test configuration for automatic testing after agent edits
    enabled_apiKey_projectName_endpoint_1b7e30:
      type: object
      properties:
        enabled:
          type: boolean
          description: Whether LangSmith tracing is enabled for this agent
        apiKey:
          type: string
          description: LangSmith API Key (Service Key recommended)
        projectName:
          type: string
          description: LangSmith project name where traces will be logged
        endpoint:
          type: string
          description: LangSmith API endpoint (defaults to https://api.smith.langchain.com)
      additionalProperties: false
      description: >-
        LangSmith tracing configuration for this agent. If set, overrides
        workspace-level LangSmith settings.
    enabled_steps_notificationRules_maxScore_debf72:
      type: object
      properties:
        enabled:
          type: boolean
          default: false
        steps:
          $ref: '#/components/schemas/array_5bec2e9c'
        notificationRules:
          $ref: '#/components/schemas/array_0027d134'
        maxScore:
          type: number
          default: 100
        evaluateOnUserMessage:
          type: boolean
          default: true
        evaluateOnAIMessage:
          type: boolean
          default: true
      additionalProperties: false
      description: AI Funnel & Lead Scoring configuration for this agent
    enabled_allowEval_allowScreenshare_rememberConsentForSession_7646f0:
      type: object
      properties:
        enabled:
          type: boolean
        allowEval:
          type: boolean
        allowScreenshare:
          type: boolean
        rememberConsentForSession:
          type: boolean
        screenshareMaxFps:
          type: number
      additionalProperties: false
      description: >-
        Web-Control tool configuration (vg in-house agents on web-chat only).
        Controls per-action consent, opt-in eval, and screenshare permission for
        the visitor-facing browser-control tool family.
    message_11569e:
      type: object
      properties:
        message:
          type: string
      required:
        - message
      additionalProperties: false
    object_909fa86c:
      type: object
      properties:
        speechConfig:
          $ref: '#/components/schemas/format_sampleRate_language_f4a156'
        modelId:
          type: string
        patienceFactor:
          type: number
        language:
          type: string
        provider:
          $ref: '#/components/schemas/string_37468a80'
        randomOptions: {}
        internal:
          $ref: '#/components/schemas/inputAudioStream_debug_033ce3'
        apiKey:
          type: string
        platformSpecific:
          $ref: '#/components/schemas/deepgram_assemblyai_googleCloud_0a2304'
        utteranceThreshold:
          type: number
        inputVoiceEnhancer:
          type: boolean
      required:
        - provider
      additionalProperties: false
      description: >-
        **Transcriber**: The configuration options for the transcriber provider
        used by the agent.
    S_64ca902a:
      allOf:
        - $ref: '#/components/schemas/object_2ff8c26f'
        - $ref: '#/components/schemas/internal_265bf9'
      description: >-
        **Speech Generation**: The configuration options for the speech
        generation provider used by the agent.
    object_1a0081a5:
      type: object
      properties:
        recordAudio:
          type: boolean
        backgroundNoise:
          type: string
          enum:
            - restaurant
            - office
            - street
            - none
        enableWebCalling:
          type: boolean
        enableVoiceUiPresenter:
          type: boolean
        enableSonioxGeminiTranscription:
          type: boolean
        firstInputChunkUNIXMs:
          type: number
        firstOutputChunkUNIXMs:
          type: number
      required:
        - recordAudio
      additionalProperties: false
      description: '**Call Configuration**: The call configuration settings for the agent.'
    cc80b10d:
      anyOf:
        - type: string
          enum:
            - smart
        - type: string
          enum:
            - simple
    string_48078c0b:
      type: string
      enum:
        - moonshotai/Kimi-K2-Instruct
        - moonshotai/Kimi-K3
        - moonshotai/Kimi-K2.6
        - moonshotai/Kimi-K2.5
        - moonshotai/Kimi-K2-Thinking
        - moonshotai/Kimi-K2.5-fast
        - zai-org/GLM-5.2
        - zai-org/GLM-5
        - zai-org/GLM-5.1
        - zai-org/GLM-4.7-FP8
        - zai-org/GLM-4.5
        - zai-org/GLM-4.5-Air
        - MiniMaxAI/MiniMax-M2.1
        - MiniMaxAI/MiniMax-M2.5
        - MiniMaxAI/MiniMax-M3
        - deepseek-ai/DeepSeek-V3.2
        - deepseek-ai/DeepSeek-V4-Pro
        - deepseek-ai/DeepSeek-V3.2-fast
        - deepseek-ai/DeepSeek-R1-0528
        - deepseek-ai/DeepSeek-R1-0528-fast
        - deepseek-ai/DeepSeek-V3-0324
        - deepseek-ai/DeepSeek-V3-0324-fast
        - Qwen/Qwen3.5-397B-A17B
        - Qwen/Qwen2.5-VL-72B-Instruct
        - Qwen/Qwen3-235B-A22B-Instruct-2507
        - Qwen/Qwen3-235B-A22B-Thinking-2507
        - Qwen/Qwen3-30B-A3B-Instruct-2507
        - Qwen/Qwen3-30B-A3B-Thinking-2507
        - Qwen/Qwen3-Coder-480B-A35B-Instruct
        - Qwen/Qwen3-Coder-30B-A3B-Instruct
        - Qwen/Qwen3-Next-80B-A3B-Thinking
        - Qwen/Qwen3-32B
        - Qwen/Qwen3-32B-fast
        - Qwen/Qwen2.5-Coder-7B-fast
        - meta-llama/Llama-3.3-70B-Instruct-fast
        - meta-llama/Llama-3.3-70B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct-fast
        - nvidia/Llama-3_1-Nemotron-Ultra-253B-v1
        - nvidia/nemotron-3-super-120b-a12b
        - nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B
        - google/gemma-3-27b-it
        - google/gemma-3-27b-it-fast
        - google/gemma-2-2b-it
        - google/gemma-2-9b-it-fast
        - openai/gpt-oss-120b
        - openai/gpt-oss-20b
        - NousResearch/Hermes-4-405B
        - NousResearch/Hermes-4-70B
        - PrimeIntellect/INTELLECT-3
        - gpt-5.6
        - gpt-5.6-terra
        - gpt-5.6-luna
        - gpt-5.4-thinking-latest
        - gpt-5.4
        - gpt-5.3-chat-latest
        - gpt-5.2-2025-12-11
        - gpt-5-chat-latest
        - gpt-5-2025-08-07
        - gpt-5-mini-2025-08-07
        - gpt-5-nano-2025-08-07
        - o1
        - o1-mini
        - o3-mini
        - azure-eu-gpt-4o
        - azure-na-gpt-4o
        - gpt-4o
        - gpt-4o-mini
        - gpt-4.5-preview-2025-02-27
        - gpt-4.1-2025-04-14
        - gpt-4.1-mini-2025-04-14
        - ft:gpt-4o-mini-2024-07-18:personal:4o-with-tools-t11:A6mByttv
        - gpt-3.5-turbo
        - grok-4.5
        - grok-3-fast
        - grok-3-mini
        - grok-2-latest
        - claude-opus-4-7
        - claude-opus-4-6
        - claude-opus-4-5-20251101
        - claude-opus-4-20250514
        - claude-sonnet-4-5-20250929
        - claude-haiku-4-5-20251001
        - claude-sonnet-4-20250514
        - claude-3-7-sonnet-20250219
        - claude-3-5-sonnet-20241022
        - claude-3-5-haiku-20241022
        - claude-3-opus-20240229
        - claude-3-sonnet-20240229
        - deepseek-chat
        - gemini-3.5-flash
        - gemini-3.1-pro-preview
        - gemini-3.1-flash-lite
        - gemini-3.1-flash-lite-preview
        - gemini-3-pro-preview
        - gemini-3-flash-preview
        - gemini-2.5-pro
        - gemini-2.5-pro-preview-03-25
        - gemini-2.5-pro-exp-03-25
        - gemini-2.5-flash
        - gemini-2.5-flash-lite
        - gemini-2.5-flash-lite-preview-09-2025
        - gemini-2.5-flash-preview-05-20
        - gemini-2.0-flash-thinking-exp-1219
        - gemini-2.0-flash-exp
        - gemini-1.5-pro
        - gemini-1.5-flash
        - gemini-1.0-pro
        - deepseek-r1-distill-llama-70b
        - meta-llama/llama-4-scout-17b-16e-instruct
        - meta-llama/llama-4-maverick-17b-128e-instruct
        - llama-3.3-70b-versatile
        - llama-3.1-8b-instant
        - llama3-70b-8192
        - gemma2-9b-it
        - gemma-4-31b-dense
        - gemma-4-26b-moe
        - gemma-7b-it
        - qwen-max-latest
        - qwen-plus-latest
        - qwen-turbo-latest
        - custom-llm
    array_afea93b3:
      type: array
      items:
        type: string
      maxItems: 10
      description: >-
        Up to 10 additional notification recipients beyond workspaceEmails and
        assigned org clients.
    array_6ca7bd4e:
      type: array
      items:
        type: string
      description: >-
        Recipients for invoice button-click notifications. Defaults to workspace
        emails in the UI; may be edited freely.
    S_738da06d:
      anyOf:
        - type: string
          enum:
            - auto
        - type: string
          enum:
            - fixed
      default: auto
      description: >-
        Whether to auto-detect the visitor timezone or always use a fixed
        timezone.
    number_705e7272:
      type: number
      default: 30
      description: Default meeting duration in minutes.
    array_573e7afd:
      type: array
      items:
        $ref: '#/components/schemas/id_type_label_required_d31ded'
      description: >-
        Suggested confirmation fields (e.g. name, email) collected after a slot
        is picked.
    S_78d98652:
      anyOf:
        - type: string
          enum:
            - direct-chat
        - type: string
          enum:
            - tabs
    number_64ef502d:
      type: number
      minimum: 1
      maximum: 10
      description: >-
        How fast bot text streams in the widget (1 slow ... 10 fast). Applies to
        all turns.
    question_continueBtnLabel_dismissBtnLabel_disableVoiceOrb_d5e3fd:
      type: object
      properties:
        question:
          type: string
        continueBtnLabel:
          type: string
        dismissBtnLabel:
          type: string
        disableVoiceOrb:
          type: boolean
        voiceOnlyMode:
          type: boolean
        disableChatWhenVoiceOpen:
          type: boolean
      required:
        - question
        - continueBtnLabel
        - dismissBtnLabel
      additionalProperties: false
    string_f358bdc1:
      type: string
      enum:
        - GET
        - POST
        - PUT
        - PATCH
      description: >-
        The HTTP method used by this tool. Acceptable values are 'GET', 'POST',
        'PUT', or 'PATCH'. Defaults to 'POST' if unspecified.
    array_bc125ddb:
      type: array
      items:
        type: string
      description: >-
        An array of variable IDs associated with the tool. Each ID maps to a
        specific variable used by the tool.
    array_4abb8ec6:
      type: array
      items:
        type: string
      description: >-
        An array of phrases used for backchannel communication. These phrases
        help in maintaining conversational flow.
    object_6cf70218:
      type: object
      properties:
        id:
          type: string
          description: >-
            A unique identifier for the field, ensuring it is distinct across
            the system.
        in:
          type: string
          description: >-
            Defines the location or context in which the field is utilized.
            Common values include 'query', 'body', or 'header'.
        type:
          $ref: '#/components/schemas/string_ed9b3388'
        value:
          description: >-
            The current assigned value of the field. This value is optional and
            supports any type depending on the field's context.
        defaultValue:
          description: >-
            A predefined value assigned to the field when no specific value is
            provided. Useful for ensuring consistent behavior.
        key:
          type: string
          description: >-
            The unique key that identifies this tool field or variable. Often
            used for referencing the field programmatically.
        description:
          type: string
          description: >-
            A detailed explanation of the field's purpose and usage. Helps users
            understand the field's role in the system.
        required:
          type: boolean
          description: >-
            Indicates whether the presence of this field is mandatory for
            successful operation. Defaults to false if unspecified.
        reusable:
          type: boolean
          description: >-
            Denotes whether this field can be reused across multiple contexts or
            tools. Useful for reducing redundancy.
        isEnv:
          type: boolean
          description: >-
            Specifies if this field represents an environment variable,
            typically used for configuration or deployment.
        isSystem:
          type: boolean
          description: >-
            Indicates whether this field is a system-level variable, reserved
            for core operations or internal use.
        isGlobal:
          type: boolean
          description: >-
            If enabled, this field remains globally accessible to the agent
            across all operational contexts. Useful for global constants.
        agentId:
          type: string
          description: >-
            References the unique identifier of the agent associated with this
            field. Helps in mapping fields to specific agents.
        userId:
          type: string
          description: >-
            References the unique identifier of the user associated with this
            field. Useful for user-specific customizations.
      required:
        - id
      additionalProperties: false
    array_d6a5d5e7:
      type: array
      items:
        $ref: '#/components/schemas/string_9c5dfc02'
      description: The channels that the tool can be used on.
    d8ce3774:
      anyOf:
        - type: string
          enum:
            - edge
        - type: string
          enum:
            - nodejs
    object_8fe16344:
      type: object
      properties:
        buttons:
          $ref: '#/components/schemas/array_c45e9322'
        iceBreakers:
          type: array
          items:
            type: string
        showLiveCall:
          type: boolean
        showRecentConvo:
          type: boolean
        showDirectHandoff:
          type: boolean
        headerHeight:
          type: number
        headerTitle:
          type: string
        headerDescription:
          type: string
      required:
        - buttons
      additionalProperties: false
    questions_enableCustomFaq_fba2ec:
      type: object
      properties:
        questions:
          $ref: '#/components/schemas/array_0bebf181'
        enableCustomFaq:
          type: boolean
      required:
        - questions
      additionalProperties: false
    object_24979f75:
      type: object
      properties:
        name:
          type: string
        url:
          type: string
        transport:
          type: string
          enum:
            - sse
            - http
            - websocket
            - stdio
        useNodeEventSource:
          type: boolean
        reconnect:
          $ref: '#/components/schemas/enabled_maxAttempts_delayMs_5906b9'
        command:
          type: string
        args:
          type: array
          items:
            type: string
        env:
          type: object
          additionalProperties:
            type: string
        cwd:
          type: string
        headers:
          type: object
          additionalProperties:
            type: string
      additionalProperties: false
    array_71510535:
      type: array
      items:
        type: string
      description: The tools that will be available for this node
    googleCalendar_googleCalendarConfigs_googleSheets_airtable_db2b50:
      type: object
      properties:
        googleCalendar:
          $ref: '#/components/schemas/object_34b8472f'
        googleCalendarConfigs:
          type: array
          items:
            $ref: '#/components/schemas/object_06cc139c'
        googleSheets:
          $ref: '#/components/schemas/object_97d40346'
        airtable:
          $ref: '#/components/schemas/connectionId_baseId_tableId_method_041ac7'
      additionalProperties: false
    array_3d48ccac:
      type: array
      items:
        $ref: '#/components/schemas/nodeId_condition_0b6de1'
      description: >-
        The outputs of this node which the node after finishing will choose from
        to either advance or to keep looping in this node till it caputures or
        reaches one of the mentioned routers.
    object_7323121a:
      type: object
      properties:
        modelId:
          $ref: '#/components/schemas/string_48078c0b'
        temperature:
          type: number
          description: The temperature of the LLM
        maxTokens:
          type: number
          description: The max tokens of the LLM
        serviceTier:
          type: string
          enum:
            - default
            - priority
        reasoningEffort:
          type: string
          enum:
            - none
            - low
            - medium
            - high
            - xhigh
            - max
        customModelId:
          type: string
          description: The custom model id of the LLM
        serverUrl:
          type: string
          description: The server url of the LLM
        apiKey:
          type: string
          description: The api key of the LLM
      required:
        - modelId
        - temperature
        - maxTokens
      additionalProperties: false
    object_38962c6e:
      type: object
      properties:
        modelId:
          $ref: '#/components/schemas/string_48078c0b'
        temperature:
          type: number
          description: The temperature of the LLM
        maxTokens:
          type: number
          description: The max tokens of the LLM
        serviceTier:
          type: string
          enum:
            - default
            - priority
        reasoningEffort:
          type: string
          enum:
            - none
            - low
            - medium
            - high
            - xhigh
            - max
        customModelId:
          type: string
          description: The custom model id of the LLM
        serverUrl:
          type: string
          description: The server url of the LLM
        apiKey:
          type: string
          description: The api key of the LLM
      required:
        - modelId
        - temperature
        - maxTokens
      additionalProperties: false
      description: >-
        The LLM config that will be used for the router node, NOTE: This must be
        a fast LLM model or the latency will be too high between responses.
    enabled_level_982555:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            If true, the LLM will try to detect if the user has changed his mind
            about something enabling the AI to rewind back to the previous node.
        level:
          type: number
          description: >-
            The level of rewinding, if 1 the LLM will have access to only 1
            level or rewind capabilities meaning if it went from node A > B > C
            > D  then if it at node d & it detects it needs to be at node B
            again it will be able to rewind back to node B if the level is at
            least 2, it will not be able to detect node A unless the level is 3
            or more, and so on.
      required:
        - enabled
        - level
      additionalProperties: false
      description: The auto rerouter of this node.
    string_4b5a8c49:
      type: string
      enum:
        - start
        - end
        - default
        - condition
        - note
      description: The type of the node, if not provided it will be a normal LLM node.
    enabled_maxChunks_maxQueries_tags_7233fd:
      type: object
      properties:
        enabled:
          type: boolean
        maxChunks:
          type: number
          description: The max chunks to retrieve per generated search query.
        maxQueries:
          type: number
          description: >-
            The max number of search queries the runtime may generate when KB
            search is needed.
        tags:
          $ref: '#/components/schemas/array_c6eb0527'
        smartSearch:
          type: boolean
          description: >-
            If true, the LLM will use the smart search to search through the
            docs.
        searchOnStart:
          type: boolean
          description: >-
            If true, run KB search on the conversation start trigger to prefetch
            context for the opening reply. Defaults to false.
      required:
        - enabled
        - maxChunks
      additionalProperties: false
    condition_55c583:
      type: object
      properties:
        condition:
          type: string
          description: The condition to check.
      required:
        - condition
      additionalProperties: false
    url_enabled_testConvoIdValue_dbf150:
      type: object
      properties:
        url:
          type: string
          description: The URL to send the GET request to.
        enabled:
          type: boolean
          description: >-
            If true, we will send a GET request to the URL before starting the
            node.
        testConvoIdValue:
          type: string
          description: The value to test the URL with.
      additionalProperties: false
      description: >-
        The pre start tool of the node, we will send a GET request to this URL
        before starting the node and provide the results to the AI. GET
        {url}/{user_id}/{node_name}
    object_981f790b:
      type: object
      properties:
        initialMessage:
          type: string
          description: >-
            Fixed opening message for text channels when the AI speaks first.
            Empty/omitted = AI generates from the prompt.
        voiceInitialMessage:
          type: string
          description: >-
            Fixed opening message for voice channels when the AI speaks first.
            Falls back to initialMessage when unset. Empty/omitted = AI
            generates from the prompt.
        initialUiMessages:
          type: array
          description: >-
            UI Engine JSON array used as the fixed opening for text channels.
            Saved at design-time; no runtime generation.
          items: {}
        userStarts:
          type: boolean
          description: >-
            Whether the user or AI agent gives the first message by default for
            text channels (and voice when no voice override is set).
        inboundUserStarts:
          type: boolean
          description: >-
            Optional override for inbound voice calls. When set, this replaces
            the default first-speaker behavior for callers who dial the agent.
        outboundUserStarts:
          type: boolean
          description: >-
            Optional override for outbound voice calls. When set, this replaces
            the default first-speaker behavior for calls the agent places to
            someone else.
        cacheFirstResponse:
          type: boolean
          description: >-
            Deprecated. First AI reply is cached unless preStart is enabled or
            variables/prompt personalization apply.
      additionalProperties: false
      description: Configuration for start nodes
    whatsapp_instagram_messenger_telegram_e92689:
      type: object
      properties:
        whatsapp:
          type: object
          additionalProperties:
            type: boolean
        instagram:
          type: object
          additionalProperties:
            type: boolean
        messenger:
          type: object
          additionalProperties:
            type: boolean
        telegram:
          type: object
          additionalProperties:
            type: boolean
        web:
          type: object
          additionalProperties:
            type: boolean
      additionalProperties: false
    enabled_timeoutSeconds_endCallAfterNPhrases_4e0b5e:
      type: object
      properties:
        enabled:
          $ref: '#/components/schemas/boolean_339c6978'
        timeoutSeconds:
          $ref: '#/components/schemas/number_e385c20d'
        endCallAfterNPhrases:
          $ref: '#/components/schemas/number_a2ea793b'
      additionalProperties: false
    object_20eef348:
      type: object
      additionalProperties:
        type: array
        items:
          type: string
      description: >-
        Cached filler/tool-status phrases by language code, generated on save to
        avoid runtime translation latency.
    enabled_waitSeconds_onPunctuationSeconds_onNoPunctuationSeconds_c36aec:
      type: object
      properties:
        enabled:
          type: boolean
        waitSeconds:
          type: number
        onPunctuationSeconds:
          type: number
        onNoPunctuationSeconds:
          type: number
        onNumberSeconds:
          type: number
      additionalProperties: false
    minWords_423d9d:
      type: object
      properties:
        minWords:
          type: number
          description: >-
            The minimum words to speak from the user for the AI to be
            interrupted and stop talking .
      additionalProperties: false
    minCharacters_maxLengthWithoutPunctuation_e7a470:
      type: object
      properties:
        minCharacters:
          type: number
          description: >-
            The minimum number of characters to init the speech gen to generate
            audio for, the more the higher the latency will be, default is 5
        maxLengthWithoutPunctuation:
          type: number
          description: >-
            The maximum length of the string without punctuation to init the
            speech gen to generate audio for, the more the higher the latency
            will be, default is 100
      additionalProperties: false
    array_f4e2bb2a:
      type: array
      items:
        type: string
        enum:
          - handoffHumanDashboardTool
      description: The global tools that will be enabled for the LLM.
    object_a531ab4b:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/description_fields_555083'
      description: Overrides for default system tools configuration.
    string_cf21198c:
      type: string
      enum:
        - moonshotai/Kimi-K2-Instruct
        - moonshotai/Kimi-K3
        - moonshotai/Kimi-K2.6
        - moonshotai/Kimi-K2.5
        - moonshotai/Kimi-K2-Thinking
        - moonshotai/Kimi-K2.5-fast
        - zai-org/GLM-5.2
        - zai-org/GLM-5
        - zai-org/GLM-5.1
        - zai-org/GLM-4.7-FP8
        - zai-org/GLM-4.5
        - zai-org/GLM-4.5-Air
        - MiniMaxAI/MiniMax-M2.1
        - MiniMaxAI/MiniMax-M2.5
        - MiniMaxAI/MiniMax-M3
        - deepseek-ai/DeepSeek-V3.2
        - deepseek-ai/DeepSeek-V4-Pro
        - deepseek-ai/DeepSeek-V3.2-fast
        - deepseek-ai/DeepSeek-R1-0528
        - deepseek-ai/DeepSeek-R1-0528-fast
        - deepseek-ai/DeepSeek-V3-0324
        - deepseek-ai/DeepSeek-V3-0324-fast
        - Qwen/Qwen3.5-397B-A17B
        - Qwen/Qwen2.5-VL-72B-Instruct
        - Qwen/Qwen3-235B-A22B-Instruct-2507
        - Qwen/Qwen3-235B-A22B-Thinking-2507
        - Qwen/Qwen3-30B-A3B-Instruct-2507
        - Qwen/Qwen3-30B-A3B-Thinking-2507
        - Qwen/Qwen3-Coder-480B-A35B-Instruct
        - Qwen/Qwen3-Coder-30B-A3B-Instruct
        - Qwen/Qwen3-Next-80B-A3B-Thinking
        - Qwen/Qwen3-32B
        - Qwen/Qwen3-32B-fast
        - Qwen/Qwen2.5-Coder-7B-fast
        - meta-llama/Llama-3.3-70B-Instruct-fast
        - meta-llama/Llama-3.3-70B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct
        - meta-llama/Meta-Llama-3.1-8B-Instruct-fast
        - nvidia/Llama-3_1-Nemotron-Ultra-253B-v1
        - nvidia/nemotron-3-super-120b-a12b
        - nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B
        - google/gemma-3-27b-it
        - google/gemma-3-27b-it-fast
        - google/gemma-2-2b-it
        - google/gemma-2-9b-it-fast
        - openai/gpt-oss-120b
        - openai/gpt-oss-20b
        - NousResearch/Hermes-4-405B
        - NousResearch/Hermes-4-70B
        - PrimeIntellect/INTELLECT-3
        - gpt-5.6
        - gpt-5.6-terra
        - gpt-5.6-luna
        - gpt-5.4-thinking-latest
        - gpt-5.4
        - gpt-5.3-chat-latest
        - gpt-5.2-2025-12-11
        - gpt-5-chat-latest
        - gpt-5-2025-08-07
        - gpt-5-mini-2025-08-07
        - gpt-5-nano-2025-08-07
        - o1
        - o1-mini
        - o3-mini
        - azure-eu-gpt-4o
        - azure-na-gpt-4o
        - gpt-4o
        - gpt-4o-mini
        - gpt-4.5-preview-2025-02-27
        - gpt-4.1-2025-04-14
        - gpt-4.1-mini-2025-04-14
        - ft:gpt-4o-mini-2024-07-18:personal:4o-with-tools-t11:A6mByttv
        - gpt-3.5-turbo
        - grok-4.5
        - grok-3-fast
        - grok-3-mini
        - grok-2-latest
        - claude-opus-4-7
        - claude-opus-4-6
        - claude-opus-4-5-20251101
        - claude-opus-4-20250514
        - claude-sonnet-4-5-20250929
        - claude-haiku-4-5-20251001
        - claude-sonnet-4-20250514
        - claude-3-7-sonnet-20250219
        - claude-3-5-sonnet-20241022
        - claude-3-5-haiku-20241022
        - claude-3-opus-20240229
        - claude-3-sonnet-20240229
        - deepseek-chat
        - gemini-3.5-flash
        - gemini-3.1-pro-preview
        - gemini-3.1-flash-lite
        - gemini-3.1-flash-lite-preview
        - gemini-3-pro-preview
        - gemini-3-flash-preview
        - gemini-2.5-pro
        - gemini-2.5-pro-preview-03-25
        - gemini-2.5-pro-exp-03-25
        - gemini-2.5-flash
        - gemini-2.5-flash-lite
        - gemini-2.5-flash-lite-preview-09-2025
        - gemini-2.5-flash-preview-05-20
        - gemini-2.0-flash-thinking-exp-1219
        - gemini-2.0-flash-exp
        - gemini-1.5-pro
        - gemini-1.5-flash
        - gemini-1.0-pro
        - deepseek-r1-distill-llama-70b
        - meta-llama/llama-4-scout-17b-16e-instruct
        - meta-llama/llama-4-maverick-17b-128e-instruct
        - llama-3.3-70b-versatile
        - llama-3.1-8b-instant
        - llama3-70b-8192
        - gemma2-9b-it
        - gemma-4-31b-dense
        - gemma-4-26b-moe
        - gemma-7b-it
        - qwen-max-latest
        - qwen-plus-latest
        - qwen-turbo-latest
        - custom-llm
      description: The model to use for fallback.
    string_31d66209:
      type: string
      enum:
        - Customer Support
        - Sales & Marketing
        - Productivity
        - Education
        - Entertainment
        - Other
      description: Category of the agent
    string_f8b40828:
      type: string
      maxLength: 200
      description: Short tagline/description shown in listing cards (max 200 chars)
    array_af494ccb:
      type: array
      items:
        $ref: '#/components/schemas/name_description_codeUrl_docsUrl_2a7fd1'
      description: Documentation for tools included with the agent
    array_0b05f692:
      type: array
      items:
        type: string
      description: Tags for discoverability
    array_a39c0595:
      type: array
      items:
        type: string
      description: Array of screenshot URLs
    boolean_04510699:
      type: boolean
      default: true
      description: Whether to allow users to try the agent widget
    number_af364383:
      type: number
      default: 0
      description: Total number of likes for this agent
    number_0a85400f:
      type: number
      default: 0
      description: Total number of downloads/installs for this agent
    string_a8f0cdc3:
      type: string
      enum:
        - primary
        - primarySoft
        - secondary
        - success
        - default
        - content1
      description: Color/look of human (user) chat bubbles.
    string_e9a84f63:
      type: string
      enum:
        - compact
        - comfortable
        - spacious
      description: >-
        Padding + text tightness for both human and bot bubbles. compact =
        tighter, spacious = roomier.
    array_b9b926e1:
      type: array
      items:
        $ref: '#/components/schemas/variables_description_3edfe5'
      description: >-
        Array of rule sets. A lead is collected if it matches ANY rule set (OR
        condition between rules). Each rule requires ALL its variables to be
        present (AND condition within a rule).
    string_4eb57127:
      type: string
      enum:
        - agent
        - workspace
      description: >-
        Identity linking scope. Default agent  -  only link convos within this
        agent.
    array_90874141:
      type: array
      items:
        $ref: '#/components/schemas/object_64e580f5'
      description: Array of configured email accounts with their specific settings
    string_450c04d3:
      type: string
      enum:
        - whatsapp
        - email
        - messenger
        - instagram
        - telegram
        - discord
        - sms
        - web-chat
    string_878f361b:
      type: string
      enum:
        - always_reply_regardless
        - phrases_only
        - ai_only
        - phrases_then_ai
    array_22dc10c0:
      type: array
      items:
        type: string
      description: >-
        Exact user-defined phrases or tags that can trigger an immediate AI
        reply without using the AI gate.
    enabled_timezone_days_startTime_631ec6:
      type: object
      properties:
        enabled:
          type: boolean
        timezone:
          type: string
        days:
          type: array
          items:
            $ref: '#/components/schemas/string_48ad2552'
        startTime:
          type: string
          pattern: ^([01]\d|2[0-3]):([0-5]\d)$
        endTime:
          type: string
          pattern: ^([01]\d|2[0-3]):([0-5]\d)$
      additionalProperties: false
    array_05818c85:
      type: array
      items:
        type: string
      description: >-
        Participant identifiers that should be explicitly allowed or denied
        before any phrase or AI rule runs.
    string_2413128e:
      type: string
      enum:
        - full
        - prompt-only
        - with-tools
        - with-kb
        - tools-only
        - kb-only
      description: Test mode configuration
    array_b68b101e:
      type: array
      items:
        type: string
      description: Specific tool IDs to include in tests
    array_5bec2e9c:
      type: array
      items:
        $ref: '#/components/schemas/object_0eb5f5f5'
      default: []
    array_0027d134:
      type: array
      items:
        $ref: '#/components/schemas/object_635dbd1e'
      default: []
    format_sampleRate_language_f4a156:
      type: object
      properties:
        format:
          type: string
        sampleRate:
          type: number
        language:
          type: string
      additionalProperties: false
    string_37468a80:
      type: string
      enum:
        - deepgram
        - gladia
        - assemblyai
        - speechmatics
        - google-cloud-speech
        - google-live-transcription
    inputAudioStream_debug_033ce3:
      type: object
      properties:
        inputAudioStream: {}
        debug:
          type: boolean
      additionalProperties: false
    deepgram_assemblyai_googleCloud_0a2304:
      type: object
      properties:
        deepgram:
          $ref: '#/components/schemas/object_c1d41a1e'
        assemblyai:
          $ref: '#/components/schemas/modelId_36b767'
        googleCloud:
          $ref: '#/components/schemas/object_1ee0ed78'
      additionalProperties: false
    object_2ff8c26f:
      type: object
      properties:
        highAudioQuality:
          type: boolean
          description: >-
            Generate highest quality audio possible, must have pro plan or
            higher on elevenlabs to enable your own key to work with this
            option.
        provider:
          $ref: '#/components/schemas/string_729a1dcd'
        modelId:
          type: string
          description: The model id of the speech gen.
        voiceId:
          type: string
          description: The voice id for the speech service.
        apiKey:
          type: string
        region:
          type: string
        backgroundNoise:
          type: string
          enum:
            - restaurant
            - office
            - park
            - street
        punctuationBreaks:
          type: array
          items:
            type: string
        platformSpecific:
          $ref: '#/components/schemas/elevenLabs_playht_cartesia_ultravox_6c9ae9'
        backChannelling:
          type: boolean
          description: >-
            Whether to say umm, sure, etc.. when the user is talking for too
            long.
        language:
          type: string
        enableLongMessageBackchannelling:
          type: boolean
          description: >-
            Whether to say umm, sure, etc.. when the user is talking for too
            long.
        backchannelMessages:
          type: array
          items:
            type: string
        backchannelInterval:
          type: number
        wordsReplacements:
          $ref: '#/components/schemas/array_74b8ca69'
      required:
        - provider
    internal_265bf9:
      type: object
      properties:
        internal:
          $ref: >-
            #/components/schemas/inputTextStream_audioConfig_emitOnComplete_e9b0fe
    id_type_label_required_d31ded:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
        label:
          type: string
        required:
          type: boolean
      required:
        - id
        - type
        - label
      additionalProperties: false
    string_ed9b3388:
      type: string
      enum:
        - string
        - number
        - boolean
        - system
      description: >-
        Specifies the variable type of the field. Acceptable values include
        'string', 'number', 'boolean', and 'system'.
    string_9c5dfc02:
      type: string
      enum:
        - web-chat
        - whatsapp
        - instagram
        - telegram
        - discord
        - gb-chat
        - vapi
        - messenger
        - voice
        - telephony
        - outlook
        - zoho
        - sms
    array_c45e9322:
      type: array
      items:
        $ref: '#/components/schemas/key_label_iconUrl_show_d5d00f'
    array_0bebf181:
      type: array
      items:
        $ref: '#/components/schemas/id_question_answer_key_082e34'
    enabled_maxAttempts_delayMs_5906b9:
      type: object
      properties:
        enabled:
          type: boolean
        maxAttempts:
          type: number
        delayMs:
          type: number
      additionalProperties: false
    object_34b8472f:
      type: object
      properties:
        connectionId:
          type: string
        calendarId:
          type: string
        timezone:
          type: string
        defaultCallerTimezone:
          type: string
        label:
          type: string
        description:
          type: string
        bookingMode:
          type: string
          enum:
            - route
            - union
        methods:
          type: array
          items:
            $ref: '#/components/schemas/string_e01bf100'
      additionalProperties: false
    object_06cc139c:
      type: object
      properties:
        id:
          type: string
        connectionId:
          type: string
        calendarId:
          type: string
        calendarName:
          type: string
        timezone:
          type: string
        label:
          type: string
        description:
          type: string
      additionalProperties: false
    object_97d40346:
      type: object
      properties:
        connectionId:
          type: string
        sheetId:
          type: string
        method:
          type: string
        sheetTabName:
          type: string
        headerRowIndex:
          type: number
        headerDescriptions:
          type: object
          additionalProperties:
            type: string
        identifierColumn:
          type: string
        identityFields:
          $ref: '#/components/schemas/phone_email_name_custom_f7812b'
        queryableFields:
          type: array
          items:
            type: string
      additionalProperties: false
    connectionId_baseId_tableId_method_041ac7:
      type: object
      properties:
        connectionId:
          type: string
        baseId:
          type: string
        tableId:
          type: string
        method:
          type: string
        fieldDescriptions:
          type: object
          additionalProperties:
            type: string
        identifierField:
          type: string
      additionalProperties: false
    nodeId_condition_0b6de1:
      type: object
      properties:
        nodeId:
          type: string
        condition:
          type: string
          description: >-
            The condition that will be checked to determine if the node should
            advanced to the selected node id or not or should simply loop in the
            current node.
      required:
        - nodeId
        - condition
      additionalProperties: false
    array_c6eb0527:
      type: array
      items:
        type: string
      description: The tags to use to filter the docs we search through
    boolean_339c6978:
      type: boolean
      default: false
      description: >-
        Whether to enable the silence detection feature which will insert filler
        phrases during long periods of silence
    number_e385c20d:
      type: number
      default: 60
      description: Number of seconds of silence before triggering a filler phrase
    number_a2ea793b:
      type: number
      default: 1
      description: >-
        Number of filler phrases utterances to say before ending the call if 0
        it will end the call instantly after reching the timeout.
    description_fields_555083:
      type: object
      properties:
        description:
          type: string
          nullable: true
        fields:
          $ref: '#/components/schemas/object_ea4c35b2'
      additionalProperties: false
    name_description_codeUrl_docsUrl_2a7fd1:
      type: object
      properties:
        name:
          type: string
          description: Name of the tool
        description:
          type: string
          description: Description of what the tool does
        codeUrl:
          type: string
          description: URL to the tool code/repository
        docsUrl:
          type: string
          description: URL to external documentation
        setupInstructions:
          type: string
          description: How to set up/configure the tool
      required:
        - name
        - description
      additionalProperties: false
    variables_description_3edfe5:
      type: object
      properties:
        variables:
          $ref: '#/components/schemas/array_a4d63322'
        description:
          type: string
          description: Optional description of what this rule captures
      required:
        - variables
      additionalProperties: false
    object_64e580f5:
      type: object
      properties:
        provider:
          $ref: '#/components/schemas/string_7776e73c'
        connectionId:
          type: string
          description: ID of the email connection from workspace
        email:
          type: string
          description: Email address for display purposes
        replyDelay:
          $ref: '#/components/schemas/number_b0a02772'
        replyDelayMinutes:
          $ref: '#/components/schemas/number_22e6cb52'
        whenToReply:
          $ref: '#/components/schemas/string_62d3c53b'
        replyRule:
          $ref: '#/components/schemas/string_1a949bb9'
        humanNotifyRule:
          $ref: '#/components/schemas/string_30364b0d'
        notifyWorkspaceOwners:
          $ref: '#/components/schemas/boolean_cb0f2587'
        humanTakeoverEnabled:
          $ref: '#/components/schemas/boolean_22d9f737'
        humanTakeoverTimeoutMinutes:
          $ref: '#/components/schemas/number_7f7c2868'
        replyLength:
          $ref: '#/components/schemas/string_d3e320de'
        replyTone:
          $ref: '#/components/schemas/string_2d39b697'
      required:
        - provider
        - connectionId
        - email
      additionalProperties: false
    string_48ad2552:
      type: string
      enum:
        - monday
        - tuesday
        - wednesday
        - thursday
        - friday
        - saturday
        - sunday
    object_0eb5f5f5:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        condition:
          type: string
          description: Natural language condition for LLM to evaluate
        points:
          type: number
          minimum: 0
          maximum: 100
        enabled:
          type: boolean
          default: true
        category:
          $ref: '#/components/schemas/string_3aa07c22'
      required:
        - id
        - name
        - description
        - condition
        - points
      additionalProperties: false
    object_635dbd1e:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        enabled:
          type: boolean
          default: true
        type:
          type: string
          enum:
            - score_threshold
            - steps_completed
            - data_collected
        scoreThreshold:
          type: number
        requiredSteps:
          type: array
          items:
            type: string
        requiredFields:
          type: array
          items:
            type: string
        cooldownStrategy:
          $ref: '#/components/schemas/string_2f3dc03f'
        recipients:
          $ref: '#/components/schemas/array_aa040967'
        emailTemplate:
          type: string
        requireContactInfo:
          $ref: '#/components/schemas/boolean_9e940040'
      required:
        - id
        - name
        - type
        - cooldownStrategy
        - recipients
      additionalProperties: false
    object_c1d41a1e:
      type: object
      properties:
        keywords:
          $ref: '#/components/schemas/array_83c7f921'
        language:
          type: string
        smart_format:
          type: boolean
        model:
          type: string
        interim_results:
          type: boolean
        endpointing:
          type: number
        no_delay:
          type: boolean
        autoLanguageDetection:
          type: boolean
      additionalProperties: false
    modelId_36b767:
      type: object
      properties:
        modelId:
          type: string
      required:
        - modelId
      additionalProperties: false
    object_1ee0ed78:
      type: object
      properties:
        keywords:
          $ref: '#/components/schemas/array_7d6fa96c'
        model:
          type: string
          description: The Google Cloud Speech model to use.
        languageCode:
          type: string
          description: The language code for transcription.
        enableAutomaticPunctuation:
          type: boolean
          description: Enable automatic punctuation.
        enableWordTimeOffsets:
          type: boolean
          description: Enable word time offsets.
        maxAlternatives:
          type: number
          description: Maximum number of recognition alternatives.
        profanityFilter:
          type: boolean
          description: Enable profanity filter.
        speechContexts:
          $ref: '#/components/schemas/array_efaec350'
      additionalProperties: false
    string_729a1dcd:
      type: string
      enum:
        - elevenlabs
        - deepgram
        - cartesia
        - rime-ai
        - openai
        - google-cloud
        - google-live
        - ultravox
        - grok-live
        - minimax
      description: Speech providers supported by the app.
    elevenLabs_playht_cartesia_ultravox_6c9ae9:
      type: object
      properties:
        elevenLabs:
          $ref: >-
            #/components/schemas/stability_similarityboost_usespeakerboost_speed_602a2b
        playht:
          $ref: '#/components/schemas/voiceId_93f113'
        cartesia:
          $ref: '#/components/schemas/emotion_speed_volume_promptInstructions_84d39f'
        ultravox:
          $ref: >-
            #/components/schemas/temperature_speed_voiceOverridesProvider_elevenLabsModel_a63166
        grokLive:
          $ref: >-
            #/components/schemas/turnDetection_inputAudioTranscription_audio_enableWebSearch_9761fe
      additionalProperties: false
    array_74b8ca69:
      type: array
      items:
        $ref: '#/components/schemas/word_replacement_105549'
    inputTextStream_audioConfig_emitOnComplete_e9b0fe:
      type: object
      properties:
        inputTextStream: {}
        audioConfig:
          $ref: '#/components/schemas/format_sampleRate_channels_language_8a85ba'
        emitOnComplete:
          type: boolean
      additionalProperties: false
    key_label_iconUrl_show_d5d00f:
      type: object
      properties:
        key:
          type: string
        label:
          type: string
        iconUrl:
          type: string
        show:
          type: boolean
        iceBreakers:
          type: array
          items:
            type: string
      additionalProperties: false
    id_question_answer_key_082e34:
      type: object
      properties:
        id:
          type: string
        question:
          type: string
        answer:
          type: string
        key:
          type: string
      required:
        - id
        - question
        - answer
      additionalProperties: false
    string_e01bf100:
      type: string
      enum:
        - create-event
        - check-availability
        - delete-event
        - lookup-events
        - update-event
    phone_email_name_custom_f7812b:
      type: object
      properties:
        phone:
          type: string
        email:
          type: string
        name:
          type: string
        custom:
          type: string
        customLabel:
          type: string
      additionalProperties: false
    object_ea4c35b2:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/type_description_344dd9'
      nullable: true
    array_a4d63322:
      type: array
      items:
        type: string
      description: >-
        Array of variable names that must ALL be present for this rule to match
        (AND condition)
    string_7776e73c:
      type: string
      enum:
        - google
        - outlook
        - zoho
        - smtp
      description: Email provider (google, outlook, zoho, or smtp)
    number_b0a02772:
      type: number
      default: 0
      description: Legacy delay in seconds before replying to an email
    number_22e6cb52:
      type: number
      default: 0
      description: Delay in minutes before AI replies. 0 means instant reply.
    string_62d3c53b:
      type: string
      enum:
        - always
        - keywords
        - sentiment
        - manual
      default: always
      description: >-
        When to reply: always (all emails), keywords (containing specific
        words), sentiment (based on tone), manual (require approval)
    string_1a949bb9:
      type: string
      default: ''
      description: >-
        Hard rule written by the user describing when the AI should reply on
        this email connection.
    string_30364b0d:
      type: string
      default: ''
      description: >-
        Hard rule written by the user describing when the AI should notify a
        human while still continuing the email reply.
    boolean_cb0f2587:
      type: boolean
      default: true
      description: >-
        Whether human escalation notifications for this email assignment should
        default to workspace owners.
    boolean_22d9f737:
      type: boolean
      default: false
      description: >-
        Whether AI may retake ownership of a human-owned email thread after a
        timeout.
    number_7f7c2868:
      type: number
      default: 0
      description: >-
        Minutes to wait before AI retakes a human-owned thread. 0 disables
        automatic retake.
    string_d3e320de:
      type: string
      enum:
        - short
        - medium
        - long
        - auto
      default: auto
      description: >-
        Length of replies: short (1-2 paragraphs), medium (2-4 paragraphs), long
        (4+ paragraphs), auto (match incoming email)
    string_2d39b697:
      type: string
      enum:
        - professional
        - friendly
        - casual
        - formal
        - empathetic
        - concise
        - enthusiastic
      default: professional
      description: Tone of the email replies
    string_3aa07c22:
      type: string
      enum:
        - contact_info
        - intent
        - budget
        - timeline
        - qualification
        - custom
    string_2f3dc03f:
      type: string
      enum:
        - immediate
        - once_per_threshold
        - once_per_lead
        - once_per_session
    array_aa040967:
      type: array
      items:
        type: string
      description: Email addresses to notify
    boolean_9e940040:
      type: boolean
      default: true
      description: Whether to require email/phone before sending notification
    array_83c7f921:
      type: array
      items:
        type: string
      description: Keywords to focus on in the transcription.
    array_7d6fa96c:
      type: array
      items:
        type: string
      description: Keywords or phrases to focus on in the transcription.
    array_efaec350:
      type: array
      items:
        $ref: '#/components/schemas/phrases_boost_be57b3'
      description: Speech contexts for better recognition.
    stability_similarityboost_usespeakerboost_speed_602a2b:
      type: object
      properties:
        stability:
          type: number
        similarity_boost:
          type: number
        use_speaker_boost:
          type: boolean
        speed:
          type: number
        style:
          type: number
      additionalProperties: false
    voiceId_93f113:
      type: object
      properties:
        voiceId:
          type: string
      required:
        - voiceId
      additionalProperties: false
    emotion_speed_volume_promptInstructions_84d39f:
      type: object
      properties:
        emotion:
          type: string
          enum:
            - neutral
            - calm
            - angry
            - content
            - sad
            - scared
        speed:
          type: number
        volume:
          type: number
        promptInstructions:
          type: string
      additionalProperties: false
    temperature_speed_voiceOverridesProvider_elevenLabsModel_a63166:
      type: object
      properties:
        temperature:
          type: number
          minimum: 0
          maximum: 1
        speed:
          type: number
          minimum: 0.7
          maximum: 1.2
        voiceOverridesProvider:
          type: string
          enum:
            - elevenLabs
            - cartesia
            - google
            - inworld
            - lmnt
        elevenLabsModel:
          type: string
        vadSettings:
          $ref: >-
            #/components/schemas/turnEndpointDelay_minimumTurnDuration_minimumInterruptionDuration_frameActivationThreshold_5c9e43
      additionalProperties: false
    turnDetection_inputAudioTranscription_audio_enableWebSearch_9761fe:
      type: object
      properties:
        turnDetection:
          $ref: >-
            #/components/schemas/type_threshold_silencedurationms_prefixpaddingms_1c4126
        inputAudioTranscription:
          $ref: '#/components/schemas/model_a695ee'
        audio:
          $ref: '#/components/schemas/input_output_a70479'
        enableWebSearch:
          type: boolean
        enableXSearch:
          type: boolean
        debug:
          type: boolean
      additionalProperties: false
    word_replacement_105549:
      type: object
      properties:
        word:
          type: string
        replacement:
          type: string
      required:
        - word
        - replacement
      additionalProperties: false
    format_sampleRate_channels_language_8a85ba:
      type: object
      properties:
        format:
          type: string
        sampleRate:
          type: number
        channels:
          type: number
        language:
          type: string
      required:
        - format
        - sampleRate
        - channels
      additionalProperties: false
    type_description_344dd9:
      type: object
      properties:
        type:
          type: string
          enum:
            - string
            - number
            - boolean
        description:
          type: string
      additionalProperties: false
    phrases_boost_be57b3:
      type: object
      properties:
        phrases:
          type: array
          items:
            type: string
        boost:
          type: number
      required:
        - phrases
      additionalProperties: false
    turnEndpointDelay_minimumTurnDuration_minimumInterruptionDuration_frameActivationThreshold_5c9e43:
      type: object
      properties:
        turnEndpointDelay:
          type: string
        minimumTurnDuration:
          type: string
        minimumInterruptionDuration:
          type: string
        frameActivationThreshold:
          type: number
          minimum: 0.1
          maximum: 1
      additionalProperties: false
    type_threshold_silencedurationms_prefixpaddingms_1c4126:
      type: object
      properties:
        type:
          type: string
          enum:
            - server_vad
        threshold:
          type: number
          minimum: 0.1
          maximum: 0.9
        silence_duration_ms:
          type: number
          minimum: 0
        prefix_padding_ms:
          type: number
          minimum: 0
      additionalProperties: false
    model_a695ee:
      type: object
      properties:
        model:
          type: string
          default: grok-2-audio
      additionalProperties: false
    input_output_a70479:
      type: object
      properties:
        input:
          $ref: '#/components/schemas/format_23f177'
        output:
          $ref: '#/components/schemas/format_23f177'
      additionalProperties: false
    format_23f177:
      type: object
      properties:
        format:
          $ref: '#/components/schemas/type_rate_e76b7d'
      additionalProperties: false
    type_rate_e76b7d:
      type: object
      properties:
        type:
          type: string
          enum:
            - audio/pcm
            - audio/pcmu
            - audio/pcma
        rate:
          type: number
      required:
        - type
      additionalProperties: false
  responses:
    error:
      description: Error response
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
              code:
                type: string
              issues:
                type: array
                items:
                  $ref: '#/components/schemas/message_11569e'
            required:
              - message
              - code
            additionalProperties: false
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer

````