All Downloads are FREE. Search and download functionalities are using the official Maven repository.

docs._data.swagger.yaml Maven / Gradle / Ivy

There is a newer version: 2.0.1-alpha.8
Show newest version
swagger: '2.0'
info:
  title: 52°North Series API
  description: Thin Web binding API to access series data
  version: 2.0.0
host: example.org
schemes:
  - https
basePath: /api/v1
consumes:
  - application/json
produces:
  - application/json
paths:
  /:
    get:
      summary: Available endpoints.
      tags:
        - general
      description: >
        A (static) collection of endpoints available from this API. Each includes a relative path and a short description.
      responses:
        '200':
          description: A collection of API endpoints
  /search:
    get:
      summary: A simple search.
      tags:
        - general
      description: |
        A simple search over all resource's labels over all available endpoints. Note that the searching respects the current locale being selected.
      parameters:
        - name: q
          in: query
          description: Term which shall match (case insensitive) a resource's label
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
      responses:
        '200':
          description: A collection of search results
          
  /platforms:
    get:
      summary: Available Platforms
      tags:
        - platform
        - v2.0
      description: |
        A collection of available platforms. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/geometryTypesParam'
        - $ref: '#/parameters/platformGeometriesParam'
        - $ref: '#/parameters/observedGeometriesParam'
        - $ref: '#/parameters/valueTypesParam'
        - $ref: '#/parameters/crsParam'
        - $ref: '#/parameters/bboxParam'
        - $ref: '#/parameters/nearParam'
      responses:
        '200':
          description: A collection of platforms
        '400':
          description: A query parameter does not match expected format
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  '/platforms/{platformId}':
    get:
      summary: Gets a particular platform
      tags:
        - platform
        - v2.0
      description: |
        Full view of a platform instance. A platform encodes a POINT geometry which is the actual location for `stationary` platforms and the last detected location for `mobile` platforms.
      parameters:
        - name: platformId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/crsParam'
      responses:
        '200':
          description: An expanded item
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/platforms/{platformId}/extras':
    get:
      summary: Gets extra infos for platform
      tags:
        - platform
        - v2.0
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each dataset.


        You can query just the ones you are interested in by appending the `fields` query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: platformId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
          
  /stations:
    get:
      summary: Available Stations
      tags:
        - station
      description: |
        A collection of available stations. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/crsParam'
        - $ref: '#/parameters/bboxParam'
        - $ref: '#/parameters/nearParam'
      responses:
        '200':
          description: A collection of stations
        '400':
          description: A query parameter does not match expected format
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/stations/{stationId}':
    get:
      summary: Gets a particular station
      tags:
        - station
      description: |
        Full data view of a station. A station is a [GeoJSON point geometry](https://www.rfc-editor.org/info/rfc7946) which encodes available metadata in its `properties` member.
      parameters:
        - name: stationId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/crsParam'
      responses:
        '200':
          description: An expanded item
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/stations/{stationId}/extras':
    get:
      summary: Gets extra infos for station
      tags:
        - station
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each dataset.


        You can query just the ones you are interested in by appending the `fields` query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: stationId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
            
  /datasets:
    get:
      summary: Gets available datasets
      tags:
        - dataset
        - v2.0
      description: |
        A collection of available datasets. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/geometryTypesParam'
        - $ref: '#/parameters/platformGeometriesParam'
        - $ref: '#/parameters/observedGeometriesParam'
        - $ref: '#/parameters/valueTypesParam'
        - $ref: '#/parameters/crsParam'
        - $ref: '#/parameters/bboxParam'
        - $ref: '#/parameters/nearParam'
      responses:
        '200':
          description: A collection of datasets
        '400':
          description: A query parameter does not match expected format
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  '/datasets/{datasetId}':
    get:
      summary: Gets a particular dataset
      tags:
        - dataset
        - v2.0
      description: |
        Full view of a dataset instance. All relevant relations (parameters, unit, platform, etc.) are inlined. If any additional information is listed in the `extras` array member it can be retrieved via `/datasets/{datasetId}/extras` (see next).
      parameters:
        - name: datasetId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  '/datasets/{datasetId}/extras':
    get:
      summary: Gets extra infos for dataset
      tags:
        - dataset
        - v2.0
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each dataset.


        You can query just the ones you are interested in by appending the `fields` query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: datasetId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  '/datasets/{datasetId}/{interval}':
    get:
      summary: Gets extra infos for dataset
      tags:
        - dataset
        - v2.0
      description: >
        Returns a pre-rendered image of a dataset for the given interval. Allowed interval values are
        
        * `lastDay.png`
        
        * `lastWeek.png`
        
        * `lastMonth.png`
        
        
        Datasets of type `quantity` can be pre-rendered by a regular task. If pre-rendering is enabled for a given datasets depends on the API provider as it is a configuration issue.
      parameters:
        - name: datasetId
          in: path
          required: true
          type: string
        - name: interval
          in: path
          required: true
          type: string
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: In case no prerendered image available (or is currently being rendered)
            
  '/datasets/{datasetId}/data':
    get:
      summary: Gets data of a dataset
      tags:
        - dataset
        - v2.0
      description: >
        Gets data for a given `timespan` filter. Implementations may limit the maximum amount of time intervals a client can query in one request. 


        What Mime-Types are supported depends on the `valueType`. For example `quantity` observations can be drawn as a timeseries chart 
        (i.e. either `image/png` or `application/pdf`). Supported Mime-Types are listed for each `valueType` when querying 
        `/service/{serviceId}?valueTypes=all` produces:
        
          - `application/json`
          - `image/png`
          - `text/csv`
          - `application/pdf`
          - `application/zip`

        
        Data can be classified into result times if these differ from actual `timestamp`. For example, this is the case
        for forecast data which might re-calculate (different result times) a given timespan. The `data` can be grouped 
        by using `resultTimes` parameter. When `resultTimes` parameter is missing, data of the oldest result is being 
        returned.

      parameters:
        - name: datasetId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/timespanParam'
        - $ref: '#/parameters/resultTimesParam'
        - $ref: '#/parameters/showTimeIntervalsParam'
      responses:
        '200':
          description: Data for a given `timespan` in a requested output format
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  /timeseries:
    get:
      summary: Gets available timeseries
      tags:
        - timeseries
      description: |
        A collection of timeseries (i.e. datasets of type `quantity` which have been observed at `stationary`, `insitu` platforms having a 0-dimensional (POINT) location geometry. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
        - $ref: '#/parameters/crsParam'
        - $ref: '#/parameters/bboxParam'
        - $ref: '#/parameters/nearParam'
      responses:
        '200':
          description: A collection of timeseries
  '/timeseries/{timeseriesId}':
    get:
      summary: Gets a particular timeseries
      tags:
        - timeseries
      description: |
        Full view of a timeseries instance. All relevant relations (parameters, unit, station, etc.) are inlined. If any additional information is listed in the `extras` array member it can be retrieved via `/datasets/{datasetId}/extras` (see next).
        
        For backward compatibility reasons metadata about `renderingHints` and `statusIntervals` are inlined here as well. However, those are listed within `extra` infos to make it consistent.
      parameters:
        - name: timeseriesId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
      responses:
        '200':
          description: An expanded item
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/timeseries/{timeseriesId}/extras':
    get:
      summary: Gets extra infos for timeseries
      tags:
        - timeseries
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each timeseries.


        You can query just the ones you are interested in by appending the `fields`query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: timeseriesId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/timeseries/{timeseriesId}/getData':
    get:
      summary: Gets data of a timeseries
      tags:
        - timeseries
      description: >
        Gets data for a given `timespan` filter. Implementations may limit the maximum amount of time intervals a client can query in one request. 


        This operation does only return data of `quantity` dataset types from`stationary`, `insitu` platforms having a 0-dimensional location geometry (`station`). Supported Mime-Types are `application/json`, `image/png`, `application/pdf`, and `text/csv`.
      produces:
        - application/json
        - image/png
        - text/csv
        - application/pdf
        - application/zip
      parameters:
        - name: timeseriesId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/timespanParam'
        - $ref: '#/parameters/widthParam'
        - $ref: '#/parameters/heightParam'
        - $ref: '#/parameters/legendParam'
        - $ref: '#/parameters/gridParam'
        - $ref: '#/parameters/generalizeParam'
        - $ref: '#/parameters/formatParam'
        - $ref: '#/parameters/base64Param'
        - $ref: '#/parameters/showTimeIntervalsParam'
      responses:
        '200':
          description: Data for a given `timespan` in a requested output format
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
  /geometries:
    get:
      summary: A collection of available geometries
      tags:
        - geometry
        - v2.0
      description: |
        All available geometries instances. Possible geometry types are 
        
        * `site`, i.e. `stationary` platform locations (fixed) 
        
        * `track`, i.e. trajectories made by a `mobile` platform
        
        * `static`, i.e. a fixed geometry observed by a `remote` platform
        
        * `dynamic`, i.e. geometry observed by a `remote` platform which changes over time
      parameters:
        - $ref: '#/parameters/geometryTypesParam'
        - $ref: '#/parameters/platformGeometriesParam'
        - $ref: '#/parameters/observedGeometriesParam'
        - $ref: '#/parameters/crsParam'
        - $ref: '#/parameters/bboxParam'
        - $ref: '#/parameters/nearParam'
      responses:
        '200':
          description: A collection of geometries
  /geometries/{geometryId}:
    get:
      summary: Gets a particular geometry
      tags:
        - geometry
        - v2.0
      description: |
        Full view of a geometry instance. Encodes as full [GeoJSON geometry](https://www.rfc-editor.org/info/rfc7946).
      parameters:
        - name: geometryId
          in: path
          required: true
          type: string
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/crsParam'
      responses:
        '200':
          description: An expanded item
        '400':
          description: A query parameter does not match expected format
          schema:
            $ref: '#/definitions/Error'
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
          
  /services:
    get:
      summary: Get available service instances
      tags:
        - parameter
      description: >
        All available service instances. For backwards compatibility reasons the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of services
  '/services/{serviceId}':
    get:
      summary: Gets an instance
      tags:
        - parameter
      description: |
        Gets a service instance.
        
        
        Depending on what dataset types are available, differing output formats are available. For example, `image/png` (render as chart) or `application/pdf` (generating a report).
      parameters:
        - name: serviceId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/services/{serviceId}/extras':
    get:
      summary: Gets extra infos for a service
      tags:
        - parameter
      description: >
        Lists extra metadata which may vary from instance to instance. The available  metadata fields are listed in the `extras` metadata field of each service.


        You can query just the ones you are interested in by appending the `fields`  query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: serviceId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  /categories:
    get:
      summary: Gets available categories
      tags:
        - parameter
      description: >
        All available category instances. For backwards compatibility reasons, the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of categories
  '/categories/{categoryId}':
    get:
      summary: Gets a catefory instance
      tags:
        - parameter
      description: |
        Gets a category instance.
      parameters:
        - name: categoryId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/categories/{categoryId}/extras':
    get:
      summary: Gets extra infos for a category
      tags:
        - parameter
      description: >
        Lists extra metadata which may vary from instance to instance. The available  metadata fields are listed in the `extras` metadata field of each category.


        You can query just the ones you are interested in by appending the `fields`  query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: categoryId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  /phenomena:
    get:
      summary: Get available phenomenon instances
      tags:
        - parameter
      description: >
        All available phenomenon instances. For backwards compatibility reasons, the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of phenomena
  '/phenomena/{phenomenonId}':
    get:
      summary: Gets a phenomenon instance
      tags:
        - parameter
      description: |
        Gets a phenomenon instance
      parameters:
        - name: phenomenonId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/phenomena/{phenomenonId}/extras':
    get:
      summary: Gets extra infos for a phenomenon
      tags:
        - parameter
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each phemomenon.


        You can query just the ones you are interested in by appending the `fields`  query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: phenomenonId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  /procedure:
    get:
      summary: Get available procedure instances
      tags:
        - parameter
      description: >
        All available procedure instances. For backwards compatibility reasons, the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of procedures
  '/procedures/{procedureId}':
    get:
      summary: Gets a procedure instance
      tags:
        - parameter
      description: |
        Gets a procedure instance.
      parameters:
        - name: procedureId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/procedures/{procedureId}/extras':
    get:
      summary: Gets extra infos for a procedure
      tags:
        - parameter
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each procedure.


        You can query just the ones you are interested in by appending the `fields`  query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: procedureId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  /offerings:
    get:
      summary: Get available offerings instances
      tags:
        - parameter
      description: >
        All available offering instances. For backwards compatibility reasons, the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of offerings
  '/offerings/{offeringId}':
    get:
      summary: Gets an offering instance
      tags:
        - parameter
      description: |
        Gets an offering instance.
      parameters:
        - name: offeringId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/offerings/{offeringId}/extras':
    get:
      summary: Gets extra infos for a phenomenon
      tags:
        - parameter
      description: >
        Lists extra metadata which may vary from instance to instance. The available metadata fields are listed in the `extras` metadata field of each offering.


        You can query just the ones you are interested in by appending the `fields` query parameter and passing a comma-separated value list to it. 
      parameters:
        - name: offeringId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  /features:
    get:
      summary: Get available feature instances
      tags:
        - parameter
      description: >
        All available instances. For backwards compatibility reasons the output  is filtered by default to list only those instances related to `stationary`,  `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`.
      parameters:
        - $ref: '#/parameters/localeParam'
        - $ref: '#/parameters/expandedParam'
        - $ref: '#/parameters/servicesParam'
        - $ref: '#/parameters/categoriesParam'
        - $ref: '#/parameters/phenomenaParam'
        - $ref: '#/parameters/proceduresParam'
        - $ref: '#/parameters/offeringsParam'
        - $ref: '#/parameters/platformsParam'
        - $ref: '#/parameters/stationsParam'
        - $ref: '#/parameters/platformTypesParam'
        - $ref: '#/parameters/valueTypesParam'
      responses:
        '200':
          description: A collection of features
  '/features/{featureId}':
    get:
      summary: Gets an feature instance
      tags:
        - parameter
      description: |
        Gets a feature instance.
      parameters:
        - name: featureId
          in: path
          required: true
          type: string
      responses:
        '200':
          description: An expanded item
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
  '/features/{featureId}/extras':
    get:
      summary: Gets extra infos for a feature
      tags:
        - parameter
      description: >
        All available feature instances. For backwards compatibility reasons, the output is filtered by default to list only those instances related to `stationary`, `insitu` platforms. To retrieve a full metadata view add `platformTypes=all`. Depending on the `expanded` parameter the collections items are compact or do inline full metadata.
        
        
        Filter options help to focus on a particular set of items. Filter either by parameters or spatially.
      parameters:
        - name: featureId
          in: path
          required: true
          type: string
        - name: fields
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: csv
      responses:
        '200':
          description: A list of (selected) extra infos
        '404':
          description: Item not found
          schema:
            $ref: '#/definitions/Error'
        '415':
          description: Media Item not supported
          schema:
            $ref: '#/definitions/Error'
            
            
            
            
parameters:
  expandedParam:
    name: expanded
    in: query
    type: boolean
    description: >
      If `true` a list of partially expanded resource items is returned. The expansion provides more  detailed information up to a certain point. However, it does not necessarily provide all item  information as one may get when request the resource item itself.


      The expanded works almost only for resource collection. However, exceptions may exist (e.g.  for getting raw data). Exceptions are explicitly documented. The default is `false`.
  platformTypesParam:
    name: platformTypes
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      Filters the resources to get only those related to the platform type filter.


      Allowed values are `stationary`, `mobile`, `insitu`, `remote`, `all`. 
      
      
      The default is `stationary,insitu`.
  valueTypesParam:
    name: valueTypes
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      Filters the resources to get only those related to the dataset type filter.


      Allowed values are `quantity`, `count`, `text`, `all` or any other custom types given by the  implementing backend.


      The default is `quantity`.
  servicesParam:
    name: services
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given service id does match. The single form (`service`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  categoriesParam:
    name: categories
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given category id does match. The single form (`category`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  phenomenaParam:
    name: phenomena
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given phenomenon id does match. The single form (`phenomenon`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  proceduresParam:
    name: procedures
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given procedure id does match. The single form (`procedure`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  offeringsParam:
    name: offerings
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given offering id does match. The single form (`offering`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  stationsParam:
    name: stations
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: >
      All resources where the given station id does match. The single form (`station`) is kept for backwards compatibility. Please use the plural form to filter on multiple ids.
  platformsParam:
    name: platforms
    in: query
    type: array
    items:
      type: string
    collectionFormat: csv
    description: |
      All resources where the given platform id does match.
  localeParam:
    name: locale
    in: query
    type: string
    description: >
      Specifies the language as [ISO639](http://en.wikipedia.org/wiki/ISO_639) code. Subdivisions are  respected by an `_` , e.g. `en_US` for American English.


      The REST-API should consider the following order to detect a locale


      * Accept-Language (e.g. header information)

      * locale parameter


      A fallback language cannot be specified as it depends on the data of the service provider.
  timespanParam:
    name: timespan
    in: query
    type: string
    description: >
      An [ISO8601](http://en.wikipedia.org/wiki/ISO_8601#Time_intervals) 
      formatted period. Only backslash formatted values are supported.
  crsParam:
    name: crs
    in: query
    type: string
    description: >
      The client indicates that input geometries shall be interpreted as being referenced by the given CRS (for example in case of `crs=EPSG:25832` to  [ETRS89/UTM zone 32N](http://spatialreference.org/ref/epsg/25832/)).


      Per default geometries are referenced by the WGS84 CRS (CRS84, i.e.
      lon/lat order). If crs value differs from default, all output geometries are transformed to match
      the asked CRS.


      Please note that some CRS switch coordinate axes. Double check axes
      ordering before interpreting coordinates!
  bboxParam:
    name: bbox
    in: query
    type: string
    description: >
      Stations within a given bounding box (in WGS84 by default). Refer to the
      crs parameter if a  non-default CRS shall be used. The Box can be supplied as either as json Points or as GeoJSON bbox.
    

      Alternative 1: json Points


      ```json 
      bbox={
        "ll": {
          "type": "Point",
          "coordinates": [,]
        },
        "ur": {
          "type": "Point",
          "coordinates": [,]
        }
      }

      ```


      Alternative 2: GeoJSON bbox


      ```json
      bbox=,,,
      ```
  nearParam:
    name: near
    in: query
    type: string
    description: >
      Stations within a given bounding box (in WGS84 by default). Refer to the `crs` parameter if a  non-default CRS shall be used.


      ```json
      near={
        "center": {
          "type": "Point",
          "coordinates": [,]
        },
        "radius":500
      }

      ```
  legendParam:
    name: legend
    in: query
    type: boolean
    description: >
      Indicates if a legend shall be rendered directly on the image output (if `image/png` shall be  the output).
  gridParam:
    name: grid
    in: query
    type: boolean
    description: ''
  widthParam:
    name: width
    in: query
    type: integer
    format: int32
    description: |
      If `image/png` is requested, width determines the width in pixels.
  heightParam:
    name: height
    in: query
    type: integer
    format: int32
    description: |
      If `image/png` is requested, height determines the height in pixels.
  generalizeParam:
    name: generalize
    in: query
    type: boolean
    description: >
      Indicates that timeseries data shall be generalized. See generalization
      section for details.
  formatParam:
    name: format
    in: query
    type: string
    description: >
      Controls the output format of raw timeseries data. This avoids converting
      between different  data formats on client side which uses a 3rd party chart rendering API.
      Currently, supported formats

        * *tvp* Time value pairs (the default)
        
        * *highcharts* [Highcharts](http://www.highcharts.com/) series data format.
        
        
      Refer to the Format section for detailed information how the formats will look like.
  base64Param:
    name: base64
    in: query
    type: boolean
    description: >
      Indicates binary images shall be encoded to a base64 string on server side. This makes it easily possible to display images from JavaScript (you would need a byte parsing library  otherwise).


      Here is an example how to embed encoded base64 string

      ```

      

      ```
  
  geometryTypesParam:
    name: geometryTypes
    in: query
    type: string
    enum:
      - point
      - linestring
      - polygon
    description: |
      The type of geometry based on [WKT types](https://en.wikipedia.org/wiki/Well-known_text).
  platformGeometriesParam:
    name: platformGeometries
    in: query
    type: array
    collectionFormat: csv
    items:
      type: string
      enum:
        - site
        - track
    description: |
      The platform's geometry, either `site` for `stationary` platforms (or `station`s) or `track` for `mobile` platforms.
  observedGeometriesParam:
    name: observedGeometries
    in: query
    type: array
    collectionFormat: csv
    items:
      type: string
      enum:
        - static
        - dynamic
    description: |
      The platform's observed geometry, either `static` for `remote` platforms observing fixed geometries or `dynamic` otherwise.
  resultTimesParam:
    name: resultTimes
    in: query
    type: array
    collectionFormat: csv
    description: |
      Filter data which is available for different result times. Query `/extras?fields=resultTimes` beforehand to get
      a list of result times or add `resultTimes=all` to get all data classified by result time. In case of `resultTime`
      is missing from Query, those data will be returned which belongs to the oldest result time.
  showTimeIntervalsParam:
    name: showTimeIntervals
    in: query
    type: boolean
    collectionFormat: csv
    description: |
      Select whether Time fields in the output shall be returned using a single Timestamp or a Time Interval.   
definitions:
  SimpleDataRequest:
    type: object
    properties:
      datasetIds:
        type: array
        items:
          type: string
  StyledDataRequest:
    type: object
    required:
      - styleOptions
    properties:
      legend:
        type: boolean
      grid:
        type: boolean
      locale:
        type: string
      width:
        type: integer
        format: int32
      height:
        type: integer
        format: int32
      timespan:
        type: string
      styleOptions:
        $ref: '#/definitions/Style'
  Style:
    type: object
    description: ''
    properties:
      chartType:
        type: string
        enum:
          - line
          - bar

  Error:
    type: object
    properties:
      statusCode:
        type: integer
        format: int32
      reason:
        type: string
      userMessage:
        type: string




© 2015 - 2024 Weber Informatics LLC | Privacy Policy