Open Geospatial Consortium (OGC) Collection metadata API
Description of the information available from the collections
Description of the information available from the collections
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/ogc-collection-metadata-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Ogc Collection metadata API
license:
name: OGC License
url: https://www.ogc.org/legal
version: '1.0'
description: 'Operations tagged Collection metadata across 2 of this provider''s published API definitions: ogc-edr-1-0-openapi-ogcapi-environmental-data-retrieval-1-bundled.json, ogc-edr-1-1-openapi-ogcapi-environmental-data-retrieval-1-bundled.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://www.example.org/edr
description: Example OGC API - Environmental Data Retrieval server
- url: https://example.org/edr
description: Example OGC API - Environmental Data Retrieval server
tags:
- name: Collection metadata
description: Description of the information available from the collections
paths:
/collections/{collectionId}:
get:
tags:
- Collection metadata
summary: List query types supported by the collection
description: This will provide information about the query types that are supported by the chosen collection Use content negotiation to request HTML or JSON
operationId: getQueries
parameters:
- name: collectionId
in: path
description: Identifier (id) of a specific collection
required: true
schema:
type: string
- name: f
in: query
description: format to return the data response in
required: false
schema:
type: string
responses:
'200':
description: Metadata about the {collectionId} collection shared by this API
content:
application/json:
schema:
type: object
required:
- links
- id
- extent
- data_queries
- parameter_names
- output_formats
- crs
properties:
links:
type: array
items:
type: object
required:
- href
- rel
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/locations/1234
rel:
type: string
example: alternate
type:
type: string
example: application/geo+json
hreflang:
type: string
example: en
title:
type: string
example: Monitoring site name
length:
type: integer
templated:
description: defines if the link href value is a template with values requiring replacement
type: boolean
example:
- href: https://wwww.example.org/service/description.html
hreflang: en
rel: service-doc
type: text/html
title: ''
- href: https://www.example.org/service/licence.html
hreflang: en
rel: licence
type: text/html
title: ''
- href: https://www.example.org/service/terms-and-conditions.html
hreflang: en
rel: restrictions
type: text/html
title: ''
- href: http://www.example.org/edr/collections/the_collection_id/
hreflang: en
rel: collection
type: collection
title: Collection
- href: http://www.example.org/edr/collections/the_collection_id/position
hreflang: en
rel: data
type: position
title: Position
- href: http://www.example.org/edr/collections/the_collection_id/area
hreflang: en
rel: data
type: area
title: Area
id:
description: id of the collection
type: string
example: Metar data
title:
description: title of the collection
type: string
example: Metar observations
description:
description: description of the collection
type: string
example: Last 24 hours Metar observations
keywords:
description: List of keywords which help to describe the collection
type: array
items:
type: string
extent:
description: 'The extent of the information in the collection. In the Core only spatial and temporal
extents are specified. Extensions may add additional members to represent other
extents, for example, thermal or pressure ranges.'
type: object
properties:
spatial:
description: The spatial extent of the information in the collection.
type: object
required:
- bbox
- crs
properties:
bbox:
description: 'One or more bounding boxes that describe the spatial extent of the dataset.
In the Core only a single bounding box is supported. Extensions may support
additional areas. If multiple areas are provided, the union of the bounding
boxes describes the spatial extent.'
type: array
minItems: 1
items:
description: 'Each bounding box is provided as four or six numbers, depending on
whether the coordinate reference system includes a vertical axis
(height or depth):
* Lower left corner, coordinate axis 1
* Lower left corner, coordinate axis 2
* Minimum value, coordinate axis 3 (optional)
* Upper right corner, coordinate axis 1
* Upper right corner, coordinate axis 2
* Maximum value, coordinate axis 3 (optional)
The coordinate reference system of the values is WGS 84 longitude/latitude
(http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate
reference system is specified in `crs`.
For WGS 84 longitude/latitude the values are in most cases the sequence of
minimum longitude, minimum latitude, maximum longitude and maximum latitude.
However, in cases where the box spans the antimeridian the first value
(west-most box edge) is larger than the third value (east-most box edge).
If the vertical axis is included, the third and the sixth number are
the bottom and the top of the 3-dimensional bounding box.
If a feature has multiple spatial geometry properties, it is the decision of the
server whether only a single spatial geometry property is used to determine
the extent or all relevant geometries.'
oneOf:
- items:
minItems: 4
maxItems: 4
type: number
type: array
- items:
minItems: 6
maxItems: 6
type: number
type: array
example:
- -180
- -90
- 180
- 90
crs:
description: 'Coordinate reference system of the coordinates in the spatial extent
(property `bbox`). The default reference system is WGS 84 longitude/latitude.
In the Core this is the only supported coordinate reference system.
Extensions may support additional coordinate reference systems '
type: string
default: GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]
name:
description: Name of the vertical coordinate reference system
type: string
temporal:
description: The temporal extent of the information in the collection.
type: object
required:
- interval
- trs
properties:
interval:
description: RFC3339 compliant Date and Time
type: array
minItems: 1
items:
description: 'Begin and end times of the time interval. The timestamps are in the
temporal coordinate reference system specified in `trs`. By default
this is the Gregorian calendar.'
type: array
minItems: 2
maxItems: 2
items:
type:
- string
- 'null'
format: date-time
example:
- - 2020-11-12T12:15Z
- 2020-11-12T12:15Z
- - 2020-11-12T12:15Z
- 2020-11-12T12:45Z
- - 2022-01-14T09:00Z
- 2022-01-15T09:00Z
- - 2022-01-14T09:00Z
- 2022-01-14T21:00Z
- - 2022-01-14T09:00Z
- 2022-01-16T09:00Z
values:
description: "Provides information about the time intervals available in the collection \nas ISO8601 compliant dates, either as a time range specified \nas start time / end time (e.g. 2017-11-14T09:00Z/2017-11-14T21:00Z) or\nas number of repetitions / start time / interval (e.g. R4/2017-11-14T21:00Z/PT3H) \nor a list of time values (e.g.\n2017-11-14T09:00Z,2017-11-14T12:00Z,2017-11-14T15:00Z,2017-11-14T18:00Z,2017-11-14T21:00Z)"
type: array
minItems: 1
items:
type:
- string
- 'null'
minItems: 1
format: date-time
example:
- - 2020-11-12T12:15Z
- - 2020-11-12T12:15Z
- 2020-11-12T12:30Z
- 2020-11-12T12:45Z
- - R12/2022-01-14T09:00Z/2022-01-15T09:00Z
- - R12/2022-01-14T09:00Z/PT1H
- - R12/2022-01-14T09:00Z/PT1H
- R4/2022-01-14T21:00Z/PT3H
- R4/2022-01-15T09:00Z/PT6H
trs:
description: 'Coordinate reference system of the coordinates in the temporal extent
(property `interval`). The default reference system is the Gregorian calendar.
In the Core this is the only supported temporal coordinate reference system.
Extensions may support additional temporal coordinate reference systems '
type: string
example: TIMECRS["DateTime",TDATUM["Gregorian Calendar"],CS[TemporalDateTime,1],AXIS["Time (T)",future]]
default: http://www.opengis.net/def/uom/ISO-8601/0/Gregorian
name:
description: Name of the temporal coordinate reference system
type: string
vertical:
description: The vertical extent of the information in the collection.
type: object
required:
- interval
- vrs
properties:
interval:
description: 'In the Core only a single time interval is supported. Extensions may support
multiple intervals. If multiple intervals are provided, the union of the
intervals describes the vertical extent.'
type: array
minItems: 1
items:
description: 'minimum and maximum heights of the vertical interval. The values are in the
vertical coordinate reference system specified in `vrs`. By default
this is the vertical coordinate reference system of the source information.'
type: array
minItems: 1
items:
type:
- string
- 'null'
example:
- - '2'
- '100'
values:
description: "Vertical level intervals that data in the collection is available at \nthese can be defined as follows:\nmin level / max level (e.g. \"2/100\") or \nas number of repeatitions / min level / interval (e.g.\"R5/100/50\") \nor a list of vertical levels (e.g. \"2\",10,\"80\",\"100\"}\nThe value `null` is supported and indicates an open vertical interval."
type: array
minItems: 1
items:
type:
- string
- 'null'
example:
- - 2/100
- - R50/1000/-50
- - '2'
- '10'
- '80'
- '100'
vrs:
description: 'Coordinate reference system of the coordinates in the vertical extent
(property `interval`). '
type: string
example: VERTCS["WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PARAMETER["Vertical_Shift",0.0],PARAMETER["Direction",1.0],UNIT["Meter",1.0]],AXIS["Up",UP]
default: VERTCS["WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PARAMETER["Vertical_Shift",0.0],PARAMETER["Direction",1.0],UNIT["Meter",1.0]],AXIS["Up",UP]
name:
description: Name of the vertical coordinate reference system
type: string
data_queries:
description: Detailed information relevant to individual query types
type: object
properties:
position:
type: object
properties:
link:
allOf:
- type: object
required:
- href
- rel
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/locations/1234
rel:
type: string
example: alternate
type:
type: string
example: application/geo+json
hreflang:
type: string
example: en
title:
type: string
example: Monitoring site name
length:
type: integer
templated:
description: defines if the link href value is a template with values requiring replacement
type: boolean
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/position
variables:
description: Property to contain any extra metadata information that is specific to an individual data queries
type: object
properties:
title:
description: title of the query
type: string
example: Position query
description:
description: description of the query
type: string
example: Query to return data for a defined well known text point
query_type:
description: Type of EDR query
type: string
enum:
- position
example: position
output_formats:
description: list of output formats supported by the Position query
type: array
items:
type: string
example:
- CoverageJSON
- GeoJSON
- IWXXM
- GRIB
default_output_format:
description: default output format for the Position query
type: string
crs_details:
description: List of key/value definitions for the CRS's supported by the Position query. The key is the query parameter and the value is the Well Known Text description
type: array
items:
type: object
required:
- crs
- wkt
properties:
crs:
description: name of the coordinate reference system, used as the value in the crs query parameter to define the required output CRS
type: string
example: native
wkt:
description: Well Known text description of the coordinate reference system
type: string
example: GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]
radius:
type: object
properties:
link:
allOf:
- type: object
required:
- href
- rel
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/locations/1234
rel:
type: string
example: alternate
type:
type: string
example: application/geo+json
hreflang:
type: string
example: en
title:
type: string
example: Monitoring site name
length:
type: integer
templated:
description: defines if the link href value is a template with values requiring replacement
type: boolean
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/radius
variables:
description: Property to contain any extra metadata information that is specific to an individual data queries
type: object
properties:
title:
description: title of the query
type: string
example: Radius query
description:
description: description of the query
type: string
example: Query to return data for a defined well known text point
query_type:
description: Type of EDR query
type: string
enum:
- radius
example: radius
within_units:
description: list of distance units radius values can be specified in
type: array
items:
type: string
example:
- km
- miles
output_formats:
description: list of formats supported by the Radius query
type: array
items:
type: string
example:
- CoverageJSON
- GeoJSON
- IWXXM
- GRIB
default_output_format:
description: default outputformat for the Radius query
type: string
crs_details:
description: List of key/value definitions for the CRS's supported by the Radius query. The key is the query parameter and the value is the Well Known Text description
type: array
items:
type: object
required:
- crs
- wkt
properties:
crs:
description: name of the coordinate reference system, used as the value in the crs query parameter to define the required output CRS
type: string
example: native
wkt:
description: Well Known text description of the coordinate reference system
type: string
example: GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]
area:
type: object
properties:
link:
allOf:
- type: object
required:
- href
- rel
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/locations/1234
rel:
type: string
example: alternate
type:
type: string
example: application/geo+json
hreflang:
type: string
example: en
title:
type: string
example: Monitoring site name
length:
type: integer
templated:
description: defines if the link href value is a template with values requiring replacement
type: boolean
properties:
href:
type: string
example: http://data.example.com/collections/monitoringsites/area
variables:
description: Property to contain any extra metadata information that is specific to an individual data queries
type: object
properties:
title:
description: title of the query
type: string
example: Area query
description:
description: description of the query
type: string
example: Query to return data for a defined area
query_type:
description: Type of EDR query
type: string
enum:
- area
example: area
output_formats:
description: list of output formats supported by the Area query
type: array
items:
type: string
example:
- CoverageJSON
- GeoJSON
- IWXXM
- GRIB
default_output_format:
description: default output format for the Area query
type: string
crs_details:
description: List of key/value definitions for the CRS's supported by the Area query. The key is the query parameter and the value is the Well Known Text description
type: array
items:
type: object
required:
- crs
- wkt
properties:
crs:
description: name of the coordinate reference system, used as the value in the crs query parameter to define the required output CRS
type: string
example: native
wkt:
description: Well Known text description of the coordinate reference system
type: string
example: GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]
cube:
type: object
properties:
link:
allOf:
- type: object
required:
- href
- rel
properties:
href:
# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ogc/refs/heads/main/openapi/ogc-collection-metadata-api-openapi.yml