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

# validateIntegrationUpdate

> Perform a validation of an integration update request



## OpenAPI

````yaml /admin-openapi.json put /v1/admin/integrations/{id}/validate
openapi: 3.0.0
info:
  title: Botpress Admin API
  description: API for Botpress Cloud Manager
  version: 1.82.0
servers:
  - url: https://api.botpress.cloud
security:
  - BearerAuth: []
tags:
  - name: documented
  - name: experimental
paths:
  /v1/admin/integrations/{id}/validate:
    put:
      tags:
        - Endpoints
      description: Perform a validation of an integration update request
      operationId: validateIntegrationUpdate
      parameters:
        - name: id
          in: path
          description: Integration Version ID
          required: true
          schema:
            type: string
        - name: x-workspace-id
          in: header
          description: Workspace ID
          required: true
          schema:
            type: string
        - name: x-multiple-integrations
          in: header
          description: >-
            Whether the client supports bots with multiple instances of the same
            integration. Set to "true" to receive integration instances keyed by
            their alias instead of their id. This header will be removed in the
            future, and the API will always return multiple instances keyed by
            alias.
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/validateIntegrationUpdateBody'
      responses:
        '200':
          $ref: '#/components/responses/validateIntegrationUpdateResponse'
        default:
          $ref: '#/components/responses/validateIntegrationUpdateResponse'
components:
  requestBodies:
    validateIntegrationUpdateBody:
      description: Integration
      content:
        application/json:
          schema:
            type: object
            properties:
              configuration:
                type: object
                properties:
                  title:
                    type: string
                    maxLength: 64
                    description: Title of the configuration
                  description:
                    type: string
                    maxLength: 256
                    description: Description of the configuration
                  schema:
                    type: object
                    additionalProperties: true
                    description: >-
                      Schema of the configuration in the `JSON schema` format.
                      The configuration data is validated against this `JSON
                      schema`.
                  identifier:
                    type: object
                    properties:
                      linkTemplateScript:
                        type: string
                        maxLength: 2000
                        nullable: true
                      required:
                        type: boolean
                    additionalProperties: false
                description: Default configuration definition of the integration
                additionalProperties: false
              configurations:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    title:
                      type: string
                      maxLength: 64
                      description: Title of the configuration
                    description:
                      type: string
                      maxLength: 256
                      description: Description of the configuration
                    schema:
                      type: object
                      additionalProperties: true
                      description: >-
                        Schema of the configuration in the `JSON schema` format.
                        The configuration data is validated against this `JSON
                        schema`.
                    identifier:
                      type: object
                      properties:
                        linkTemplateScript:
                          type: string
                          maxLength: 2000
                          nullable: true
                        required:
                          type: boolean
                      additionalProperties: false
                  nullable: true
                  additionalProperties: false
                description: Additional configuration definitions of the integration
              extraOperations:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    enabled:
                      type: boolean
                  required:
                    - enabled
                  additionalProperties: false
                description: >-
                  **EXPERIMENTAL** Extra integration operations that should be
                  sent or not to the integration instances. The key is the
                  operation name.
              sdkVersion:
                type: string
                maxLength: 200
              channels:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    title:
                      type: string
                      maxLength: 64
                      description: Title of the channel
                    description:
                      type: string
                      maxLength: 256
                      description: Description of the channel
                    messages:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          schema:
                            type: object
                            additionalProperties: true
                        required:
                          - schema
                        description: Message definition
                        nullable: true
                        additionalProperties: false
                    conversation:
                      type: object
                      properties:
                        creation:
                          type: object
                          properties:
                            enabled:
                              type: boolean
                              description: Enable conversation creation
                            requiredTags:
                              type: array
                              items:
                                type: string
                              description: >-
                                The list of tags that are required to be
                                specified when calling the API directly to
                                create a conversation.
                          required:
                            - enabled
                            - requiredTags
                          description: >-
                            The conversation creation setting determines how to
                            create a conversation through the API directly. The
                            integration will have to implement the
                            `createConversation` functionality to support this
                            setting.
                          additionalProperties: false
                        tags:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              title:
                                type: string
                                maxLength: 64
                                description: Title of the tag
                              description:
                                type: string
                                maxLength: 256
                                description: Description of the tag
                            description: >-
                              Definition of a tag that can be provided on the
                              object
                            nullable: true
                            additionalProperties: false
                      additionalProperties: false
                    message:
                      type: object
                      properties:
                        tags:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              title:
                                type: string
                                maxLength: 64
                                description: Title of the tag
                              description:
                                type: string
                                maxLength: 256
                                description: Description of the tag
                            description: >-
                              Definition of a tag that can be provided on the
                              object
                            nullable: true
                            additionalProperties: false
                      additionalProperties: false
                  nullable: true
                  additionalProperties: false
              maxExecutionTime:
                type: integer
                description: Maximum execution time of the integration (in seconds).
              identifier:
                type: object
                properties:
                  extractScript:
                    type: string
                    maxLength: 2000
                    nullable: true
                  fallbackHandlerScript:
                    type: string
                    maxLength: 2000
                    nullable: true
                additionalProperties: false
              actions:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    title:
                      type: string
                      maxLength: 64
                      description: Title of the action
                    description:
                      type: string
                      maxLength: 256
                      description: Description of the action
                    billable:
                      type: boolean
                    cacheable:
                      type: boolean
                    input:
                      type: object
                      properties:
                        schema:
                          type: object
                          additionalProperties: true
                      required:
                        - schema
                      additionalProperties: false
                    output:
                      type: object
                      properties:
                        schema:
                          type: object
                          additionalProperties: true
                      required:
                        - schema
                      additionalProperties: false
                    attributes:
                      type: object
                      additionalProperties:
                        type: string
                        maxLength: 200
                        nullable: true
                      description: >-
                        Optional attributes. Set attributes to null to remove
                        them
                  required:
                    - input
                    - output
                  nullable: true
                  additionalProperties: false
              events:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    title:
                      type: string
                      maxLength: 64
                      description: Title of the event
                    description:
                      type: string
                      maxLength: 256
                      description: Description of the event
                    schema:
                      type: object
                      additionalProperties: true
                    attributes:
                      type: object
                      additionalProperties:
                        type: string
                        maxLength: 200
                        nullable: true
                      description: >-
                        Optional attributes. Set attributes to null to remove
                        them
                  required:
                    - schema
                  nullable: true
                  additionalProperties: false
              states:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - conversation
                        - user
                        - integration
                      description: >-
                        Type of the [State](#schema_state) (`conversation`,
                        `user` or `integration`)
                    schema:
                      type: object
                      additionalProperties: true
                      description: >-
                        Schema of the [State](#schema_state) in the `JSON
                        schema` format. This `JSON schema` is going to be used
                        for validating the state data.
                  required:
                    - type
                    - schema
                  description: State definition
                  nullable: true
                  additionalProperties: false
              user:
                type: object
                properties:
                  creation:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        description: Enable user creation
                      requiredTags:
                        type: array
                        items:
                          type: string
                        description: >-
                          The list of tags that are required to be specified
                          when calling the API directly to create a user.
                    required:
                      - enabled
                      - requiredTags
                    description: >-
                      The user creation setting determines how to create a user
                      through the API directly. The integration will have to
                      implement the `createUser` functionality to support this
                      setting.
                    additionalProperties: false
                  tags:
                    type: object
                    additionalProperties:
                      type: object
                      properties:
                        title:
                          type: string
                          maxLength: 64
                          description: Title of the tag
                        description:
                          type: string
                          maxLength: 256
                          description: Description of the tag
                      description: Definition of a tag that can be provided on the object
                      nullable: true
                      additionalProperties: false
                additionalProperties: false
              entities:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    title:
                      type: string
                      maxLength: 64
                      description: Title of the entity
                    description:
                      type: string
                      maxLength: 256
                      description: Description of the entity
                    schema:
                      type: object
                      additionalProperties: true
                  required:
                    - schema
                  description: Entity definition
                  nullable: true
                  additionalProperties: false
              interfaces:
                type: object
                additionalProperties:
                  type: object
                  properties:
                    id:
                      type: string
                      minLength: 28
                      maxLength: 36
                      description: ID of the interface
                    entities:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          name:
                            type: string
                            maxLength: 200
                        required:
                          - name
                        additionalProperties: false
                    actions:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          name:
                            type: string
                            maxLength: 200
                        required:
                          - name
                        additionalProperties: false
                    events:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          name:
                            type: string
                            maxLength: 200
                        required:
                          - name
                        additionalProperties: false
                    channels:
                      type: object
                      additionalProperties:
                        type: object
                        properties:
                          name:
                            type: string
                            maxLength: 200
                        required:
                          - name
                        additionalProperties: false
                  required:
                    - id
                  nullable: true
                  additionalProperties: false
              attributes:
                type: object
                additionalProperties:
                  type: string
                  maxLength: 200
                  nullable: true
                description: Optional attributes. Set attributes to null to remove them
              secrets:
                type: object
                additionalProperties:
                  type: string
                  maxLength: 20000
                  nullable: true
                description: >-
                  Secrets are integration-wide values available in the code via
                  environment variables formatted with a SECRET_ prefix followed
                  by your secret name. A secret name must respect
                  SCREAMING_SNAKE casing.
              code:
                type: string
                description: JavaScript code of the integration
              icon:
                type: string
                description: >-
                  Base64 encoded svg of the integration icon. This icon is
                  global to the integration each versions will be updated when
                  this changes.
              readme:
                type: string
                description: >-
                  Base64 encoded markdown of the integration readme. The readme
                  is specific to each integration versions.
              title:
                type: string
                minLength: 1
                maxLength: 64
                description: >-
                  Title of the integration. This is the name that will be
                  displayed in the UI
              description:
                type: string
                maxLength: 256
                description: >-
                  Description of the integration. This is the description that
                  will be displayed in the UI
              url:
                type: string
                description: URL of the integration
                nullable: true
              public:
                type: boolean
                description: >-
                  [DEPRECATED] Indicates whether the integration is public.
                  Please use the "visibility" parameter instead.
                deprecated: true
              visibility:
                type: string
                enum:
                  - public
                  - private
                  - unlisted
                description: >-
                  The integration's visibility. Public integrations are
                  available to all and cannot be updated without creating a new
                  version. Unlisted integrations behave identically to public
                  integrations, but they are not listed in the integration hub.
                  By default, integrations are private and only accessible to
                  the workspace that created them.
              layers:
                type: array
                items:
                  type: string
            title: validateIntegrationUpdateBody
            additionalProperties: false
  responses:
    validateIntegrationUpdateResponse:
      description: >-
        Validation succeeded: the integration can be updated using the same
        parameters
      content:
        application/json:
          schema:
            type: object
            title: validateIntegrationUpdateResponse
            additionalProperties: false
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````