Ada

Ada subpackage_platformIntegrations API

The subpackage_platformIntegrations API from Ada — 4 operation(s) for subpackage_platformintegrations.

OpenAPI Specification

ada-subpackage-platformintegrations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Data Compliance subpackage_channels subpackage_platformIntegrations API
  version: 1.0.0
servers:
- url: https://example.ada.support
  description: ada
- url: https://example.att.ada.support
  description: att.ada
- url: https://example.maple.ada.support
  description: maple.ada
- url: https://example.ficanex.ada.support
  description: ficanex.ada
- url: https://example.eu.ada.support
  description: eu.ada
tags:
- name: subpackage_platformIntegrations
paths:
  /v2/platform-integrations/:
    get:
      operationId: get-platform-integrations
      summary: List integrations
      description: Get a list of platform integrations owned by your account (e.g. a developer sandbox)
      tags:
      - subpackage_platformIntegrations
      parameters:
      - name: cursor
        in: query
        description: The ID that marks the start or beginning of the returned records
        required: false
        schema:
          type: string
          format: id
      - name: limit
        in: query
        description: The number of records to return
        required: false
        schema:
          type: integer
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Platform integrations
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Platform Integrations_getPlatformIntegrations_Response_200'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
    post:
      operationId: create-platform-integration
      summary: Create an integration
      description: Create an integration. Integrations are created in `development` status by default.
      tags:
      - subpackage_platformIntegrations
      parameters:
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Platform integration created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Platform Integrations_createPlatformIntegration_Response_200'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlatformIntegrationCreateRequest'
  /v2/platform-integrations/{id}:
    patch:
      operationId: update-single-platform-integration
      summary: Update an integration
      description: Update a platform integration. **_Note:_ only integrations in development may be updated. Integrations submitted for publication cannot be updated.**
      tags:
      - subpackage_platformIntegrations
      parameters:
      - name: id
        in: path
        description: The ID of the platform integration to update
        required: true
        schema:
          type: string
          format: id
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Platform integration updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlatformIntegration'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlatformIntegrationUpdateRequest'
  /v2/platform-integrations/{id}/installations/self:
    get:
      operationId: get-platform-integration-installation-self
      summary: Get an installation
      description: Get the platform integration installation associated with the access token. Use this endpoint to get the details of an installation, including the configuration form completed by the admin.
      tags:
      - subpackage_platformIntegrations
      parameters:
      - name: id
        in: path
        description: The ID of the platform integration to fetch installation for
        required: true
        schema:
          type: string
          format: id
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlatformIntegrationInstallation'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
  /v2/platform-integrations/{platform_integration_id}/installations/{installation_id}:
    patch:
      operationId: update-platform-integration-installation
      summary: Update installation status
      description: Update status after installation. An installation can be `complete` or `incomplete`.
      tags:
      - subpackage_platformIntegrations
      parameters:
      - name: platform_integration_id
        in: path
        description: The ID of the platform integration
        required: true
        schema:
          type: string
          format: id
      - name: installation_id
        in: path
        description: The ID of the installation to update
        required: true
        schema:
          type: string
          format: id
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Installation updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlatformIntegrationInstallation'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlatformIntegrationInstallationUpdateRequest'
components:
  schemas:
    PlatformIntegrationInstallationUpdateRequest:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/PlatformIntegrationInstallationUpdateRequestStatus'
          description: The new status of the installation
      title: PlatformIntegrationInstallationUpdateRequest
    PaginationMetadata:
      type: object
      properties:
        next_page_url:
          type:
          - string
          - 'null'
          description: The URL to the next page of results
      title: PaginationMetadata
    PlatformIntegrationTagsItems:
      type: string
      enum:
      - knowledge
      title: PlatformIntegrationTagsItems
    IntegrationCommonFieldsErrorCodes:
      type: object
      properties: {}
      description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
      title: IntegrationCommonFieldsErrorCodes
    Platform Integrations_createPlatformIntegration_Response_200:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the integration
        status:
          type: string
          description: The current state of the integration (development, approved, archived)
        created:
          type: string
          format: date-time
          description: The date the integration was created
        updated:
          type: string
          format: date-time
          description: The date the integration was last updated
        identifier_field_path:
          $ref: '#/components/schemas/IntegrationIdentifierField'
        icon_url:
          $ref: '#/components/schemas/IntegrationIconUrl'
        call_to_action:
          $ref: '#/components/schemas/IntegrationCallToAction'
        name:
          type: string
          description: The name of the integration
        description:
          type: string
          description: A description of what the integration does and how to use it
        author:
          type: string
          description: The name of the integration developer
        contact:
          type: string
          description: The URL or email address where users of the integration can reach out for support
        uninstallation_url:
          type: string
          format: url
          description: The `delete` endpoint that initiates the uninstallation flow for the integration
        oauth_callback_url:
          type: string
          format: url
          description: The `get` endpoint that will be invoked after OAuth authorization
        tags:
          type: array
          items:
            $ref: '#/components/schemas/PlatformIntegrationTagsItems'
          description: A list of tags that describe the type of integration
        error_codes:
          oneOf:
          - $ref: '#/components/schemas/PlatformIntegrationErrorCodes'
          - type: 'null'
          description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
        scopes:
          type: array
          items:
            type: string
          description: The list of OAuth token permissions the integration requests when installed
        configuration_fields:
          $ref: '#/components/schemas/PlatformIntegrationConfigurationFields'
          description: A json-schema describing the settings fields that a user should be presented with when installing the integration
        client_secret:
          type: string
          description: The OAuth client secret for the integration
      required:
      - id
      - status
      - identifier_field_path
      - name
      - description
      - author
      - contact
      - uninstallation_url
      - oauth_callback_url
      - tags
      - scopes
      - configuration_fields
      title: Platform Integrations_createPlatformIntegration_Response_200
    PlatformIntegrationCreateRequestTagsItems:
      type: string
      enum:
      - knowledge
      title: PlatformIntegrationCreateRequestTagsItems
    IntegrationIdentifierField:
      type: string
      description: JMESPath describing which of the fields in `configuration_fields` is the best human-friendly field to use to identify a specific installation (e.g., account name)
      title: IntegrationIdentifierField
    PlatformIntegrationCreateRequestConfigurationFields:
      type: object
      properties: {}
      description: A json-schema describing the settings fields that a user should be presented with when installing the integration
      title: PlatformIntegrationCreateRequestConfigurationFields
    PlatformIntegration:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the integration
        status:
          type: string
          description: The current state of the integration (development, approved, archived)
        created:
          type: string
          format: date-time
          description: The date the integration was created
        updated:
          type: string
          format: date-time
          description: The date the integration was last updated
        identifier_field_path:
          $ref: '#/components/schemas/IntegrationIdentifierField'
        icon_url:
          $ref: '#/components/schemas/IntegrationIconUrl'
        call_to_action:
          $ref: '#/components/schemas/IntegrationCallToAction'
        name:
          type: string
          description: The name of the integration
        description:
          type: string
          description: A description of what the integration does and how to use it
        author:
          type: string
          description: The name of the integration developer
        contact:
          type: string
          description: The URL or email address where users of the integration can reach out for support
        uninstallation_url:
          type: string
          format: url
          description: The `delete` endpoint that initiates the uninstallation flow for the integration
        oauth_callback_url:
          type: string
          format: url
          description: The `get` endpoint that will be invoked after OAuth authorization
        tags:
          type: array
          items:
            $ref: '#/components/schemas/PlatformIntegrationTagsItems'
          description: A list of tags that describe the type of integration
        error_codes:
          oneOf:
          - $ref: '#/components/schemas/PlatformIntegrationErrorCodes'
          - type: 'null'
          description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
        scopes:
          type: array
          items:
            type: string
          description: The list of OAuth token permissions the integration requests when installed
        configuration_fields:
          $ref: '#/components/schemas/PlatformIntegrationConfigurationFields'
          description: A json-schema describing the settings fields that a user should be presented with when installing the integration
      required:
      - id
      - status
      - identifier_field_path
      - name
      - description
      - author
      - contact
      - uninstallation_url
      - oauth_callback_url
      - tags
      - scopes
      - configuration_fields
      title: PlatformIntegration
    PlatformIntegrationInstallationUpdateRequestStatus:
      type: string
      enum:
      - complete
      - incomplete
      description: The new status of the installation
      title: PlatformIntegrationInstallationUpdateRequestStatus
    PlatformIntegrationConfigurationFields:
      type: object
      properties: {}
      description: A json-schema describing the settings fields that a user should be presented with when installing the integration
      title: PlatformIntegrationConfigurationFields
    PlatformIntegrationUpdateRequest:
      type: object
      properties:
        name:
          type: string
          description: The name of the integration
        description:
          type: string
          description: A description of what the integration does and how to use it
        author:
          type: string
          description: The name of the integration developer
        contact:
          type: string
          description: The URL or email address where users of the integration can reach out for support
        uninstallation_url:
          type: string
          format: url
          description: The `delete` endpoint that initiates the uninstallation flow for the integration
        oauth_callback_url:
          type: string
          format: url
          description: The `get` endpoint that will be invoked after OAuth authorization
        tags:
          type: array
          items:
            $ref: '#/components/schemas/IntegrationCommonFieldsTagsItems'
          description: A list of tags that describe the type of integration
        error_codes:
          oneOf:
          - $ref: '#/components/schemas/IntegrationCommonFieldsErrorCodes'
          - type: 'null'
          description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
        scopes:
          type: array
          items:
            type: string
          description: The list of OAuth token permissions the integration requests when installed
        configuration_fields:
          $ref: '#/components/schemas/IntegrationCommonFieldsConfigurationFields'
          description: A json-schema describing the settings fields that a user should be presented with when installing the integration
        identifier_field_path:
          $ref: '#/components/schemas/IntegrationIdentifierField'
        icon_url:
          $ref: '#/components/schemas/IntegrationIconUrl'
        call_to_action:
          $ref: '#/components/schemas/IntegrationCallToAction'
      title: PlatformIntegrationUpdateRequest
    PlatformIntegrationCreateRequest:
      type: object
      properties:
        identifier_field_path:
          $ref: '#/components/schemas/IntegrationIdentifierField'
        icon_url:
          $ref: '#/components/schemas/IntegrationIconUrl'
        call_to_action:
          $ref: '#/components/schemas/IntegrationCallToAction'
        name:
          type: string
          description: The name of the integration
        description:
          type: string
          description: A description of what the integration does and how to use it
        author:
          type: string
          description: The name of the integration developer
        contact:
          type: string
          description: The URL or email address where users of the integration can reach out for support
        uninstallation_url:
          type: string
          format: url
          description: The `delete` endpoint that initiates the uninstallation flow for the integration
        oauth_callback_url:
          type: string
          format: url
          description: The `get` endpoint that will be invoked after OAuth authorization
        tags:
          type: array
          items:
            $ref: '#/components/schemas/PlatformIntegrationCreateRequestTagsItems'
          description: A list of tags that describe the type of integration
        error_codes:
          oneOf:
          - $ref: '#/components/schemas/PlatformIntegrationCreateRequestErrorCodes'
          - type: 'null'
          description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
        scopes:
          type: array
          items:
            type: string
          description: The list of OAuth token permissions the integration requests when installed
        configuration_fields:
          $ref: '#/components/schemas/PlatformIntegrationCreateRequestConfigurationFields'
          description: A json-schema describing the settings fields that a user should be presented with when installing the integration
      required:
      - identifier_field_path
      - name
      - description
      - author
      - contact
      - uninstallation_url
      - oauth_callback_url
      - tags
      - scopes
      - configuration_fields
      title: PlatformIntegrationCreateRequest
    PlatformIntegrationCreateRequestErrorCodes:
      type: object
      properties: {}
      description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
      title: PlatformIntegrationCreateRequestErrorCodes
    PlatformIntegrationErrorCodes:
      type: object
      properties: {}
      description: An object containing error codes and their corresponding error message the integration may return to the OAuth failure page to be displayed
      title: PlatformIntegrationErrorCodes
    PlatformIntegrationInstallationConfiguration:
      type: object
      properties: {}
      description: The configuration settings for the integration
      title: PlatformIntegrationInstallationConfiguration
    IntegrationCallToAction:
      type:
      - string
      - 'null'
      description: The call to action text
      title: IntegrationCallToAction
    Platform Integrations_getPlatformIntegrations_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/PlatformIntegration'
        meta:
          $ref: '#/components/schemas/PaginationMetadata'
      title: Platform Integrations_getPlatformIntegrations_Response_200
    ErrorsErrorsItems:
      type: object
      properties:
        type:
          type: string
          description: The error type
        message:
          type: string
          description: The error message
        details:
          type:
          - string
          - 'null'
          description: Extra information about the error
      required:
      - type
      - message
      title: ErrorsErrorsItems
    IntegrationIconUrl:
      type:
      - string
      - 'null'
      format: url
      description: The URL of the icon that should be displayed with your integration
      title: IntegrationIconUrl
    IntegrationCommonFieldsConfigurationFields:
      type: object
      properties: {}
      description: A json-schema describing the settings fields that a user should be presented with when installing the integration
      title: IntegrationCommonFieldsConfigurationFields
    Errors:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorsErrorsItems'
          description: A list of errors
      required:
      - errors
      title: Errors
    IntegrationCommonFieldsTagsItems:
      type: string
      enum:
      - knowledge
      title: IntegrationCommonFieldsTagsItems
    PlatformIntegrationInstallation:
      type: object
      properties:
        id:
          type: string
          format: id
          description: The unique identifier for the integration installation
        platform_integration_id:
          type: string
          format: id
          description: The unique identifier for the integration
        created:
          type: string
          format: date-time
          description: The date and time the installation was created
        updated:
          type: string
          format: date-time
          description: The date and time the installation was last updated
        configuration:
          $ref: '#/components/schemas/PlatformIntegrationInstallationConfiguration'
          description: The configuration settings for the integration
        status:
          type: string
          description: The current state of the integration installation (incomplete, complete)
      title: PlatformIntegrationInstallation
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer