swagger: '2.0'
info:
  version: ''
  title: aggregator
host: haleconnect.com
schemes:
- https
basePath: /reports
paths:
  /health:
    get:
      tags:
      - Service
      summary: Perform a basic health check on the service
      responses:
        '200':
          description: The service is healthy
          schema:
            type: object
          default:
            description: The service is not healthy
            schema:
              type: object
  /validation/reports/{id}/{index}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: index
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /validation/current/{dataset}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: dataset
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /validation/current/{dataset}/{category}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: dataset
        in: path
        required: true
        schema:
          type: string
      - name: category
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /validation/any/{dataset}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: dataset
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /validation/any/{dataset}/{category}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: dataset
        in: path
        required: true
        schema:
          type: string
      - name: category
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /usage:
    post:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: body
        in: body
        required: true
        schema:
          type: object
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /usage/{orgId}:
    post:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: orgId
        in: path
        required: true
        schema:
          type: string
      - name: body
        in: body
        required: true
        schema:
          type: object
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/agents:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/download:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/agents/download:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wms:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wfs:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wms/agents:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wfs/agents:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/capabilities:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/capabilities/download:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/combined:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/combined/download:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wms/capabilities:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/wfs/capabilities:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/agents/wms:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
  /ows/usage/{publication}/agents/wfs:
    get:
      tags:
      - Aggregation
      produces:
      - application/json
      - text/csv
      parameters:
      - name: publication
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful request
          default:
            $ref: '#/responses/Error'
parameters: {}
definitions:
  Feedback:
    type: object
    required:
    - code
    - message
    - error
    properties:
      code:
        type: integer
        format: int32
      message:
        type: string
      error:
        type: boolean
responses:
  Error:
    description: Internal error processing request
    schema:
      $ref: '#/definitions/Feedback'
