openapi: "3.0.1"
info:
  title: "CumulusAggregatorDashboardApi"
  version: "1.0"
servers:
- url: "https://aggregator.smartcumulus.org/"
  variables:
    basePath:
      default: "/"
paths:
  /metadata:
    get:
      security:
      - api_key: []
    options:
      summary: "CORS support"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /data-packages/{data_package_id}/chart:
    get:
      parameters:
      - name: "data_package_id"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "column"
        in: "query"
        required: true
        schema:
          type: "string"
      - name: "filters"
        in: "query"
        schema:
          type: "string"
      - name: "stratifier"
        in: "query"
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      parameters:
      - name: "data_package_id"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "200 response"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /distribute:
    post:
      security:
      - api_key: []
    options:
      responses:
        "200":
          description: "200 response"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /metadata/{site}/{study}:
    get:
      parameters:
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /metadata/{site}/{study}/{data_package}/{version}:
    get:
      parameters:
      - name: "data_package"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "version"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "data_package"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "version"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /study-periods/{site}/{study}:
    get:
      parameters:
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /data-packages:
    get:
      parameters:
      - name: "name"
        in: "query"
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      responses:
        "200":
          description: "200 response"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /data-packages/{data_package_id}:
    get:
      parameters:
      - name: "data_package_id"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      parameters:
      - name: "data_package_id"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "200 response"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /study-periods/{site}:
    get:
      parameters:
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /metadata/{site}/{study}/{data_package}:
    get:
      parameters:
      - name: "data_package"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "data_package"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "study"
        in: "path"
        required: true
        schema:
          type: "string"
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /from-parquet:
    get:
      security:
      - api_key: []
    options:
      responses:
        "200":
          description: "200 response"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /metadata/{site}:
    get:
      parameters:
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      security:
      - api_key: []
    options:
      summary: "CORS support"
      parameters:
      - name: "site"
        in: "path"
        required: true
        schema:
          type: "string"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
  /study-periods:
    get:
      security:
      - api_key: []
    options:
      summary: "CORS support"
      responses:
        "200":
          description: "Default response for CORS method"
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: "string"
            Access-Control-Allow-Methods:
              schema:
                type: "string"
            Access-Control-Allow-Headers:
              schema:
                type: "string"
          content: {}
      security:
      - api_key: []
components:
  securitySchemes:
    api_key:
      type: "apiKey"
      name: "x-api-key"
      in: "header"
