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

# Upload connector to integration



## OpenAPI

````yaml /api-reference/membrane-api.json post /integrations/{id}/upload-connector
openapi: 3.0.0
info:
  title: Membrane API
  description: API documentation for Membrane Engine
  version: '1.0'
  contact: {}
servers:
  - url: https://api.getmembrane.com
security:
  - bearer: []
tags: []
paths:
  /integrations/{id}/upload-connector:
    post:
      tags:
        - Integrations
      summary: Upload connector to integration
      operationId: uploadIntegrationConnector
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationApiResponseDto'
components:
  schemas:
    IntegrationApiResponseDto:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          description: >-
            Display name. Always present in API responses (filled by API if not
            set on create).
        uuid:
          description: >-
            Stable unique identifier (UUID). Can be provided on create;
            otherwise generated. Must be unique across elements of this type.
          type: string
        key:
          description: >-
            Stable key for referencing the element (e.g. in selectors). Unique
            per (parent, integration) scope. Generated from name if not provided
            on create.
          type: string
        description:
          description: Optional human-readable description.
          type: string
        meta:
          description: Optional key-value metadata.
          type: object
          additionalProperties:
            type: object
        state:
          description: >-
            Current lifecycle or health state (e.g. READY, SETUP_FAILED,
            CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and
            validation.
          type: string
          enum:
            - BUILDING
            - CLIENT_ACTION_REQUIRED
            - CONFIGURATION_ERROR
            - SETUP_FAILED
            - READY
            - DISCONNECTING
        errors:
          description: Validation or setup errors when state is not READY.
          type: array
          items:
            $ref: '#/components/schemas/IntegrationApiResponseDto__schema0'
        revision:
          description: >-
            Opaque revision token; changes on each update. Used for optimistic
            concurrency.
          type: string
        createdAt:
          description: ISO date when the element was created.
          type: string
        updatedAt:
          description: ISO date when the element was last updated.
          type: string
        archivedAt:
          type: string
        isDeactivated:
          type: boolean
        isReadOnly:
          description: >-
            When true, the element cannot be modified (e.g. published package
            elements or elements from another workspace).
          type: boolean
        logoUri:
          type: string
        connectorId:
          type: string
        connectorVersion:
          type: string
        oAuthCallbackUri:
          type: string
        parameters:
          type: object
        hasMissingParameters:
          type: boolean
        hasDocumentation:
          type: boolean
        hasOperations:
          type: boolean
        operationsCount:
          type: number
        hasData:
          type: boolean
        dataCollectionsCount:
          type: number
        hasEvents:
          type: boolean
        eventsCount:
          type: number
        hasGlobalWebhooks:
          type: boolean
        hasUdm:
          type: boolean
        isTest:
          type: boolean
        externalAppId:
          type: string
        authType:
          type: string
          enum:
            - integration-app-token
            - membrane-token
            - oauth2
            - oauth1
            - client-credentials
            - proxy
        optionsConfig:
          type: object
          additionalProperties:
            type: object
            properties:
              disabled:
                type: boolean
              parameters:
                type: object
                additionalProperties:
                  type: object
        connection:
          type: object
          properties:
            id:
              type: string
              description: >-
                Internal database ID of the element. Assigned by the API; unique
                per element.
            name:
              type: string
            userId:
              type: string
            tenantId:
              type: string
            type:
              type: string
              enum:
                - connector
                - mcp
            key:
              type: string
            isTest:
              type: boolean
            connected:
              type: boolean
            disconnected:
              description: Use `connected` instead.
              type: boolean
              deprecated: true
            isDefunct:
              type: boolean
            state:
              type: string
              enum:
                - BUILDING
                - CLIENT_ACTION_REQUIRED
                - CONFIGURATION_ERROR
                - SETUP_FAILED
                - READY
                - DISCONNECTING
            errors:
              type: array
              items:
                $ref: '#/components/schemas/IntegrationApiResponseDto__schema0'
            requestError:
              $ref: '#/components/schemas/IntegrationApiResponseDto__schema0'
            error:
              $ref: '#/components/schemas/IntegrationApiResponseDto__schema0'
              description: Use `requestError` and `errors` instead.
              deprecated: true
            integrationId:
              type: string
            connectorId:
              type: string
            externalAppId:
              type: string
            connectorVersion:
              type: string
            authOptionKey:
              type: string
            createdAt:
              type: string
            updatedAt:
              type: string
            lastActiveAt:
              type: string
            nextCredentialsRefreshAt:
              type: string
            nextRetryTimestamp:
              type: string
            retryAttempts:
              type: number
            canTest:
              type: boolean
            canRefreshCredentials:
              type: boolean
            archivedAt:
              type: string
            isDeactivated:
              type: boolean
            meta:
              type: object
              additionalProperties:
                type: object
            buildingAgentSessionId:
              description: >-
                Session ID for building the element via intent-based endpoints
                (create/update with intent). Present when state is BUILDING.
              type: string
            clientAction:
              description: >-
                Action the client must perform to advance this connection.
                Present if and only if state is CLIENT_ACTION_REQUIRED.
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - connect
                    - provide-input
                description:
                  type: string
                uiUrl:
                  type: string
                agentInstructions:
                  type: string
                handoffAgentInstructions:
                  type: string
              required:
                - type
                - description
          required:
            - id
            - name
            - userId
            - createdAt
            - updatedAt
        spec:
          type: object
        appUri:
          type: string
        isConnected:
          type: boolean
      required:
        - name
    IntegrationApiResponseDto__schema0:
      type: object
      properties:
        type:
          type: string
          enum:
            - bad_request
            - connection
            - configuration
            - dependency_error
            - flow_run
            - flow_instance_setup
            - concurrency
            - internal
            - action_run
            - action_instance_setup
            - unit_run
            - custom_code
            - insufficient_credit
            - openrouter_not_configured
        key:
          type: string
        message:
          type: string
        data:
          type: object
        stack:
          type: object
        causedByError:
          $ref: '#/components/schemas/IntegrationApiResponseDto__schema0'
        logs:
          type: array
          items:
            type: object
      required:
        - message
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````