openapi: 3.0.1
info:
  title: BTX Entity Extension Callback API Service
  version: 1.17.0-CR1
servers:
- description: ''
  url: https://api.uat.btx.fr.banqup.com/entitycallback
- description: ''
  url: https://api.uat.btx.eu.banqup.com/entitycallback
paths:
  /v1/spaces/{spaceId}/extensions/{extensionId}/deactivate:
    post:
      tags:
      - Extensions
      summary: Deactivate extension
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Deactivate extension <br/> Scope: space_foundation_manage_extensions"
      operationId: deactivateExtension
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to deactivate this extension.
        '404':
          description: Space or extension not found.
        default:
          description: Any other HTTP status code returned by the extension's deactivation
            callback. The content type and schema can vary.
      security:
      - oauth2:
        - space_foundation_manage_extensions
  /v1/spaces/{spaceId}/extensions/{extensionId}/configure:
    post:
      tags:
      - Extensions
      summary: Configure extension
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Configure extension <br/> Scope: space_foundation_manage_extensions"
      operationId: configure
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigureRequest'
        required: true
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to configure this extension.
        '404':
          description: Space or extension not found.
        '422':
          description: Invalid settings in post body (e.g. array instead of object).
        '503':
          description: Fail to call configure proxy.
      security:
      - oauth2:
        - space_foundation_manage_extensions
  /v1/spaces/{spaceId}/extensions/{extensionId}/clients/{clientId}/deactivate:
    post:
      tags:
      - Extensions
      summary: Deactivate extension client
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Deactivate extension client <br/> Scope: []"
      operationId: deactivateExtensionClient
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: clientId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to deactivate this extension client.
        '404':
          description: Space, extension or client not found.
  /v1/spaces/{spaceId}/extensions/{extensionId}/clients/{clientId}/configure:
    post:
      tags:
      - Extensions
      summary: Configure extension client
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Configure extension client <br/> Scope: []"
      operationId: configureExtensionClient
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: clientId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigureRequest'
        required: true
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to configure this extension client.
        '404':
          description: Space, extension or client not found.
        '422':
          description: Invalid settings in post body (e.g. array instead of object).
        '503':
          description: Fail to call configure proxy.
  /v1/spaces/{spaceId}/extensions/{extensionId}/clients/{clientId}/activate:
    post:
      tags:
      - Extensions
      summary: Activate extension client
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Activate extension client <br/> Scope: []"
      operationId: activateExtensionClient
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: clientId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to activate this extension client.
        '404':
          description: Space, extension or client not found.
  /v1/spaces/{spaceId}/extensions/{extensionId}/activate:
    post:
      tags:
      - Extensions
      summary: Activate extension
      description: "<div class='my-preview'><span>Preview: The API is in development
        or testing phases and the interface could still change slightly.</span></div>
        <br/> Activate extension <br/> Scope: space_foundation_manage_extensions"
      operationId: activateExtension
      parameters:
      - name: spaceId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: extensionId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Success
        '403':
          description: You do not have permission to activate this extension.
        '404':
          description: Space or extension not found.
        default:
          description: Any other HTTP status code returned by the extension's activation
            callback. The content type and schema can vary.
      security:
      - oauth2:
        - space_foundation_manage_extensions
components:
  schemas:
    ConfigureRequest:
      required:
      - settings
      type: object
      properties:
        settings:
          minProperties: 1
          type: object
          additionalProperties:
            type: object
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.uat.btx.fr.banqup.com/oauth2/client_credential/gettoken
          scopes:
            info: Scopes are endpoint-specific, see each endpoint for required scope.
        authorizationCode:
          authorizationUrl: https://api.uat.btx.fr.banqup.com/oauth2/auth
          tokenUrl: https://api.uat.btx.fr.banqup.com/oauth2/token
          scopes:
            info: Scopes are endpoint-specific, see each endpoint for required scope.
