openapi: 3.2.0 info: title: IO.Common Data Jobs API version: '1.0' security: - OAuth2: [] tags: - name: Data jobs paths: /v1/DataJobs: get: tags: - Data jobs summary: Get all data-transfer jobs (import and export) created by the logged-in user. operationId: GetDataJobs parameters: - name: Filter in: query schema: type: string - name: Page in: query schema: type: integer format: int32 - name: PageSize in: query schema: type: integer format: int32 - name: SortColumn in: query schema: type: string - name: SortOrder in: query schema: type: string - name: direction in: query schema: $ref: '#/components/schemas/BulkJobDirection' - name: Account in: query description: Account schema: title: Account type: int responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/BulkJobStatusResponsePagedResult' '401': description: Unauthorized '403': description: Forbidden security: - OAuth2: - io.common /v1/DataJobs/{jobId}/download: get: tags: - Data jobs summary: Download the result xlsx of a completed export job owned by the logged-in user. operationId: DownloadDataJobResult parameters: - name: jobId in: path required: true schema: type: string format: uuid - name: Account in: query description: Account schema: title: Account type: int responses: '200': description: Success content: application/json: schema: type: string format: binary '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ApiErrorResponse' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/ApiErrorResponse' '410': description: Client Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorResponse' '401': description: Unauthorized '403': description: Forbidden security: - OAuth2: - io.common components: schemas: ApiErrorResponse: type: object properties: errors: type: - array - 'null' items: $ref: '#/components/schemas/Error' additionalProperties: false BulkJobStatusResponsePagedResult: type: object properties: pageSize: type: integer format: int32 readOnly: true page: type: integer format: int32 readOnly: true totalCount: type: integer format: int32 readOnly: true filteredCount: type: integer format: int32 readOnly: true data: type: - array - 'null' items: $ref: '#/components/schemas/BulkJobStatusResponse' readOnly: true additionalProperties: false Error: type: object properties: code: type: - string - 'null' message: type: - string - 'null' additionalProperties: false BulkJobStatusResponse: type: object properties: jobId: type: string format: uuid jobType: type: - string - 'null' status: type: - string - 'null' fileName: type: - string - 'null' totalItems: type: integer format: int32 totalBatches: type: integer format: int32 processedBatches: type: integer format: int32 failedBatches: type: integer format: int32 errors: type: - array - 'null' items: type: string createdAt: type: string format: date-time completedAt: type: - string - 'null' format: date-time resultAvailable: type: boolean resultFileName: type: - string - 'null' additionalProperties: false BulkJobDirection: enum: - 0 - 1 type: integer format: int32 securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://identity.scanbro.com/connect/authorize tokenUrl: https://identity.scanbro.com/connect/token scopes: io.common: default scope