> ## Documentation Index
> Fetch the complete documentation index at: https://botpress-ak-docs-20-document-updating-variables-from-outsid.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# updateIntegration

> Update integration



## OpenAPI

````yaml admin-openapi.json put /v1/admin/integrations/{id}
openapi: 3.0.0
info:
  title: Botpress Admin API
  description: API for Botpress Cloud Manager
  version: 1.52.1
servers:
  - url: https://api.botpress.cloud
security:
  - BearerAuth: []
tags:
  - name: documented
  - name: experimental
paths:
  /v1/admin/integrations/{id}:
    put:
      tags:
        - Endpoints
      description: Update integration
      operationId: updateIntegration
      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/updateIntegrationBody'
      responses:
        '200':
          $ref: '#/components/responses/updateIntegrationResponse'
        default:
          $ref: '#/components/responses/updateIntegrationResponse'
components:
  requestBodies:
    updateIntegrationBody:
      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.
              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: updateIntegrationBody
            additionalProperties: false
  responses:
    updateIntegrationResponse:
      description: Success
      content:
        application/json:
          schema:
            type: object
            properties:
              integration:
                $ref: '#/components/schemas/Integration'
            required:
              - integration
            title: updateIntegrationResponse
            additionalProperties: false
  schemas:
    Integration:
      type: object
      properties:
        id:
          type: string
          minLength: 28
          maxLength: 36
          description: ID of the [Integration](#schema_integration)
        createdAt:
          type: string
          format: date-time
          description: >-
            Creation date of the [Integration](#schema_integration) in ISO 8601
            format
        updatedAt:
          type: string
          format: date-time
          description: >-
            Updating date of the [Integration](#schema_integration) in ISO 8601
            format
        identifier:
          type: object
          properties:
            fallbackHandlerScript:
              type: string
              maxLength: 2000
              description: >-
                VRL Script of the [Integration](#schema_integration) to handle
                incoming requests for a request that doesn't have an identifier
            extractScript:
              type: string
              maxLength: 2000
              description: >-
                VRL Script of the [Integration](#schema_integration) to extract
                the identifier from an incoming webhook often use for OAuth
          description: >-
            Global identifier configuration of the
            [Integration](#schema_integration)
          additionalProperties: false
        sandbox:
          type: object
          properties:
            identifierExtractScript:
              type: string
              maxLength: 2000
              description: >-
                VRL Script of the [Integration](#schema_integration) to extract
                the identifier from an incoming webhook used specifically for
                the sandbox
            messageExtractScript:
              type: string
              maxLength: 2000
              description: >-
                VRL Script of the [Integration](#schema_integration) to extract
                the message from an incoming webhook used specifically for the
                sandbox
          additionalProperties: false
        maxExecutionTime:
          type: number
          description: Maximum execution time of the integration (in seconds).
        url:
          type: string
          maxLength: 2000
          description: URL of the [Integration](#schema_integration)
        name:
          type: string
          maxLength: 200
          description: Name of the [Integration](#schema_integration)
        version:
          type: string
          maxLength: 200
          description: Version of the [Integration](#schema_integration)
        interfaces:
          type: object
          additionalProperties:
            type: object
            properties:
              id:
                type: string
                minLength: 28
                maxLength: 36
                description: ID of the interface
              name:
                type: string
                maxLength: 200
                description: Name of the interface
              version:
                type: string
                maxLength: 200
                description: Version 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
              - name
              - version
              - entities
              - actions
              - events
              - channels
            additionalProperties: false
        configuration:
          type: object
          properties:
            title:
              type: string
              maxLength: 64
              description: Title of the configuration
            description:
              type: string
              maxLength: 256
              description: Description of the configuration
            identifier:
              type: object
              properties:
                linkTemplateScript:
                  type: string
                  maxLength: 2000
                required:
                  type: boolean
              required:
                - required
              description: >-
                Identifier configuration of the
                [Integration](#schema_integration)
              additionalProperties: false
            schema:
              type: object
              additionalProperties: true
              description: >-
                Schema of the configuration in the `JSON schema` format. The
                configuration data is validated against this `JSON schema`.
          required:
            - identifier
            - schema
          description: Configuration definition
          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
              identifier:
                type: object
                properties:
                  linkTemplateScript:
                    type: string
                    maxLength: 2000
                  required:
                    type: boolean
                required:
                  - required
                description: >-
                  Identifier configuration of the
                  [Integration](#schema_integration)
                additionalProperties: false
              schema:
                type: object
                additionalProperties: true
                description: >-
                  Schema of the configuration in the `JSON schema` format. The
                  configuration data is validated against this `JSON schema`.
            required:
              - identifier
              - schema
            description: Configuration definition
            additionalProperties: false
        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
                  additionalProperties: false
              conversation:
                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
                      additionalProperties: false
                  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
                required:
                  - tags
                  - creation
                description: Conversation object configuration
                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
                      additionalProperties: false
                required:
                  - tags
                description: Message object configuration
                additionalProperties: false
            required:
              - messages
              - conversation
              - message
            description: Channel definition
            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
            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
                description: Optional attributes
            required:
              - schema
            description: Event Definition
            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
                description: Optional attributes
            required:
              - input
              - output
            description: Action definition
            additionalProperties: false
        user:
          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
                additionalProperties: false
            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
          required:
            - tags
            - creation
          description: User object configuration
          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
            additionalProperties: false
        attributes:
          type: object
          additionalProperties:
            type: string
            maxLength: 200
          description: Optional attributes
        dev:
          type: boolean
          description: >-
            Indicates if the integration is a development integration; Dev
            integrations run locally
        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
        iconUrl:
          type: string
          description: >-
            URL of the icon of the integration. This is the icon that will be
            displayed in the UI
        readmeUrl:
          type: string
          description: >-
            URL of the readme of the integration. This is the readme that will
            be displayed in the UI
        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.
        verificationStatus:
          type: string
          enum:
            - unapproved
            - pending
            - approved
            - rejected
          description: Status of the integration version verification
        secrets:
          type: array
          items:
            type: string
          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.
      required:
        - id
        - createdAt
        - updatedAt
        - identifier
        - url
        - name
        - version
        - interfaces
        - configuration
        - configurations
        - channels
        - states
        - events
        - actions
        - user
        - entities
        - dev
        - title
        - description
        - iconUrl
        - readmeUrl
        - public
        - visibility
        - verificationStatus
        - secrets
      additionalProperties: false
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````