Swagger - OAS 3.0

openapi: 3.0.0
info:
  title: Partners Services API
  contact: {}
  version: '1.0'
servers:
  - url: 'https://{host}/partners/services/api'
    variables:
      host:
        default: api-services-demo.rochedcplatform-sandbox.com
        description: Environment where the service is implemented
paths:
  /v1/token:
    post:
      tags:
        - v1
      summary: Get Token
      description: The purpose of this endpoint is to get temporary Token required to retrieve files in S3 access points
      operationId: GetToken
      parameters:
        - name: org_id
          in: header
          description: Organization ID
          required: true
          style: simple
          schema:
            type: string
        - name: x-origin-request-id
          in: header
          description: Request ID
          style: simple
          schema:
            type: string
      responses:
        '200':
          description: Returns temporary token and resources ARNs
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1Tokenresponse'
        '401':
          description: Unauthorized
          headers: {}
          content: {}
        '403':
          description: 'Not Authorized, organization id not valid'
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1Tokenresponse403'
        '404':
          description: Not Found
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1Tokenresponse404'
        '500':
          description: Internal Server Error
          headers: {}
          content:
            application/json:
              schema:
                type: string
      deprecated: false
  /v1/notification/ack:
    post:
      tags:
        - v1
      summary: Notification ACK
      operationId: NotificationACK
      parameters:
        - name: receiptHandle
          in: header
          description: Identifier of the message
          required: true
          style: simple
          schema:
            type: string
            example: EBt7GUE0VKivFNMe8B8Ds7LFNBZ
        - name: org_id
          in: header
          description: Organization ID
          required: true
          style: simple
          schema:
            type: string
        - name: x-origin-request-id
          in: header
          description: Request ID
          style: simple
          schema:
            type: string
      responses:
        '200':
          description: Message was notified successfully.
          headers: {}
          content: {}
        '400':
          description: Bad request
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1NotificationAckresponse400'
        '403':
          description: 'Not Authorized, organization id not valid'
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1NotificationAckresponse403'
        '500':
          description: Internal Server Error
          headers: {}
          content:
            application/json:
              schema:
                type: string
      deprecated: false
components:
  schemas:
    Content-Type:
      title: Content-Type
      enum:
        - application/json
      type: string
    V1Tokenresponse:
      title: V1Tokenresponse
      required:
        - awsCredentials
        - awsResources
      type: object
      properties:
        awsCredentials:
          $ref: '#/components/schemas/AwsCredentials'
        awsResources:
          type: array
          items:
            type: string
          description: ''
      example:
        awsCredentials:
          AccessKeyId: ASIAQJARWRBBSH
          SecretAccessKey: MDcJAurLlByzmeAPMszWkd6Xy12ZioCZK
          SessionToken: FwoGZXIvYXdzEEkaDDeTFvNtX7xj/AAvgCLIAXte7G6fwnc8O91oifBOhZO/i8HQ1eWKoxO5KW2AUEHLt8dn2Q5io0UgsjM
          Expiration: '2020-11-12T08:49:00.000Z'
        awsResources:
          - 'arn:aws:s3:us-east-1:019364481091:accesspoint/example-emr-integration-1.1.1.1.1-accesspoint'
    AwsCredentials:
      title: AwsCredentials
      required:
        - AccessKeyId
        - SecretAccessKey
        - SessionToken
        - Expiration
      type: object
      properties:
        AccessKeyId:
          type: string
        SecretAccessKey:
          type: string
        SessionToken:
          type: string
        Expiration:
          type: string
      example:
        AccessKeyId: ASIAQJARWRBBSH
        SecretAccessKey: MDcJAurLlByzmeAPMszWkd6Xy12ZioCZK
        SessionToken: FwoGZXIvYXdzEEkaDDeTFvNtX7xj/AAvgCLIAXte7G6fwnc8O91oifBOhZO/i8HQ1eWKoxO5KW2AUEHLt8dn2Q5io0UgsjM
        Expiration: '2020-11-12T08:49:00.000Z'
    V1Tokenresponse404:
      title: V1Tokenresponse404
      required:
        - error
      type: object
      properties:
        error:
          type: string
      example:
        error: No roles or resources were found for this client.
    V1Tokenresponse403:
      title: V1Tokenresponse403
      required:
        - status
        - detail
      type: object
      properties:
        status:
          type: string
        detail:
          type: string
      example:
        status: error
        detail: 'Validation policy error: Certificate validation failed.'
    Issue:
      title: Issue
      required:
        - severity
        - code
        - details
      type: object
      properties:
        severity:
          type: string
        code:
          type: string
        details:
          $ref: '#/components/schemas/Details'
      example:
        severity: error
        code: invalid
        details:
          text: The input receipt handle "BQEBt7GUE0+VK" is not a valid receipt handle.
    Details:
      title: Details
      required:
        - text
      type: object
      properties:
        text:
          type: string
      example:
        text: The input receipt handle "BQEBt7GUE0+VK" is not a valid receipt handle.
    V1NotificationAckresponse400:
      title: V1NotificationAckresponse400
      required:
        - resourceType
        - issue
      type: object
      properties:
        resourceType:
          type: string
        issue:
          type: array
          items:
            $ref: '#/components/schemas/Issue'
          description: ''
      example:
        resourceType: OperationOutcome
        issue:
          - severity: error
            code: invalid
            details:
              text: The input receipt handle "BQEBt7GUE0+VK" is not a valid receipt handle.
    V1NotificationAckresponse403:
      title: V1NotificationAckresponse403
      required:
        - status
        - detail
      type: object
      properties:
        status:
          type: string
        detail:
          type: string
      example:
        status: error
        detail: 'Validation policy error: Certificate validation failed.'
  securitySchemes:
    client_id:
      type: apiKey
      description: Public identifier for apps generated by API Manager
      name: client_id
      in: header
    client_secret:
      type: apiKey
      description: Client related secret known only to the application and the authorization server
      name: client_secret
      in: header
security:
  - client_id: []
    client_secret: []
tags:
  - name: v1
    description: ''