Streaming Imagery - WCS
Overview
The WCS endpoint provides download access to the "raw" images that are displayed by the WMS endpoint. While these images are also 8-bit RGB, they are not rendered with the goal of screen display. Instead they can be downloaded in file formats like GeoTIFF for use in other processes. The specification supports subsetting and resampling of the image if needed.
Authentication
All OGC services accept an API key or a bearer token for authentication.
Bearer tokens
Oauth bearer tokens can also be used to authenticate API requests. Bearer tokens have a brief duration and must be refreshed frequently.
To authenticate with a bearer token, use the Authorization
header:
Authorization: Bearer <Oauth2 token>
Learn about OAuth2 bearer tokens
API keys
API keys can be passed using query parameters or in a custom header. No Authorization
header is needed when using API keys.
To use the query parameter method, include this query parameter in your request:
maxar_api_key=<your API key>
The custom header takes the form of:
maxar-api-key: <your API key>
API keys expire 180 days from creation by default. A custom expiration date can be set but cannot exceed 180 days.
Learn about API keys
Services
Name | Description | Basic Request URL |
---|---|---|
Get Capabilities | Describes the capabilities and operations supported for WCS. | https://api.maxar.com/streaming/v1/ogc/wcs?service=wcs&request=GetCapabilities |
Describe Coverage Type | Returns the properties of the image coverage . | https://api.maxar.com/streaming/v1/ogc/wcs?service=WCS&version=2.0.1&request=DescribeCoverage&coverageid=Maxar:Imagery |
GetCoverage | Returns downloadable file in requested format. | https://api.maxar.com/streaming/v1/ogc/wcs?service=wcs&request=GetCoverage |
Note: For the service parameter in WCS requests, "WCS" must be all upper case.
WFS Get Capabilities
Returns a list of services and operations supported by WCS.
Request URL
https://api.maxar.com/streaming/v1/ogc/wcs?service=WCS&request=GetCapabilities
Query parameters
Name | Required/Optional | Description | Value |
---|---|---|---|
service | required | The requested OGC service. | WCS |
request | required | The name of the WFS request type | GetCapabilities |
version | optional | WCS version, defaults to 2.0.1 | 2.0.1 |
Response
Success: 200 OK
WCS Describe Coverage Type
Request URL
https://api.maxar.com/streaming/v1/ogc/wcs?service=WCS&version=2.0.1&request=DescribeCoverage&coverageid=Maxar:Imagery
Query parameters
Name | Required/Optional | Description | Value |
---|---|---|---|
service | required | The requested OGC service. | WCS |
request | required | The request type | DescribeCoverage |
version | optional | WCS version, defaults to 2.0.1 | 2.0.1 |
coverageid | required | Coverage ID | Use Maxar:Imagery |
Response
Describe Coverage Response
<?xml version="1.0" encoding="UTF-8"?><wcs:CoverageDescriptions xmlns:wcs="http://www.opengis.net/wcs/2.0" xmlns:ows="http://www.opengis.net/ows/2.0" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:gmlcov="http://www.opengis.net/gmlcov/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:swe="http://www.opengis.net/swe/2.0" xmlns:wcsgs="http://www.geoserver.org/wcsgs/2.0" xsi:schemaLocation=" http://www.opengis.net/wcs/2.0 http://schemas.opengis.net/wcs/2.0/wcsDescribeCoverage.xsd http://www.geoserver.org/wcsgs/2.0 https://api.maxar.com/streaming/v1/ogc/schemas/wcs/2.0/wcsgs.xsd">
<wcs:CoverageDescription gml:id="Maxar__Imagery">
<gml:description>A raster layer that includes all imagery available in the Maxar Geospatial Platform available, depending on user permissions. CQL filters and other URL parameters can be used to target specific imagery.</gml:description>
<gml:name>Imagery</gml:name>
<gml:boundedBy>
<gml:Envelope srsName="http://www.opengis.net/def/crs/EPSG/0/4326" axisLabels="Lat Long" uomLabels="Deg Deg" srsDimension="2">
<gml:lowerCorner>-90.0 -180.0</gml:lowerCorner>
<gml:upperCorner>90.0 180.0</gml:upperCorner>
</gml:Envelope>
</gml:boundedBy>
<wcs:CoverageId>Maxar__Imagery</wcs:CoverageId>
<gml:coverageFunction>
<gml:GridFunction>
<gml:sequenceRule axisOrder="+2 +1">Linear</gml:sequenceRule>
<gml:startPoint>0 0</gml:startPoint>
</gml:GridFunction>
</gml:coverageFunction>
<gmlcov:metadata>
<gmlcov:Extension>
<ows:Keywords>
<ows:Keyword>geotools_coverage</ows:Keyword>
<ows:Keyword>WCS</ows:Keyword>
<ows:Keyword>Maxar_Raster_Coverage</ows:Keyword>
</ows:Keywords>
</gmlcov:Extension>
</gmlcov:metadata>
<gml:domainSet>
<gml:RectifiedGrid gml:id="grid00__Maxar__Imagery" dimension="2">
<gml:limits>
<gml:GridEnvelope>
<gml:low>0 0</gml:low>
<gml:high>511 511</gml:high>
</gml:GridEnvelope>
</gml:limits>
<gml:axisLabels>i j</gml:axisLabels>
<gml:origin>
<gml:Point gml:id="p00_Maxar__Imagery" srsName="http://www.opengis.net/def/crs/EPSG/0/4326">
<gml:pos>89.82421875 -179.6484375</gml:pos>
</gml:Point>
</gml:origin>
<gml:offsetVector srsName="http://www.opengis.net/def/crs/EPSG/0/4326">0.0 0.703125</gml:offsetVector>
<gml:offsetVector srsName="http://www.opengis.net/def/crs/EPSG/0/4326">-0.3515625 0.0</gml:offsetVector>
</gml:RectifiedGrid>
</gml:domainSet>
<gmlcov:rangeType>
<swe:DataRecord>
<swe:field name="ByteArray grid coverage wrapper">
<swe:Quantity>
<swe:description>ByteArray grid coverage wrapper</swe:description>
<swe:uom code="W.m-2.Sr-1"/>
<swe:constraint>
<swe:AllowedValues>
<swe:interval>0.0 255.0</swe:interval>
</swe:AllowedValues>
</swe:constraint>
</swe:Quantity>
</swe:field>
<swe:field name="ByteArray grid coverage wrapper">
<swe:Quantity>
<swe:description>ByteArray grid coverage wrapper</swe:description>
<swe:uom code="W.m-2.Sr-1"/>
<swe:constraint>
<swe:AllowedValues>
<swe:interval>0.0 255.0</swe:interval>
</swe:AllowedValues>
</swe:constraint>
</swe:Quantity>
</swe:field>
<swe:field name="ByteArray grid coverage wrapper">
<swe:Quantity>
<swe:description>ByteArray grid coverage wrapper</swe:description>
<swe:uom code="W.m-2.Sr-1"/>
<swe:constraint>
<swe:AllowedValues>
<swe:interval>0.0 255.0</swe:interval>
</swe:AllowedValues>
</swe:constraint>
</swe:Quantity>
</swe:field>
</swe:DataRecord>
</gmlcov:rangeType>
<wcs:ServiceParameters>
<wcs:CoverageSubtype>RectifiedGridCoverage</wcs:CoverageSubtype>
<wcs:nativeFormat>image/tiff</wcs:nativeFormat>
</wcs:ServiceParameters>
</wcs:CoverageDescription>
</wcs:CoverageDescriptions>
WCS Get Coverage
Returns image data of the requested coverage area.
Request URL
https://api.maxar.com/streaming/v1/ogc/wcs?service=WCS&version=2.0.1&request=GetCoverage&format=nitf&coverageid=Maxar:Imagery&subset=Long(-105.3100485,-105.2363205)&subset=Lat(40.1410980,40.2148260)&outputcrs=EPSG:4326&scalefactor=0.1&interpolation=http://www.opengis.net/def/interpolation/OGC/1/nearest-neighbor&feature_id=2f64af83-7594-4a05-bdf3-425e278a4aee
Query parameters
Name | Required/Optional | Description | Value |
---|---|---|---|
service | required | The requested OGC service. | WCS |
request | required | The service request type. | GetCoverage |
version | optional | WCS version, defaults to 2.0.1 | 2.0.1 |
coverageid | required | The supported Coverage type. | For Maxar imagery, use Maxar:Imagery . |
feature_id | required | The feature ID for the coverage area. | 2f64af83-7594-4a05-bdf3-425e278a4aee |
format | required | Supported coverage file formats. | See Supported Output Formats below |
subset | optional | Subset (clip) the image - longitude range | Long(-105.3100485,-105.2363205) |
subset | optional | Subset (clip) the image - latitude range | Lat(40.1410980,40.2148260) |
outputcrs | recommended | Output CRS definition | EPSG:4326 , see Subsets below |
subsettingcrs | recommended | Subset CRS definition | EPSG:4326 , see Subsets below |
scalefactor | optional | Image scaling | 1.0 |
interpolation | optional | Interpolation method OpenGIS URI | See interpolation methods below |
Supported output formats
image/png
image/jpeg
image/jp2
image/tiff
(GeoTIFF)nitf
(NITF 2.1)
Interpolation Methods
Provide a URI of the OpenGIS interpolation method. Interpolation is used when scaling or reprojecting to a different output CRS. Supported methods are:
http://www.opengis.net/def/interpolation/OGC/1/nearest-neighbor
(default)http://www.opengis.net/def/interpolation/OGC/1/linear
http://www.opengis.net/def/interpolation/OGC/1/cubic
Feature ID
Feature ID is a required parameter in a Get Coverage request. This is the image's unique identifier to the server. To find a Feature ID, use the WFS service to filter for imagery. The featureID
is displayed in the response.
Subsets
Images can be clipped by providing subset
parameters to the request.
The maxar:imagery
layer advertises its coordinate reference system as WGS84 (EPSG:4326) which reflects how the Imagery Service indexes the available images. However, it is capable of serving images that were generated in any coordinate system. The majority of images available were generated in EPSG:4326, but a small percentage of them were generated in UTM coordinate systems.
It is possible to both subset the image to bounds in any coordinate system, as well as reproject the output to any coordinate system. While a Subset
parameter has unit labels like Long
or E
that hint to the unit, a subset alone is not enough information to accurately assume a coordinate system.
Therefore, it is best practice when using the WCS service to explicitly define both the input and output coordinate systems by including these parameters when passing lat/long subsets:
subsettingcrs=EPSG:4326 & outputcrs=EPSG:4326
This forces the behavior to be consistent with the advertised coordinate system across all images, regardless of which coordinate system they were generated in.
Response
Success response code: 200 OK
The response is an image of the coverage area in the requested format.