--- swagger: '2.0' info: version: 1.0.0 title: GeoServer StructuredCoverageStores description: A structured coverage store allows description of its "granules" and management of them. contact: name: GeoServer email: 'geoserver-users@osgeo.org' url: 'https://geoserver.org/comm/' host: localhost:8080 basePath: /geoserver/rest paths: /workspaces/{workspace}/coveragestores/{store}/coverages/{coverage}/index: get: operationId: getStructuredCoverageIndex tags: - "StructuredCoverages" summary: Get the information schema attached to the granules description: Displays a list of all the attributes associated to a particular coverage's granules. Use the "Accept:" header to specify format or append an extension to the endpoint (example "/index.xml" for XML). Defaults to XML representation. produces: - application/json - application/xml parameters: - name: workspace in: path required: true description: The name of the worskpace containing the coverage stores. type: string - name: store in: path required: true description: The name of the store to be retrieved type: string - name: coverage in: path required: true description: The name of the coverage to be retrieved type: string responses: 200: description: OK schema: $ref: "#/definitions/Schema" examples: application/json: | {"Schema": { "attributes": {"Attribute": [ { "name": "the_geom", "minOccurs": 0, "maxOccurs": 1, "nillable": true, "binding": "org.locationtech.jts.geom.MultiPolygon" }, { "name": "location", "minOccurs": 0, "maxOccurs": 1, "nillable": true, "binding": "java.lang.String", "length": 254 }, { "name": "ingestion", "minOccurs": 0, "maxOccurs": 1, "nillable": true, "binding": "java.util.Date", "length": 8 }, { "name": "elevation", "minOccurs": 0, "maxOccurs": 1, "nillable": true, "binding": "java.lang.Integer", "length": 9 } ]}, "href": "http://localhost:8080/geoserver/restng/workspaces/wcs/coveragestores/watertemp/coverages/watertemp/index/granules.json" }} application/xml: | the_geom 0 1 true org.locationtech.jts.geom.MultiPolygon location 0 1 true java.lang.String 254 ingestion 0 1 true java.util.Date 8 elevation 0 1 true java.lang.Integer 9 401: description: Unauthorized post: operationId: postStructuredCoverageIndex tags: - "StructuredCoverages" description: Invalid, the index cannot be created or modified responses: 401: description: Unauthorized 405: description: Method Not Allowed put: operationId: putStructuredCoverageIndex tags: - "StructuredCoverages" description: Invalid, the index cannot be created or modified responses: 401: description: Unauthorized 405: description: Method Not Allowed delete: operationId: deleteCoverageStores tags: - "StructuredCoverages" description: Invalid, the index cannot be created or modified responses: 401: description: Unauthorized 405: description: Method Not Allowed /workspaces/{workspace}/coveragestores/{store}/coverages/{coverage}/index/granules: get: operationId: getStructuredCoverageGranules tags: - "StructuredCoverages" summary: Get the attributes associated to the granules description: | Displays a list of all the attributes associated to a particular coverage's granules. Use the "Accept:" header to specify format or append an extension to the endpoint (example "/index.xml" for XML). Defaults to XML representation. The XML output is actually WFS 1.0 GML, while the JSON output is GeoJSON produces: - application/json - application/xml parameters: - name: workspace in: path required: true description: The name of the worskpace containing the coverage stores. type: string - name: store in: path required: true description: The name of the store to be retrieved type: string - name: coverage in: path required: true description: The name of the coverage to be retrieved type: string - name: filter in: query required: false description: A CQL filter to reduce the returned granules type: string - name: offset in: query description: Used for paging, the start of the current page required: false type: integer minimum: 0 default: 0 - name: limit in: query description: Used for paging, the number of items to be returned required: false type: integer minimum: 1 responses: 200: description: OK examples: application/json: | { "type": "FeatureCollection", "bbox": [ 0.23722068851276978, 40.562080748421806, 14.592757149389236, 44.55808294568743 ], "crs": { "type": "name", "properties": {"name": "EPSG:4326"} }, "features": [ { "type": "Feature", "geometry": { "type": "MultiPolygon", "coordinates": [[ [ [ 0.2372, 40.5621 ], [ 0.2372, 44.5581 ], [ 14.5928, 44.5581 ], [ 14.5928, 40.5621 ], [ 0.2372, 40.5621 ] ]]] }, "properties": { "location": "NCOM_wattemp_000_20081101T0000000_12.tiff", "ingestion": "2008-11-01T00:00:00.000+0000", "elevation": 0 }, "id": "watertemp.1" }, { "type": "Feature", "geometry": { "type": "MultiPolygon", "coordinates": [[ [ [ 0.2372, 40.5621 ], [ 0.2372, 44.5581 ], [ 14.5928, 44.5581 ], [ 14.5928, 40.5621 ], [ 0.2372, 40.5621 ] ]]] }, "properties": { "location": "NCOM_wattemp_000_20081031T0000000_12.tiff", "ingestion": "2008-10-31T00:00:00.000+0000", "elevation": 0 }, "id": "watertemp.2" } ] } application/xml: | 0.23722068851276978 40.562080748421806 14.592757149389236 44.55808294568743 0.237221,40.562081 14.592757,44.558083 0.237221,40.562081 0.237221,44.558083 14.592757,44.558083 14.592757,40.562081 0.237221,40.562081 NCOM_wattemp_000_20081101T0000000_12.tiff 2008-11-01T00:00:00Z 0 0.237221,40.562081 14.592757,44.558083 0.237221,40.562081 0.237221,44.558083 14.592757,44.558083 14.592757,40.562081 0.237221,40.562081 NCOM_wattemp_000_20081031T0000000_12.tiff 2008-10-31T00:00:00Z 0 401: description: Unauthorized post: operationId: postStructuredCoverageGranules tags: - "StructuredCoverages" description: Invalid, the granules cannot harvested here, use a POST request on /workspaces/{workspace}/coveragestores/{store} responses: 401: description: Unauthorized 405: description: Method Not Allowed put: operationId: putStructuredCoverageGranules tags: - "StructuredCoverages" description: Invalid, the granules cannot harvested here, use a POST request on /workspaces/{workspace}/coveragestores/{store} responses: 401: description: Unauthorized 405: description: Method Not Allowed delete: operationId: deleteStructuredCoverageGranules tags: - "StructuredCoverages" description: Allows removing one or more granules from the index parameters: - name: workspace in: path required: true description: The name of the worskpace containing the coverage stores. type: string - name: store in: path required: true description: The name of the store to be retrieved type: string - name: coverage in: path required: true description: The name of the coverage to be retrieved type: string - name: filter in: query required: false description: A CQL filter to reduce the returned granules type: string - name: purge in: query description: The purge parameter specifies if and how the underlying raster data source is deleted. Allowable values for this parameter are "none", "metadata" and "all". When set to "none" data and auxiliary files are preserved, only the registration in the mosaic is removed When set to "metadata" delete only auxiliary files and metadata (e.g. NetCDF sidecar indexes). It’s recommended when data files (such as granules) should not be deleted from disk. Finally, when set to "all" both data and auxiliary files are removed. required: false type: string minimum: 0 - name: updateBBox in: query required: false description: When set to "true", triggers re-calculation of the layer native bbox. Defaults to "false". responses: 200: description: OK 405: description: Method Not Allowed /workspaces/{workspace}/coveragestores/{store}/coverages/{coverage}/index/granules/{granuleId}: get: operationId: getStructuredCoverageGranule tags: - "StructuredCoverages" summary: Get the attributes of a particular granule description: Displays a list of all the attributes associated to a particular coverage's granule. Use the "Accept:" header to specify format or append an extension to the endpoint (example "/index.xml" for XML). Defaults to XML representation. The XML output is actually WFS 1.0 GML, while the JSON output is GeoJSON produces: - application/json - application/xml parameters: - name: workspace in: path required: true description: The name of the worskpace containing the coverage stores. type: string - name: store in: path required: true description: The name of the store to be retrieved type: string - name: coverage in: path required: true description: The name of the coverage to be retrieved type: string - name: granuleId type: string in: path required: true description: The granule ID responses: 200: description: OK examples: application/json: | { "type": "FeatureCollection", "bbox": [ 0.23722068851276978, 40.562080748421806, 14.592757149389236, 44.55808294568743 ], "crs": { "type": "name", "properties": {"name": "EPSG:4326"} }, "features": [ { "type": "Feature", "geometry": { "type": "MultiPolygon", "coordinates": [[ [ [ 0.2372, 40.5621 ], [ 0.2372, 44.5581 ], [ 14.5928, 44.5581 ], [ 14.5928, 40.5621 ], [ 0.2372, 40.5621 ] ]]] }, "properties": { "location": "NCOM_wattemp_000_20081101T0000000_12.tiff", "ingestion": "2008-11-01T00:00:00.000+0000", "elevation": 0 }, "id": "watertemp.1" } ] } application/xml: | 0.23722068851276978 40.562080748421806 14.592757149389236 44.55808294568743 0.237221,40.562081 14.592757,44.558083 0.237221,40.562081 0.237221,44.558083 14.592757,44.558083 14.592757,40.562081 0.237221,40.562081 NCOM_wattemp_000_20081101T0000000_12.tiff 2008-11-01T00:00:00Z 0 401: description: Unauthorized post: operationId: postStructuredCoverageGranule tags: - "StructuredCoverages" description: Invalid, the granules cannot harvested here, use a POST request on /workspaces/{workspace}/coveragestores/{store} responses: 401: description: Unauthorized 405: description: Method Not Allowed put: operationId: putStructuredCoverageGranule tags: - "StructuredCoverages" description: Invalid, the granules cannot harvested here, use a POST request on /workspaces/{workspace}/coveragestores/{store} responses: 401: description: Unauthorized 405: description: Method Not Allowed delete: operationId: deleteStructuredCoverageGranule tags: - "StructuredCoverages" description: Allows removing the specified granule parameters: - name: workspace in: path required: true description: The name of the worskpace containing the coverage stores. type: string - name: store in: path required: true description: The name of the store to be retrieved type: string - name: coverage in: path required: true description: The name of the coverage to be retrieved type: string - name: granuleId type: string in: path required: true description: The granule ID - name: purge in: query description: The purge parameter specifies if and how the underlying raster data source is deleted. Allowable values for this parameter are "none", "metadata" and "all". When set to "none" data and auxiliary files are preserved, only the registration in the mosaic is removed When set to "metadata" delete only auxiliary files and metadata (e.g. NetCDF sidecar indexes). It’s recommended when data files (such as granules) should not be deleted from disk. Finally, when set to "all" both data and auxiliary files are removed. required: false type: string minimum: 0 - name: updateBBox in: query required: false description: When set to "true", triggers re-calculation of the layer native bbox. Defaults to "false". responses: 200: description: OK 401: description: Unauthorized definitions: Schema: type: object required: [ attributes, link ] example: | the_geom 0 1 true org.locationtech.jts.geom.MultiPolygon location 0 1 true java.lang.String 254 ingestion 0 1 true java.util.Date 8 elevation 0 1 true java.lang.Integer 9 properties: attributes: type: array description: List of attributes items: $ref: "#/definitions/Attribute" link: type: string description: Link to the list of granules Attribute: type: object description: An attribute description properties: name: type: string description: Name of the attribute minOccurs: type: integer description: Minimum number of occurrences (0 for optional attribute) maxOccurs: type: integer description: Maximumn number of occurrences (normally 1) nillable: type: boolean description: If the attribute can be missing binding: type: string description: Name of the java class for the attribute length: type: integer description: Length of the field