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

# Get a typebot



## OpenAPI

````yaml GET /v1/typebots/{typebotId}
openapi: 3.1.1
info:
  title: Builder API
  version: 1.0.0
servers:
  - url: https://app.typebot.com/api
security: []
externalDocs:
  url: https://docs.typebot.com/api-reference
paths:
  /v1/typebots/{typebotId}:
    get:
      tags:
        - Typebot
      summary: Get a typebot
      operationId: typebot-getTypebot
      parameters:
        - name: typebotId
          in: path
          required: true
          schema:
            type: string
            description: '[Where to find my bot''s ID?](../how-to#how-to-find-my-typebotid)'
        - name: migrateToLatestVersion
          in: query
          required: false
          schema:
            type: boolean
            default: false
            description: >-
              If enabled, the typebot will be converted to the latest schema
              version
          allowEmptyValue: true
          allowReserved: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  typebot:
                    anyOf:
                      - type: object
                        properties:
                          version:
                            enum:
                              - '6'
                              - '6.1'
                            type: string
                          id:
                            type: string
                          name:
                            type: string
                          events:
                            type: array
                            prefixItems:
                              - type: object
                                properties:
                                  id:
                                    type: string
                                  outgoingEdgeId:
                                    type: string
                                  graphCoordinates:
                                    type: object
                                    properties:
                                      x:
                                        type: number
                                      'y':
                                        type: number
                                    required:
                                      - x
                                      - 'y'
                                  type:
                                    const: start
                                required:
                                  - id
                                  - graphCoordinates
                                  - type
                            items:
                              anyOf:
                                - type: object
                                  properties:
                                    id:
                                      type: string
                                    outgoingEdgeId:
                                      type: string
                                    graphCoordinates:
                                      type: object
                                      properties:
                                        x:
                                          type: number
                                        'y':
                                          type: number
                                      required:
                                        - x
                                        - 'y'
                                    type:
                                      const: command
                                    options:
                                      type: object
                                      properties:
                                        command:
                                          type: string
                                        resumeAfter:
                                          type: boolean
                                  required:
                                    - id
                                    - graphCoordinates
                                    - type
                                - type: object
                                  properties:
                                    id:
                                      type: string
                                    outgoingEdgeId:
                                      type: string
                                    graphCoordinates:
                                      type: object
                                      properties:
                                        x:
                                          type: number
                                        'y':
                                          type: number
                                      required:
                                        - x
                                        - 'y'
                                    type:
                                      const: reply
                                    options:
                                      type: object
                                      properties:
                                        contentVariableId:
                                          type: string
                                        inputNameVariableId:
                                          type: string
                                        inputTypeVariableId:
                                          type: string
                                  required:
                                    - id
                                    - graphCoordinates
                                    - type
                                - type: object
                                  properties:
                                    id:
                                      type: string
                                    outgoingEdgeId:
                                      type: string
                                    graphCoordinates:
                                      type: object
                                      properties:
                                        x:
                                          type: number
                                        'y':
                                          type: number
                                      required:
                                        - x
                                        - 'y'
                                    type:
                                      const: invalidReply
                                    options:
                                      type: object
                                      properties:
                                        contentVariableId:
                                          type: string
                                        inputNameVariableId:
                                          type: string
                                        inputTypeVariableId:
                                          type: string
                                  required:
                                    - id
                                    - graphCoordinates
                                    - type
                          groups:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                title:
                                  type: string
                                graphCoordinates:
                                  type: object
                                  properties:
                                    x:
                                      type: number
                                    'y':
                                      type: number
                                  required:
                                    - x
                                    - 'y'
                                blocks:
                                  type: array
                                  items:
                                    anyOf:
                                      - $ref: '#/components/schemas/Start'
                                      - anyOf:
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - text
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  html:
                                                    type: string
                                                  richText:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  plainText:
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Image'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - video
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  url:
                                                    type: string
                                                  id:
                                                    type: string
                                                  type:
                                                    enum:
                                                      - url
                                                      - youtube
                                                      - vimeo
                                                      - tiktok
                                                      - gumlet
                                                    type: string
                                                  height: {}
                                                  aspectRatio:
                                                    type: string
                                                  maxWidth:
                                                    type: string
                                                  queryParamsStr:
                                                    type: string
                                                  areControlsDisplayed:
                                                    type: boolean
                                                  isAutoplayEnabled:
                                                    type: boolean
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - embed
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  url:
                                                    type: string
                                                  height: {}
                                                  waitForEvent:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      name: {}
                                                      saveDataInVariableId: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Audio'
                                      - anyOf:
                                          - $ref: '#/components/schemas/TextInput'
                                          - $ref: '#/components/schemas/EmailInput'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - number input
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  labels:
                                                    type: object
                                                    properties:
                                                      placeholder: {}
                                                      button: {}
                                                  min: {}
                                                  max: {}
                                                  step: {}
                                                  locale:
                                                    type: string
                                                    pattern: ^[a-z]{2}(-[A-Z]{2})?$
                                                  style:
                                                    enum:
                                                      - decimal
                                                      - currency
                                                      - percent
                                                      - unit
                                                    type: string
                                                  currency:
                                                    type: string
                                                  unit:
                                                    enum:
                                                      - acre
                                                      - bit
                                                      - byte
                                                      - celsius
                                                      - centimeter
                                                      - day
                                                      - degree
                                                      - fahrenheit
                                                      - fluid-ounce
                                                      - foot
                                                      - gallon
                                                      - gigabit
                                                      - gigabyte
                                                      - gram
                                                      - hectare
                                                      - hour
                                                      - inch
                                                      - kilobit
                                                      - kilobyte
                                                      - kilogram
                                                      - kilometer
                                                      - liter
                                                      - megabit
                                                      - megabyte
                                                      - meter
                                                      - microsecond
                                                      - mile
                                                      - mile-scandinavian
                                                      - milliliter
                                                      - millimeter
                                                      - millisecond
                                                      - minute
                                                      - month
                                                      - nanosecond
                                                      - ounce
                                                      - percent
                                                      - petabyte
                                                      - pound
                                                      - second
                                                      - stone
                                                      - terabit
                                                      - terabyte
                                                      - week
                                                      - yard
                                                      - year
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/UrlInput'
                                          - $ref: '#/components/schemas/PhoneNumberInput'
                                          - $ref: '#/components/schemas/DateInput'
                                          - $ref: '#/components/schemas/TimeInput'
                                          - $ref: '#/components/schemas/PaymentInput'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: rating input
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  buttonType:
                                                    anyOf:
                                                      - {}
                                                      - {}
                                                  length:
                                                    type: number
                                                  startsAt: {}
                                                  labels:
                                                    type: object
                                                    properties:
                                                      left: {}
                                                      right: {}
                                                      button: {}
                                                  customIcon:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      svg: {}
                                                  isOneClickSubmitEnabled:
                                                    type: boolean
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Cards'
                                          - $ref: '#/components/schemas/ChoiceInput'
                                          - $ref: '#/components/schemas/FileInput'
                                          - $ref: '#/components/schemas/PictureChoiceInput'
                                      - anyOf:
                                          - $ref: '#/components/schemas/Code'
                                          - $ref: '#/components/schemas/Redirect'
                                          - $ref: '#/components/schemas/SetVariable'
                                          - $ref: '#/components/schemas/TypebotLink'
                                          - $ref: '#/components/schemas/Wait'
                                          - $ref: '#/components/schemas/Jump'
                                          - $ref: '#/components/schemas/Return'
                                          - $ref: '#/components/schemas/Condition'
                                          - $ref: '#/components/schemas/AbTest'
                                          - $ref: '#/components/schemas/Webhook'
                                      - anyOf:
                                          - $ref: '#/components/schemas/Chatwoot'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Google Analytics
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  trackingId:
                                                    type: string
                                                  category:
                                                    type: string
                                                  action:
                                                    type: string
                                                  label:
                                                    type: string
                                                  value: {}
                                                  sendTo:
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - OpenAI
                                                type: string
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      task: {}
                                                      credentialsId: {}
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                  - type: object
                                                    properties:
                                                      task: {}
                                                      model: {}
                                                      messages: {}
                                                      advancedSettings: {}
                                                      responseMapping: {}
                                                      credentialsId: {}
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                  - $ref: '#/components/schemas/CreateImage'
                                                  - $ref: '#/components/schemas/CreateSpeech'
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Email'
                                          - $ref: '#/components/schemas/Pixel'
                                          - $ref: '#/components/schemas/GoogleSheets'
                                          - $ref: '#/components/schemas/Make.com'
                                          - $ref: '#/components/schemas/Pabbly'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Webhook
                                                type: string
                                                description: Legacy name for HTTP Request block
                                              options:
                                                type: object
                                                properties:
                                                  variablesForTest:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  responseVariableMapping:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  isCustomBody:
                                                    type: boolean
                                                  isExecutedOnClient:
                                                    type: boolean
                                                  webhook:
                                                    type: object
                                                    properties:
                                                      queryParams: {}
                                                      headers: {}
                                                      method: {}
                                                      url: {}
                                                      body: {}
                                                  timeout:
                                                    type: number
                                                    minimum: 1
                                                    maximum: 120
                                                  proxyCredentialsId:
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Zapier'
                                      - anyOf:
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: openai
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                                  - $ref: '#/components/schemas/AskAssistant'
                                                  - type: object
                                                    properties:
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      message: {}
                                                      instructions: {}
                                                      responseIdVariableId: {}
                                                      fileSearchVectorStoreIds: {}
                                                      fileSearchMaxNumResults: {}
                                                      fileSearchScoreThreshold: {}
                                                      webSearchEnabled: {}
                                                      codeInterpreterEnabled: {}
                                                      functions: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                                  - type: object
                                                    properties:
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      prompt: {}
                                                      variablesToExtract: {}
                                                  - type: object
                                                    properties:
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      input: {}
                                                      instructions: {}
                                                      voice: {}
                                                      saveUrlInVariableId: {}
                                                  - $ref: '#/components/schemas/CreateTranscription'
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/CalCom'
                                          - $ref: '#/components/schemas/ChatNode'
                                          - $ref: '#/components/schemas/QrCode'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: dify-ai
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      query: {}
                                                      conversationVariableId: {}
                                                      user: {}
                                                      inputs: {}
                                                      responseMapping: {}
                                                  - $ref: '#/components/schemas/QueryKnowledgeBase'
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: mistral
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      prompt: {}
                                                      variablesToExtract: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Elevenlabs'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: anthropic
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      systemMessage: {}
                                                      temperature: {}
                                                      maxTokens: {}
                                                      responseMapping: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      prompt: {}
                                                      variablesToExtract: {}
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: together-ai
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: open-router
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Nocodb'
                                          - $ref: '#/components/schemas/Segment'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: groq
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Zendesk'
                                          - $ref: '#/components/schemas/Posthog'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: perplexity
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: deepseek
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      model: {}
                                                      messages: {}
                                                      tools: {}
                                                      temperature: {}
                                                      responseMapping: {}
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: blink
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                  - $ref: '#/components/schemas/GetUsers'
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      categoryId: {}
                                                      ribbonColor: {}
                                                      sections: {}
                                                      allowComments: {}
                                                      allowReactions: {}
                                                      userIds: {}
                                                      groupIds: {}
                                                      pushNotification: {}
                                                      responseMapping: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      action: {}
                                                      url: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Gmail'
                              required:
                                - id
                                - title
                                - graphCoordinates
                                - blocks
                          edges:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                from:
                                  anyOf:
                                    - type: object
                                      properties:
                                        blockId:
                                          type: string
                                        itemId:
                                          type: string
                                        pathId:
                                          type: string
                                      required:
                                        - blockId
                                    - type: object
                                      properties:
                                        eventId:
                                          type: string
                                      required:
                                        - eventId
                                to:
                                  type: object
                                  properties:
                                    groupId:
                                      type: string
                                    blockId:
                                      type: string
                                  required:
                                    - groupId
                              required:
                                - id
                                - from
                                - to
                          variables:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                name:
                                  type: string
                                isSessionVariable:
                                  type: boolean
                                value:
                                  anyOf:
                                    - anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            anyOf:
                                              - type: string
                                              - type: 'null'
                                    - type: 'null'
                              required:
                                - id
                                - name
                          theme:
                            type: object
                            properties:
                              general:
                                type: object
                                properties:
                                  font:
                                    anyOf:
                                      - type: string
                                      - anyOf:
                                          - $ref: '#/components/schemas/Google'
                                          - type: object
                                            properties:
                                              type:
                                                const: Custom
                                              family:
                                                type: string
                                              css:
                                                type: string
                                              url:
                                                type: string
                                                description: Deprecated, use `css` instead
                                            required:
                                              - type
                                  background:
                                    type: object
                                    properties:
                                      type:
                                        enum:
                                          - Color
                                          - Image
                                          - None
                                        type: string
                                      content:
                                        type: string
                                  progressBar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      color:
                                        type: string
                                      backgroundColor:
                                        type: string
                                      placement:
                                        enum:
                                          - Top
                                          - Bottom
                                        type: string
                                      thickness:
                                        type: number
                                      position:
                                        enum:
                                          - fixed
                                          - absolute
                                        type: string
                              chat:
                                type: object
                                properties:
                                  container:
                                    type: object
                                    properties:
                                      maxWidth:
                                        type: string
                                      maxHeight:
                                        type: string
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  hostAvatar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      url:
                                        type: string
                                  guestAvatar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      url:
                                        type: string
                                  hostBubbles:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  guestBubbles:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  buttons:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  inputs:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                      placeholderColor:
                                        type: string
                                  roundness:
                                    enum:
                                      - none
                                      - medium
                                      - large
                                    type: string
                                    description: >-
                                      Deprecated, use
                                      `container.border.roundeness` instead
                                  buttonsInput:
                                    type: object
                                    properties:
                                      layout:
                                        enum:
                                          - wrap
                                          - vertical
                                        type: string
                              customCss:
                                type: string
                          selectedThemeTemplateId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          settings:
                            type: object
                            properties:
                              general:
                                type: object
                                properties:
                                  isBrandingEnabled:
                                    type: boolean
                                  isTypingEmulationEnabled:
                                    type: boolean
                                  isInputPrefillEnabled:
                                    type: boolean
                                  isHideQueryParamsEnabled:
                                    type: boolean
                                  isNewResultOnRefreshEnabled:
                                    type: boolean
                                  rememberUser:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      storage:
                                        enum:
                                          - session
                                          - local
                                        type: string
                                  systemMessages:
                                    type: object
                                    properties:
                                      invalidMessage:
                                        type: string
                                      botClosed:
                                        type: string
                                      networkErrorTitle:
                                        type: string
                                      networkErrorMessage:
                                        type: string
                                      popupBlockedTitle:
                                        type: string
                                      popupBlockedDescription:
                                        type: string
                                      popupBlockedButtonLabel:
                                        type: string
                                      fileUploadError:
                                        type: string
                                      fileUploadSizeError:
                                        type: string
                                      whatsAppPictureChoiceSelectLabel:
                                        type: string
                              typingEmulation:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  speed:
                                    type: number
                                  maxDelay:
                                    type: number
                                  delayBetweenBubbles:
                                    type: number
                                    minimum: 0
                                    maximum: 5
                                  isDisabledOnFirstMessage:
                                    type: boolean
                              metadata:
                                type: object
                                properties:
                                  title:
                                    type: string
                                  description:
                                    type: string
                                  imageUrl:
                                    type: string
                                  favIconUrl:
                                    type: string
                                  customHeadCode:
                                    type: string
                                  googleTagManagerId:
                                    type: string
                                  allowIndexing:
                                    type: boolean
                              whatsApp: {}
                              publicShare:
                                type: object
                                properties:
                                  isEnabled:
                                    type: boolean
                              security:
                                type: object
                                properties:
                                  allowedOrigins:
                                    type: array
                                    items:
                                      type: string
                          createdAt:
                            type: string
                            format: date-time
                            x-native-type: date
                          updatedAt:
                            type: string
                            format: date-time
                            x-native-type: date
                          icon:
                            anyOf:
                              - type: string
                              - type: 'null'
                          folderId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          publicId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          customDomain:
                            anyOf:
                              - type: string
                              - type: 'null'
                          workspaceId:
                            type: string
                            minLength: 1
                          resultsTablePreferences:
                            anyOf:
                              - type: object
                                properties:
                                  columnsOrder:
                                    type: array
                                    items:
                                      type: string
                                  columnsVisibility:
                                    type: object
                                    propertyNames:
                                      type: string
                                    additionalProperties:
                                      type: boolean
                                  columnsWidth:
                                    type: object
                                    propertyNames:
                                      type: string
                                    additionalProperties:
                                      type: number
                                required:
                                  - columnsOrder
                                  - columnsVisibility
                                  - columnsWidth
                              - type: 'null'
                          isArchived:
                            type: boolean
                          isClosed:
                            type: boolean
                          whatsAppCredentialsId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          riskLevel:
                            anyOf:
                              - type: number
                              - type: 'null'
                          spaceId:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - version
                          - id
                          - name
                          - events
                          - groups
                          - edges
                          - variables
                          - theme
                          - selectedThemeTemplateId
                          - settings
                          - createdAt
                          - updatedAt
                          - icon
                          - folderId
                          - publicId
                          - customDomain
                          - workspaceId
                          - resultsTablePreferences
                          - isArchived
                          - isClosed
                          - whatsAppCredentialsId
                          - riskLevel
                          - spaceId
                      - type: object
                        properties:
                          version:
                            enum:
                              - '3'
                              - '4'
                              - '5'
                            type: string
                          id:
                            type: string
                          name:
                            type: string
                          events:
                            type: 'null'
                          groups:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                title:
                                  type: string
                                graphCoordinates:
                                  type: object
                                  properties:
                                    x:
                                      type: number
                                    'y':
                                      type: number
                                  required:
                                    - x
                                    - 'y'
                                blocks:
                                  type: array
                                  items:
                                    anyOf:
                                      - $ref: '#/components/schemas/Start'
                                      - anyOf:
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - text
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  html:
                                                    type: string
                                                  richText:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  plainText:
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Image'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - video
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  url:
                                                    type: string
                                                  id:
                                                    type: string
                                                  type:
                                                    enum:
                                                      - url
                                                      - youtube
                                                      - vimeo
                                                      - tiktok
                                                      - gumlet
                                                    type: string
                                                  height: {}
                                                  aspectRatio:
                                                    type: string
                                                  maxWidth:
                                                    type: string
                                                  queryParamsStr:
                                                    type: string
                                                  areControlsDisplayed:
                                                    type: boolean
                                                  isAutoplayEnabled:
                                                    type: boolean
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - embed
                                                type: string
                                              content:
                                                type: object
                                                properties:
                                                  url:
                                                    type: string
                                                  height: {}
                                                  waitForEvent:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      name: {}
                                                      saveDataInVariableId: {}
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Audio'
                                      - anyOf:
                                          - $ref: '#/components/schemas/TextInput'
                                          - $ref: '#/components/schemas/EmailInput'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - number input
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  labels:
                                                    type: object
                                                    properties:
                                                      placeholder: {}
                                                      button: {}
                                                  min: {}
                                                  max: {}
                                                  step: {}
                                                  locale:
                                                    type: string
                                                    pattern: ^[a-z]{2}(-[A-Z]{2})?$
                                                  style:
                                                    enum:
                                                      - decimal
                                                      - currency
                                                      - percent
                                                      - unit
                                                    type: string
                                                  currency:
                                                    type: string
                                                  unit:
                                                    enum:
                                                      - acre
                                                      - bit
                                                      - byte
                                                      - celsius
                                                      - centimeter
                                                      - day
                                                      - degree
                                                      - fahrenheit
                                                      - fluid-ounce
                                                      - foot
                                                      - gallon
                                                      - gigabit
                                                      - gigabyte
                                                      - gram
                                                      - hectare
                                                      - hour
                                                      - inch
                                                      - kilobit
                                                      - kilobyte
                                                      - kilogram
                                                      - kilometer
                                                      - liter
                                                      - megabit
                                                      - megabyte
                                                      - meter
                                                      - microsecond
                                                      - mile
                                                      - mile-scandinavian
                                                      - milliliter
                                                      - millimeter
                                                      - millisecond
                                                      - minute
                                                      - month
                                                      - nanosecond
                                                      - ounce
                                                      - percent
                                                      - petabyte
                                                      - pound
                                                      - second
                                                      - stone
                                                      - terabit
                                                      - terabyte
                                                      - week
                                                      - yard
                                                      - year
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/UrlInput'
                                          - $ref: '#/components/schemas/PhoneNumberInput'
                                          - $ref: '#/components/schemas/DateInput'
                                          - $ref: '#/components/schemas/TimeInput'
                                          - $ref: '#/components/schemas/PaymentInput'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: rating input
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  buttonType:
                                                    anyOf:
                                                      - {}
                                                      - {}
                                                  length:
                                                    type: number
                                                  startsAt: {}
                                                  labels:
                                                    type: object
                                                    properties:
                                                      left: {}
                                                      right: {}
                                                      button: {}
                                                  customIcon:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      svg: {}
                                                  isOneClickSubmitEnabled:
                                                    type: boolean
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Cards'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - choice input
                                                type: string
                                              items:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    id: {}
                                                    blockId: {}
                                                    outgoingEdgeId: {}
                                                    content: {}
                                                    value: {}
                                                    displayCondition: {}
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  isMultipleChoice:
                                                    type: boolean
                                                  buttonLabel:
                                                    type: string
                                                  dynamicVariableId:
                                                    type: string
                                                  isSearchable:
                                                    type: boolean
                                                  searchInputPlaceholder:
                                                    type: string
                                                  areInitialSearchButtonsVisible:
                                                    type: boolean
                                            required:
                                              - id
                                              - type
                                              - items
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                const: file input
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  isRequired:
                                                    type: boolean
                                                  isMultipleAllowed:
                                                    type: boolean
                                                  labels:
                                                    type: object
                                                    properties:
                                                      placeholder: {}
                                                      button: {}
                                                      clear: {}
                                                      skip: {}
                                                      success: {}
                                                  allowedFileTypes:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      types: {}
                                                  capture:
                                                    enum:
                                                      - environment
                                                      - user
                                                    type: string
                                                  sizeLimit:
                                                    type: number
                                                  visibility:
                                                    enum:
                                                      - Auto
                                                      - Public
                                                      - Private
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - picture choice input
                                                type: string
                                              items:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    id: {}
                                                    blockId: {}
                                                    outgoingEdgeId: {}
                                                    pictureSrc: {}
                                                    title: {}
                                                    description: {}
                                                    value: {}
                                                    displayCondition: {}
                                              options:
                                                type: object
                                                properties:
                                                  variableId:
                                                    type: string
                                                  isMultipleChoice:
                                                    type: boolean
                                                  isSearchable:
                                                    type: boolean
                                                  buttonLabel:
                                                    type: string
                                                  searchInputPlaceholder:
                                                    type: string
                                                  dynamicItems:
                                                    type: object
                                                    properties:
                                                      isEnabled: {}
                                                      titlesVariableId: {}
                                                      descriptionsVariableId: {}
                                                      pictureSrcsVariableId: {}
                                            required:
                                              - id
                                              - type
                                              - items
                                      - anyOf:
                                          - $ref: '#/components/schemas/Code'
                                          - $ref: '#/components/schemas/Redirect'
                                          - $ref: '#/components/schemas/SetVariable'
                                          - $ref: '#/components/schemas/TypebotLink'
                                          - $ref: '#/components/schemas/Wait'
                                          - $ref: '#/components/schemas/Jump'
                                          - $ref: '#/components/schemas/Return'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Condition
                                                type: string
                                              items:
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    id: {}
                                                    blockId: {}
                                                    outgoingEdgeId: {}
                                                    content: {}
                                              options:
                                                not: {}
                                            required:
                                              - id
                                              - type
                                              - items
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - AB test
                                                type: string
                                              items:
                                                type: array
                                                prefixItems:
                                                  - type: object
                                                    properties:
                                                      id: {}
                                                      blockId: {}
                                                      outgoingEdgeId: {}
                                                      path: {}
                                                  - type: object
                                                    properties:
                                                      id: {}
                                                      blockId: {}
                                                      outgoingEdgeId: {}
                                                      path: {}
                                              options:
                                                type: object
                                                properties:
                                                  aPercent:
                                                    type: number
                                                    minimum: 0
                                                    maximum: 100
                                            required:
                                              - id
                                              - type
                                              - items
                                      - anyOf:
                                          - $ref: '#/components/schemas/Chatwoot'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Google Analytics
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  trackingId:
                                                    type: string
                                                  category:
                                                    type: string
                                                  action:
                                                    type: string
                                                  label:
                                                    type: string
                                                  value: {}
                                                  sendTo:
                                                    type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - OpenAI
                                                type: string
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      task: {}
                                                      credentialsId: {}
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                  - type: object
                                                    properties:
                                                      task: {}
                                                      model: {}
                                                      messages: {}
                                                      advancedSettings: {}
                                                      responseMapping: {}
                                                      credentialsId: {}
                                                      baseUrl: {}
                                                      apiVersion: {}
                                                  - $ref: '#/components/schemas/CreateImage'
                                                  - $ref: '#/components/schemas/CreateSpeech'
                                            required:
                                              - id
                                              - type
                                          - $ref: '#/components/schemas/Email'
                                          - $ref: '#/components/schemas/Pixel'
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Google Sheets
                                                type: string
                                              options:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      sheetId: {}
                                                      spreadsheetId: {}
                                                      action: {}
                                                      referenceCell: {}
                                                      filter: {}
                                                      cellsToExtract: {}
                                                      totalRowsToExtract: {}
                                                  - $ref: '#/components/schemas/InsertARow'
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      sheetId: {}
                                                      spreadsheetId: {}
                                                      action: {}
                                                      cellsToUpsert: {}
                                                      referenceCell: {}
                                                      filter: {}
                                                  - type: object
                                                    properties:
                                                      credentialsId: {}
                                                      sheetId: {}
                                                      spreadsheetId: {}
                                                      action: {}
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Make.com
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  variablesForTest:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  responseVariableMapping:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  isCustomBody:
                                                    type: boolean
                                                  isExecutedOnClient:
                                                    type: boolean
                                                  webhook:
                                                    type: object
                                                    properties:
                                                      id: {}
                                                      queryParams: {}
                                                      headers: {}
                                                      method: {}
                                                      url: {}
                                                      body: {}
                                                  timeout:
                                                    type: number
                                                    minimum: 1
                                                    maximum: 120
                                                  proxyCredentialsId:
                                                    type: string
                                              webhookId:
                                                type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Pabbly
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  variablesForTest:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  responseVariableMapping:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  isCustomBody:
                                                    type: boolean
                                                  isExecutedOnClient:
                                                    type: boolean
                                                  webhook:
                                                    type: object
                                                    properties:
                                                      id: {}
                                                      queryParams: {}
                                                      headers: {}
                                                      method: {}
                                                      url: {}
                                                      body: {}
                                                  timeout:
                                                    type: number
                                                    minimum: 1
                                                    maximum: 120
                                                  proxyCredentialsId:
                                                    type: string
                                              webhookId:
                                                type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Webhook
                                                type: string
                                                description: Legacy name for HTTP Request block
                                              options:
                                                type: object
                                                properties:
                                                  variablesForTest:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  responseVariableMapping:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  isCustomBody:
                                                    type: boolean
                                                  isExecutedOnClient:
                                                    type: boolean
                                                  webhook:
                                                    type: object
                                                    properties:
                                                      id: {}
                                                      queryParams: {}
                                                      headers: {}
                                                      method: {}
                                                      url: {}
                                                      body: {}
                                                  timeout:
                                                    type: number
                                                    minimum: 1
                                                    maximum: 120
                                                  proxyCredentialsId:
                                                    type: string
                                              webhookId:
                                                type: string
                                            required:
                                              - id
                                              - type
                                          - type: object
                                            properties:
                                              id:
                                                type: string
                                              outgoingEdgeId:
                                                type: string
                                              type:
                                                enum:
                                                  - Zapier
                                                type: string
                                              options:
                                                type: object
                                                properties:
                                                  variablesForTest:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  responseVariableMapping:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - {}
                                                        - type: 'null'
                                                  isCustomBody:
                                                    type: boolean
                                                  isExecutedOnClient:
                                                    type: boolean
                                                  webhook:
                                                    type: object
                                                    properties:
                                                      id: {}
                                                      queryParams: {}
                                                      headers: {}
                                                      method: {}
                                                      url: {}
                                                      body: {}
                                                  timeout:
                                                    type: number
                                                    minimum: 1
                                                    maximum: 120
                                                  proxyCredentialsId:
                                                    type: string
                                              webhookId:
                                                type: string
                                            required:
                                              - id
                                              - type
                              required:
                                - id
                                - title
                                - graphCoordinates
                                - blocks
                          edges:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                from:
                                  anyOf:
                                    - type: object
                                      properties:
                                        blockId:
                                          type: string
                                        itemId:
                                          type: string
                                        pathId:
                                          type: string
                                      required:
                                        - blockId
                                    - type: object
                                      properties:
                                        eventId:
                                          type: string
                                      required:
                                        - eventId
                                to:
                                  type: object
                                  properties:
                                    groupId:
                                      type: string
                                    blockId:
                                      type: string
                                  required:
                                    - groupId
                              required:
                                - id
                                - from
                                - to
                          variables:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                name:
                                  type: string
                                isSessionVariable:
                                  type: boolean
                                value:
                                  anyOf:
                                    - anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            anyOf:
                                              - type: string
                                              - type: 'null'
                                    - type: 'null'
                              required:
                                - id
                                - name
                          theme:
                            type: object
                            properties:
                              general:
                                type: object
                                properties:
                                  font:
                                    anyOf:
                                      - type: string
                                      - anyOf:
                                          - $ref: '#/components/schemas/Google'
                                          - type: object
                                            properties:
                                              type:
                                                const: Custom
                                              family:
                                                type: string
                                              css:
                                                type: string
                                              url:
                                                type: string
                                                description: Deprecated, use `css` instead
                                            required:
                                              - type
                                  background:
                                    type: object
                                    properties:
                                      type:
                                        enum:
                                          - Color
                                          - Image
                                          - None
                                        type: string
                                      content:
                                        type: string
                                  progressBar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      color:
                                        type: string
                                      backgroundColor:
                                        type: string
                                      placement:
                                        enum:
                                          - Top
                                          - Bottom
                                        type: string
                                      thickness:
                                        type: number
                                      position:
                                        enum:
                                          - fixed
                                          - absolute
                                        type: string
                              chat:
                                type: object
                                properties:
                                  container:
                                    type: object
                                    properties:
                                      maxWidth:
                                        type: string
                                      maxHeight:
                                        type: string
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  hostAvatar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      url:
                                        type: string
                                  guestAvatar:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      url:
                                        type: string
                                  hostBubbles:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  guestBubbles:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  buttons:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                  inputs:
                                    type: object
                                    properties:
                                      backgroundColor:
                                        type: string
                                      color:
                                        type: string
                                      blur:
                                        type: number
                                      opacity:
                                        type: number
                                        minimum: 0
                                        maximum: 1
                                      shadow:
                                        enum:
                                          - none
                                          - sm
                                          - md
                                          - lg
                                          - xl
                                          - 2xl
                                        type: string
                                      border:
                                        type: object
                                        properties:
                                          thickness:
                                            type: number
                                          color:
                                            type: string
                                          roundeness:
                                            enum:
                                              - none
                                              - medium
                                              - large
                                              - custom
                                            type: string
                                          customRoundeness:
                                            type: number
                                          opacity:
                                            type: number
                                            minimum: 0
                                            maximum: 1
                                      placeholderColor:
                                        type: string
                                  roundness:
                                    enum:
                                      - none
                                      - medium
                                      - large
                                    type: string
                                    description: >-
                                      Deprecated, use
                                      `container.border.roundeness` instead
                                  buttonsInput:
                                    type: object
                                    properties:
                                      layout:
                                        enum:
                                          - wrap
                                          - vertical
                                        type: string
                              customCss:
                                type: string
                          selectedThemeTemplateId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          settings:
                            type: object
                            properties:
                              general:
                                type: object
                                properties:
                                  isBrandingEnabled:
                                    type: boolean
                                  isTypingEmulationEnabled:
                                    type: boolean
                                  isInputPrefillEnabled:
                                    type: boolean
                                  isHideQueryParamsEnabled:
                                    type: boolean
                                  isNewResultOnRefreshEnabled:
                                    type: boolean
                                  rememberUser:
                                    type: object
                                    properties:
                                      isEnabled:
                                        type: boolean
                                      storage:
                                        enum:
                                          - session
                                          - local
                                        type: string
                                  systemMessages:
                                    type: object
                                    properties:
                                      invalidMessage:
                                        type: string
                                      botClosed:
                                        type: string
                                      networkErrorTitle:
                                        type: string
                                      networkErrorMessage:
                                        type: string
                                      popupBlockedTitle:
                                        type: string
                                      popupBlockedDescription:
                                        type: string
                                      popupBlockedButtonLabel:
                                        type: string
                                      fileUploadError:
                                        type: string
                                      fileUploadSizeError:
                                        type: string
                                      whatsAppPictureChoiceSelectLabel:
                                        type: string
                              typingEmulation:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  speed:
                                    type: number
                                  maxDelay:
                                    type: number
                                  delayBetweenBubbles:
                                    type: number
                                    minimum: 0
                                    maximum: 5
                                  isDisabledOnFirstMessage:
                                    type: boolean
                              metadata:
                                type: object
                                properties:
                                  title:
                                    type: string
                                  description:
                                    type: string
                                  imageUrl:
                                    type: string
                                  favIconUrl:
                                    type: string
                                  customHeadCode:
                                    type: string
                                  googleTagManagerId:
                                    type: string
                                  allowIndexing:
                                    type: boolean
                              whatsApp: {}
                              publicShare:
                                type: object
                                properties:
                                  isEnabled:
                                    type: boolean
                              security:
                                type: object
                                properties:
                                  allowedOrigins:
                                    type: array
                                    items:
                                      type: string
                          createdAt:
                            type: string
                            format: date-time
                            x-native-type: date
                          updatedAt:
                            type: string
                            format: date-time
                            x-native-type: date
                          icon:
                            anyOf:
                              - type: string
                              - type: 'null'
                          folderId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          publicId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          customDomain:
                            anyOf:
                              - type: string
                              - type: 'null'
                          workspaceId:
                            type: string
                            minLength: 1
                          resultsTablePreferences:
                            anyOf:
                              - type: object
                                properties:
                                  columnsOrder:
                                    type: array
                                    items:
                                      type: string
                                  columnsVisibility:
                                    type: object
                                    propertyNames:
                                      type: string
                                    additionalProperties:
                                      type: boolean
                                  columnsWidth:
                                    type: object
                                    propertyNames:
                                      type: string
                                    additionalProperties:
                                      type: number
                                required:
                                  - columnsOrder
                                  - columnsVisibility
                                  - columnsWidth
                              - type: 'null'
                          isArchived:
                            type: boolean
                          isClosed:
                            type: boolean
                          whatsAppCredentialsId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          riskLevel:
                            anyOf:
                              - type: number
                              - type: 'null'
                          spaceId:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - version
                          - id
                          - name
                          - events
                          - groups
                          - edges
                          - variables
                          - theme
                          - selectedThemeTemplateId
                          - settings
                          - createdAt
                          - updatedAt
                          - icon
                          - folderId
                          - publicId
                          - customDomain
                          - workspaceId
                          - resultsTablePreferences
                          - isArchived
                          - isClosed
                          - whatsAppCredentialsId
                          - riskLevel
                          - spaceId
                  currentUserMode:
                    enum:
                      - guest
                      - read
                      - write
                    type: string
                required:
                  - typebot
                  - currentUserMode
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: BAD_REQUEST
                      status:
                        const: 400
                      message:
                        type: string
                        default: Bad Request
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '401':
          description: '401'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: UNAUTHORIZED
                      status:
                        const: 401
                      message:
                        type: string
                        default: Unauthorized
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '403':
          description: '403'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: FORBIDDEN
                      status:
                        const: 403
                      message:
                        type: string
                        default: Forbidden
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: NOT_FOUND
                      status:
                        const: 404
                      message:
                        type: string
                        default: Not Found
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '500':
          description: '500'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: INTERNAL_SERVER_ERROR
                      status:
                        const: 500
                      message:
                        type: string
                        default: Internal Server Error
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
components:
  schemas:
    Start:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: start
        label:
          type: string
      required:
        - id
        - type
        - label
    Image:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - image
          type: string
        content:
          type: object
          properties:
            url:
              type: string
            clickLink:
              type: object
              properties:
                url:
                  type: string
                alt:
                  type: string
      required:
        - id
        - type
    Audio:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - audio
          type: string
        content:
          type: object
          properties:
            url:
              type: string
            isAutoplayEnabled:
              type: boolean
      required:
        - id
        - type
    TextInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - text input
          type: string
        options:
          type: object
          properties:
            labels:
              type: object
              properties:
                placeholder:
                  type: string
                button:
                  type: string
            variableId:
              type: string
            isLong:
              type: boolean
            inputMode:
              enum:
                - text
                - decimal
                - numeric
                - tel
                - search
                - email
                - url
              type: string
            audioClip:
              type: object
              properties:
                isEnabled:
                  type: boolean
                saveVariableId:
                  type: string
                visibility:
                  enum:
                    - Auto
                    - Public
                    - Private
                  type: string
            attachments:
              type: object
              properties:
                isEnabled:
                  type: boolean
                saveVariableId:
                  type: string
                visibility:
                  enum:
                    - Auto
                    - Public
                    - Private
                  type: string
      required:
        - id
        - type
    EmailInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - email input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            labels:
              type: object
              properties:
                placeholder:
                  type: string
                button:
                  type: string
            retryMessageContent:
              type: string
      required:
        - id
        - type
    UrlInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - url input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            labels:
              type: object
              properties:
                placeholder:
                  type: string
                button:
                  type: string
            retryMessageContent:
              type: string
      required:
        - id
        - type
    PhoneNumberInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - phone number input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            labels:
              type: object
              properties:
                placeholder:
                  type: string
                button:
                  type: string
            retryMessageContent:
              type: string
            defaultCountryCode:
              type: string
      required:
        - id
        - type
    DateInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - date input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            labels:
              type: object
              properties:
                button:
                  type: string
                from:
                  type: string
                to:
                  type: string
            hasTime:
              type: boolean
            isRange:
              type: boolean
            format:
              type: string
              description: 'Format of the string is based on Unicode Technical Standard #35'
            min:
              type: string
            max:
              type: string
      required:
        - id
        - type
    TimeInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - time input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            labels:
              type: object
              properties:
                button:
                  type: string
            format:
              type: string
              description: 'Format of the string is based on Unicode Technical Standard #35'
      required:
        - id
        - type
    PaymentInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - payment input
          type: string
        options:
          type: object
          properties:
            variableId:
              type: string
            provider:
              enum:
                - Stripe
              type: string
            labels:
              type: object
              properties:
                button:
                  type: string
                success:
                  type: string
            additionalInformation:
              type: object
              properties:
                description:
                  type: string
                name:
                  type: string
                email:
                  type: string
                phoneNumber:
                  type: string
                address:
                  type: object
                  properties:
                    country:
                      type: string
                    line1:
                      type: string
                    line2:
                      type: string
                    state:
                      type: string
                    city:
                      type: string
                    postalCode:
                      type: string
            credentialsId:
              type: string
            currency:
              type: string
            amount:
              type: string
            retryMessageContent:
              type: string
      required:
        - id
        - type
    Cards:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: cards
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              outgoingEdgeId:
                type: string
              options:
                type: object
                properties:
                  displayCondition:
                    type: object
                    properties:
                      isEnabled:
                        type: boolean
                      condition:
                        type: object
                        properties:
                          logicalOperator:
                            enum:
                              - OR
                              - AND
                            type: string
                          comparisons:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                variableId:
                                  type: string
                                comparisonOperator:
                                  enum:
                                    - Equal to
                                    - Not equal
                                    - Contains
                                    - Does not contain
                                    - Greater than
                                    - Greater or equal to
                                    - Less than
                                    - Less or equal to
                                    - Is set
                                    - Is empty
                                    - Starts with
                                    - Ends with
                                    - Matches regex
                                    - Does not match regex
                                  type: string
                                value:
                                  type: string
                              required:
                                - id
                  internalValue:
                    anyOf:
                      - type: string
                      - type: 'null'
              imageUrl:
                anyOf:
                  - type: string
                  - type: 'null'
              title:
                anyOf:
                  - type: string
                  - type: 'null'
              description:
                anyOf:
                  - type: string
                  - type: 'null'
              paths:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    text:
                      type: string
                    outgoingEdgeId:
                      type: string
                  required:
                    - id
            required:
              - id
        options:
          type: object
          properties:
            variableId:
              type: string
            saveResponseMapping:
              type: array
              items:
                type: object
                properties:
                  field:
                    enum:
                      - Image URL
                      - Title
                      - Description
                      - Button
                      - Internal Value
                    type: string
                  variableId:
                    type: string
      required:
        - id
        - type
        - items
    ChoiceInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - choice input
          type: string
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              outgoingEdgeId:
                type: string
              content:
                type: string
              value:
                type: string
              displayCondition:
                type: object
                properties:
                  isEnabled:
                    type: boolean
                  condition:
                    type: object
                    properties:
                      logicalOperator:
                        enum:
                          - OR
                          - AND
                        type: string
                      comparisons:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            variableId:
                              type: string
                            comparisonOperator:
                              enum:
                                - Equal to
                                - Not equal
                                - Contains
                                - Does not contain
                                - Greater than
                                - Greater or equal to
                                - Less than
                                - Less or equal to
                                - Is set
                                - Is empty
                                - Starts with
                                - Ends with
                                - Matches regex
                                - Does not match regex
                              type: string
                            value:
                              type: string
                          required:
                            - id
            required:
              - id
        options:
          type: object
          properties:
            variableId:
              type: string
            isMultipleChoice:
              type: boolean
            buttonLabel:
              type: string
            dynamicVariableId:
              type: string
            isSearchable:
              type: boolean
            searchInputPlaceholder:
              type: string
            areInitialSearchButtonsVisible:
              type: boolean
      required:
        - id
        - type
        - items
    FileInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: file input
        options:
          type: object
          properties:
            variableId:
              type: string
            isRequired:
              type: boolean
            isMultipleAllowed:
              type: boolean
            labels:
              type: object
              properties:
                placeholder:
                  type: string
                button:
                  type: string
                clear:
                  type: string
                skip:
                  type: string
                success:
                  type: object
                  properties:
                    single:
                      type: string
                    multiple:
                      type: string
            allowedFileTypes:
              type: object
              properties:
                isEnabled:
                  type: boolean
                types:
                  type: array
                  items:
                    type: string
            capture:
              enum:
                - environment
                - user
              type: string
            visibility:
              enum:
                - Auto
                - Public
                - Private
              type: string
      required:
        - id
        - type
    PictureChoiceInput:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - picture choice input
          type: string
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              outgoingEdgeId:
                type: string
              pictureSrc:
                type: string
              title:
                type: string
              description:
                type: string
              value:
                type: string
              displayCondition:
                type: object
                properties:
                  isEnabled:
                    type: boolean
                  condition:
                    type: object
                    properties:
                      logicalOperator:
                        enum:
                          - OR
                          - AND
                        type: string
                      comparisons:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            variableId:
                              type: string
                            comparisonOperator:
                              enum:
                                - Equal to
                                - Not equal
                                - Contains
                                - Does not contain
                                - Greater than
                                - Greater or equal to
                                - Less than
                                - Less or equal to
                                - Is set
                                - Is empty
                                - Starts with
                                - Ends with
                                - Matches regex
                                - Does not match regex
                              type: string
                            value:
                              type: string
                          required:
                            - id
            required:
              - id
        options:
          type: object
          properties:
            variableId:
              type: string
            isMultipleChoice:
              type: boolean
            isSearchable:
              type: boolean
            buttonLabel:
              type: string
            searchInputPlaceholder:
              type: string
            dynamicItems:
              type: object
              properties:
                isEnabled:
                  type: boolean
                titlesVariableId:
                  type: string
                descriptionsVariableId:
                  type: string
                pictureSrcsVariableId:
                  type: string
      required:
        - id
        - type
        - items
    Code:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Code
          type: string
        options:
          type: object
          properties:
            name:
              type: string
            content:
              type: string
            isExecutedOnClient:
              type: boolean
            isUnsafe:
              type: boolean
              description: >-
                Enabled by default for imported bots to prevent code to be
                executed in preview with priviledged access
            shouldExecuteInParentContext:
              type: boolean
      required:
        - id
        - type
    Redirect:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Redirect
          type: string
        options:
          type: object
          properties:
            url:
              type: string
            isNewTab:
              type: boolean
      required:
        - id
        - type
    SetVariable:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Set variable
          type: string
        options:
          anyOf:
            - type: object
              properties:
                variableId:
                  type: string
                isExecutedOnClient:
                  type: boolean
                isUnsafe:
                  type: boolean
                  description: >-
                    Enabled by default for imported bots to prevent code to be
                    executed in preview with priviledged access
                expressionToEvaluate:
                  type: string
                isCode:
                  type: boolean
                expressionDescription:
                  type: string
                saveErrorInVariableId:
                  type: string
                type:
                  not: {}
            - $ref: '#/components/schemas/Custom'
            - $ref: '#/components/schemas/Now'
            - $ref: '#/components/schemas/Today'
            - $ref: '#/components/schemas/MapItemWithSameIndex'
            - $ref: '#/components/schemas/AppendValues'
            - $ref: '#/components/schemas/Pop'
      required:
        - id
        - type
    TypebotLink:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Typebot link
          type: string
        options:
          type: object
          properties:
            typebotId:
              type: string
            groupId:
              type: string
            mergeResults:
              type: boolean
      required:
        - id
        - type
    Wait:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Wait
          type: string
        options:
          type: object
          properties:
            secondsToWaitFor:
              type: string
            shouldPause:
              type: boolean
      required:
        - id
        - type
    Jump:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Jump
          type: string
        options:
          type: object
          properties:
            groupId:
              type: string
            blockId:
              type: string
      required:
        - id
        - type
    Return:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Return
          type: string
      required:
        - id
        - type
    Condition:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Condition
          type: string
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              outgoingEdgeId:
                type: string
              content:
                type: object
                properties:
                  logicalOperator:
                    enum:
                      - OR
                      - AND
                    type: string
                  comparisons:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        variableId:
                          type: string
                        comparisonOperator:
                          enum:
                            - Equal to
                            - Not equal
                            - Contains
                            - Does not contain
                            - Greater than
                            - Greater or equal to
                            - Less than
                            - Less or equal to
                            - Is set
                            - Is empty
                            - Starts with
                            - Ends with
                            - Matches regex
                            - Does not match regex
                          type: string
                        value:
                          type: string
                      required:
                        - id
            required:
              - id
        options:
          not: {}
      required:
        - id
        - type
        - items
    AbTest:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - AB test
          type: string
        items:
          type: array
          prefixItems:
            - type: object
              properties:
                id:
                  type: string
                outgoingEdgeId:
                  type: string
                path:
                  const: a
              required:
                - id
                - path
            - type: object
              properties:
                id:
                  type: string
                outgoingEdgeId:
                  type: string
                path:
                  const: b
              required:
                - id
                - path
        options:
          type: object
          properties:
            aPercent:
              type: number
              minimum: 0
              maximum: 100
      required:
        - id
        - type
        - items
    Webhook:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - webhook
          type: string
        options:
          type: object
          properties:
            responseVariableMapping:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  bodyPath:
                    type: string
                required:
                  - id
      required:
        - id
        - type
    Chatwoot:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Chatwoot
          type: string
        options:
          type: object
          properties:
            task:
              enum:
                - Show widget
                - Close widget
              type: string
            baseUrl:
              type: string
            websiteToken:
              type: string
            user:
              type: object
              properties:
                id:
                  type: string
                email:
                  type: string
                name:
                  type: string
                avatarUrl:
                  type: string
                phoneNumber:
                  type: string
      required:
        - id
        - type
    CreateImage:
      type: object
      properties:
        task:
          const: Create image
        prompt:
          type: string
        advancedOptions:
          type: object
          properties:
            size:
              enum:
                - 256x256
                - 512x512
                - 1024x1024
              type: string
        responseMapping:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              valueToExtract:
                enum:
                  - Image URL
                type: string
              variableId:
                type: string
            required:
              - id
              - valueToExtract
        credentialsId:
          type: string
        baseUrl:
          type: string
        apiVersion:
          type: string
      required:
        - task
        - advancedOptions
        - responseMapping
    CreateSpeech:
      type: object
      properties:
        credentialsId:
          type: string
        baseUrl:
          type: string
        apiVersion:
          type: string
        task:
          const: Create speech
        model:
          type: string
        input:
          type: string
        voice:
          enum:
            - alloy
            - echo
            - fable
            - onyx
            - nova
            - shimmer
          type: string
        saveUrlInVariableId:
          type: string
      required:
        - task
    Email:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Email
          type: string
        options:
          type: object
          properties:
            credentialsId:
              type: string
            isCustomBody:
              type: boolean
            isBodyCode:
              type: boolean
            recipients:
              type: array
              items:
                type: string
            subject:
              type: string
            body:
              type: string
            replyTo:
              type: string
            cc:
              type: array
              items:
                type: string
            bcc:
              type: array
              items:
                type: string
            attachmentsVariableId:
              type: string
      required:
        - id
        - type
    Pixel:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Pixel
          type: string
        options:
          anyOf:
            - type: object
              properties:
                pixelId:
                  type: string
                isInitSkip:
                  type: boolean
                params:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value: {}
                    required:
                      - id
                eventType:
                  not: {}
            - $ref: '#/components/schemas/Lead'
            - type: object
              properties:
                pixelId:
                  type: string
                isInitSkip:
                  type: boolean
                params:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value: {}
                    required:
                      - id
                eventType:
                  enum:
                    - Custom
                  type: string
                name:
                  type: string
              required:
                - eventType
      required:
        - id
        - type
    GoogleSheets:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Google Sheets
          type: string
        options:
          anyOf:
            - $ref: '#/components/schemas/GetDataFromSheet'
            - $ref: '#/components/schemas/InsertARow'
            - $ref: '#/components/schemas/UpdateARow'
            - type: object
              properties:
                credentialsId:
                  type: string
                sheetId:
                  type: string
                spreadsheetId:
                  type: string
                action:
                  not: {}
      required:
        - id
        - type
    Make.com:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Make.com
          type: string
        options:
          type: object
          properties:
            variablesForTest:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  value:
                    type: string
                required:
                  - id
            responseVariableMapping:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  bodyPath:
                    type: string
                required:
                  - id
            isCustomBody:
              type: boolean
            isExecutedOnClient:
              type: boolean
            webhook:
              type: object
              properties:
                queryParams:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                headers:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                method:
                  enum:
                    - POST
                    - GET
                    - PUT
                    - DELETE
                    - PATCH
                    - HEAD
                    - CONNECT
                    - OPTIONS
                    - TRACE
                  type: string
                url:
                  type: string
                body:
                  type: string
            timeout:
              type: number
              minimum: 1
              maximum: 120
            proxyCredentialsId:
              type: string
      required:
        - id
        - type
    Pabbly:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Pabbly
          type: string
        options:
          type: object
          properties:
            variablesForTest:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  value:
                    type: string
                required:
                  - id
            responseVariableMapping:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  bodyPath:
                    type: string
                required:
                  - id
            isCustomBody:
              type: boolean
            isExecutedOnClient:
              type: boolean
            webhook:
              type: object
              properties:
                queryParams:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                headers:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                method:
                  enum:
                    - POST
                    - GET
                    - PUT
                    - DELETE
                    - PATCH
                    - HEAD
                    - CONNECT
                    - OPTIONS
                    - TRACE
                  type: string
                url:
                  type: string
                body:
                  type: string
            timeout:
              type: number
              minimum: 1
              maximum: 120
            proxyCredentialsId:
              type: string
      required:
        - id
        - type
    Zapier:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          enum:
            - Zapier
          type: string
        options:
          type: object
          properties:
            variablesForTest:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  value:
                    type: string
                required:
                  - id
            responseVariableMapping:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  variableId:
                    type: string
                  bodyPath:
                    type: string
                required:
                  - id
            isCustomBody:
              type: boolean
            isExecutedOnClient:
              type: boolean
            webhook:
              type: object
              properties:
                queryParams:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                headers:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      key:
                        type: string
                      value:
                        type: string
                    required:
                      - id
                method:
                  enum:
                    - POST
                    - GET
                    - PUT
                    - DELETE
                    - PATCH
                    - HEAD
                    - CONNECT
                    - OPTIONS
                    - TRACE
                  type: string
                url:
                  type: string
                body:
                  type: string
            timeout:
              type: number
              minimum: 1
              maximum: 120
            proxyCredentialsId:
              type: string
      required:
        - id
        - type
    AskAssistant:
      type: object
      properties:
        baseUrl:
          type: string
        apiVersion:
          type: string
        credentialsId:
          type: string
        action:
          const: Ask Assistant
        assistantId:
          type: string
        threadVariableId:
          type: string
        message:
          type: string
        functions:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              code:
                type: string
        additionalInstructions:
          type: string
        responseMapping:
          type: array
          items:
            type: object
            properties:
              item:
                enum:
                  - Message
                  - Thread ID
                type: string
              variableId:
                type: string
        threadId:
          type: string
      required:
        - action
    CreateTranscription:
      type: object
      properties:
        baseUrl:
          type: string
        apiVersion:
          type: string
        credentialsId:
          type: string
        action:
          const: Create transcription
        url:
          type: string
        model:
          type: string
        prompt:
          type: string
        transcriptionVariableId:
          type: string
      required:
        - action
    CalCom:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: cal-com
        options:
          anyOf:
            - type: object
              properties:
                baseUrl:
                  type: string
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/BookEvent'
      required:
        - id
        - type
    ChatNode:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: chat-node
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/SendMessage'
      required:
        - id
        - type
    QrCode:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: qr-code
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/GenerateAQrCode'
      required:
        - id
        - type
    QueryKnowledgeBase:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Query Knowledge Base
        datasetId:
          type: string
        query:
          type: string
        responseMapping:
          type: array
          items:
            type: object
            properties:
              item:
                enum:
                  - Retrieved chunks
                type: string
              variableId:
                type: string
      required:
        - action
    Elevenlabs:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: elevenlabs
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/ConvertTextToSpeech'
      required:
        - id
        - type
    Nocodb:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: nocodb
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/SearchRecords'
            - $ref: '#/components/schemas/CreateRecord'
            - $ref: '#/components/schemas/UpdateExistingRecord'
      required:
        - id
        - type
    Segment:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: segment
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/Alias'
            - $ref: '#/components/schemas/IdentifyUser'
            - $ref: '#/components/schemas/Page'
            - $ref: '#/components/schemas/Track'
      required:
        - id
        - type
    Zendesk:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: zendesk
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/OpenWebWidget'
      required:
        - id
        - type
    Posthog:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: posthog
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/Capture'
            - $ref: '#/components/schemas/IdentifyGroup'
      required:
        - id
        - type
    GetUsers:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Get Users
        filter:
          anyOf:
            - type: object
              properties:
                type:
                  not: {}
            - type: object
              properties:
                type:
                  const: User ID
                userId:
                  type: string
              required:
                - type
            - $ref: '#/components/schemas/EmployeeId'
        responseMapping:
          type: array
          items:
            type: object
            properties:
              item:
                enum:
                  - Emails
                  - Company Names
                  - First Names
                  - Second Names
                  - Display Names
                  - Initials
                  - Job Titles
                  - Profile Photo IDs
                  - Timezones
                  - Manager IDs
                  - Department Names
                  - Account Statuses
                  - User IDs
                  - Employee IDs
                type: string
              variableId:
                type: string
      required:
        - action
    Gmail:
      type: object
      properties:
        id:
          type: string
        outgoingEdgeId:
          type: string
        type:
          const: gmail
        options:
          anyOf:
            - type: object
              properties:
                credentialsId:
                  type: string
                action:
                  not: {}
            - $ref: '#/components/schemas/SendEmail'
      required:
        - id
        - type
    Google:
      type: object
      properties:
        type:
          const: Google
        family:
          type: string
      required:
        - type
    InsertARow:
      type: object
      properties:
        credentialsId:
          type: string
        sheetId:
          type: string
        spreadsheetId:
          type: string
        action:
          enum:
            - Insert a row
          type: string
        cellsToInsert:
          type: array
          items:
            type: object
            properties:
              column:
                type: string
              value:
                type: string
              id:
                type: string
            required:
              - id
      required:
        - action
    Custom:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        expressionToEvaluate:
          type: string
        isCode:
          type: boolean
        expressionDescription:
          type: string
        saveErrorInVariableId:
          type: string
        type:
          const: Custom
      required:
        - type
    Now:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        type:
          enum:
            - Now
            - Yesterday
            - Tomorrow
          type: string
        timeZone:
          type: string
      required:
        - type
    Today:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        type:
          enum:
            - Today
            - Moment of the day
            - Empty
            - Environment name
            - User ID
            - Result ID
            - Random ID
            - Phone number
            - Contact name
            - Transcript
            - Referral Click ID
            - Referral Source ID
            - Device type
          type: string
      required:
        - type
    MapItemWithSameIndex:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        type:
          const: Map item with same index
        mapListItemParams:
          type: object
          properties:
            baseItemVariableId:
              type: string
            baseListVariableId:
              type: string
            targetListVariableId:
              type: string
      required:
        - type
    AppendValues:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        type:
          const: Append value(s)
        item:
          type: string
      required:
        - type
    Pop:
      type: object
      properties:
        variableId:
          type: string
        isExecutedOnClient:
          type: boolean
        isUnsafe:
          type: boolean
          description: >-
            Enabled by default for imported bots to prevent code to be executed
            in preview with priviledged access
        type:
          enum:
            - Pop
            - Shift
          type: string
        saveItemInVariableId:
          type: string
      required:
        - type
    Lead:
      type: object
      properties:
        pixelId:
          type: string
        isInitSkip:
          type: boolean
        params:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              key:
                type: string
              value: {}
            required:
              - id
        eventType:
          enum:
            - Lead
            - Contact
            - CompleteRegistration
            - Schedule
            - SubmitApplication
            - ViewContent
            - AddPaymentInfo
            - AddToCart
            - AddToWishlist
            - CustomizeProduct
            - Donate
            - FindLocation
            - InitiateCheckout
            - Purchase
            - Search
            - StartTrial
            - Subscribe
          type: string
      required:
        - eventType
    GetDataFromSheet:
      type: object
      properties:
        credentialsId:
          type: string
        sheetId:
          type: string
        spreadsheetId:
          type: string
        action:
          enum:
            - Get data from sheet
          type: string
        filter:
          type: object
          properties:
            comparisons:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  column:
                    type: string
                  comparisonOperator:
                    enum:
                      - Equal to
                      - Not equal
                      - Contains
                      - Does not contain
                      - Greater than
                      - Greater or equal to
                      - Less than
                      - Less or equal to
                      - Is set
                      - Is empty
                      - Starts with
                      - Ends with
                      - Matches regex
                      - Does not match regex
                    type: string
                  value:
                    type: string
                required:
                  - id
            logicalOperator:
              enum:
                - OR
                - AND
              type: string
        cellsToExtract:
          type: array
          items:
            type: object
            properties:
              column:
                type: string
              id:
                type: string
              variableId:
                type: string
            required:
              - id
        totalRowsToExtract:
          enum:
            - All
            - First
            - Last
            - Random
          type: string
      required:
        - action
    UpdateARow:
      type: object
      properties:
        credentialsId:
          type: string
        sheetId:
          type: string
        spreadsheetId:
          type: string
        action:
          enum:
            - Update a row
          type: string
        cellsToUpsert:
          type: array
          items:
            type: object
            properties:
              column:
                type: string
              value:
                type: string
              id:
                type: string
            required:
              - id
        filter:
          type: object
          properties:
            comparisons:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  column:
                    type: string
                  comparisonOperator:
                    enum:
                      - Equal to
                      - Not equal
                      - Contains
                      - Does not contain
                      - Greater than
                      - Greater or equal to
                      - Less than
                      - Less or equal to
                      - Is set
                      - Is empty
                      - Starts with
                      - Ends with
                      - Matches regex
                      - Does not match regex
                    type: string
                  value:
                    type: string
                required:
                  - id
            logicalOperator:
              enum:
                - OR
                - AND
              type: string
      required:
        - action
    BookEvent:
      type: object
      properties:
        baseUrl:
          type: string
        credentialsId:
          type: string
        action:
          const: Book event
        link:
          type: string
        layout:
          enum:
            - Month
            - Weekly
            - Columns
          type: string
        name:
          type: string
        email:
          type: string
        additionalNotes:
          type: string
        phone:
          type: string
        anyPrefilledInformations:
          type: array
          items:
            type: object
            properties:
              questionId:
                type: string
              value:
                type: string
        saveBookedDateInVariableId:
          type: string
      required:
        - action
    SendMessage:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Send Message
        botId:
          type: string
        threadId:
          type: string
        message:
          type: string
        responseMapping:
          type: array
          items:
            type: object
            properties:
              item:
                enum:
                  - Message
                  - Thread ID
                type: string
              variableId:
                type: string
      required:
        - action
    GenerateAQrCode:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Generate a QR Code
        data:
          type: string
        saveUrlInVariableId:
          type: string
      required:
        - action
    ConvertTextToSpeech:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Convert text to speech
        text:
          type: string
        voiceId:
          type: string
        modelId:
          type: string
        saveUrlInVariableId:
          type: string
      required:
        - action
    SearchRecords:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Search Records
        tableId:
          type: string
        viewId:
          type: string
        returnType:
          enum:
            - All
            - First
            - Last
            - Random
          type: string
        filter:
          type: object
          properties:
            comparisons:
              type: array
              items:
                type: object
                properties:
                  input:
                    type: string
                  operator:
                    enum:
                      - Equal to
                      - Not equal
                      - Contains
                      - Greater than
                      - Less than
                      - Is set
                      - Is empty
                      - Starts with
                      - Ends with
                    type: string
                  value:
                    type: string
            joiner:
              enum:
                - AND
                - OR
              type: string
          required:
            - comparisons
        responseMapping:
          type: array
          items:
            type: object
            properties:
              fieldName:
                type: string
              variableId:
                type: string
      required:
        - action
    CreateRecord:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Create Record
        tableId:
          type: string
        fields:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
      required:
        - action
    UpdateExistingRecord:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Update Existing Record
        tableId:
          type: string
        viewId:
          type: string
        filter:
          type: object
          properties:
            comparisons:
              type: array
              items:
                type: object
                properties:
                  input:
                    type: string
                  operator:
                    enum:
                      - Equal to
                      - Not equal
                      - Contains
                      - Greater than
                      - Less than
                      - Is set
                      - Is empty
                      - Starts with
                      - Ends with
                    type: string
                  value:
                    type: string
            joiner:
              enum:
                - AND
                - OR
              type: string
          required:
            - comparisons
        updates:
          type: array
          items:
            type: object
            properties:
              fieldName:
                type: string
              value:
                type: string
      required:
        - action
    Alias:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Alias
        userId:
          type: string
        previousId:
          type: string
      required:
        - action
    IdentifyUser:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Identify User
        userId:
          type: string
        email:
          type: string
        traits:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
      required:
        - action
    Page:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Page
        userId:
          type: string
        name:
          type: string
        category:
          type: string
        properties:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
      required:
        - action
    Track:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Track
        eventName:
          type: string
        userId:
          type: string
        properties:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
      required:
        - action
    OpenWebWidget:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Open Web Widget
        userId:
          type: string
        name:
          type: string
        email:
          type: string
        webWidgetKey:
          type: string
      required:
        - action
    Capture:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Capture
        isAnonymous:
          type: boolean
        distinctId:
          type: string
        event:
          type: string
        properties:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
        personProperties:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
        groups:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
              key:
                type: string
      required:
        - action
    IdentifyGroup:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Identify Group
        distinctId:
          type: string
        groupType:
          type: string
        groupKey:
          type: string
        properties:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
      required:
        - action
    EmployeeId:
      type: object
      properties:
        type:
          const: Employee ID
        employeeId:
          type: string
      required:
        - type
    SendEmail:
      type: object
      properties:
        credentialsId:
          type: string
        action:
          const: Send email
        to:
          type: string
        subject:
          type: string
        body:
          type: string
        attachments:
          type: string
        label:
          type: string
        from:
          type: string
        threadId:
          type: string
        replyTo:
          type: string
        responseMapping:
          type: array
          items:
            type: object
            properties:
              item:
                enum:
                  - Thread ID
                type: string
              variableId:
                type: string
      required:
        - action

````