Skip to main content

discovery/catalog

The Discovery catalog will emit a monitoring event whenever an item is created or updated. The event object will include the STAC Item record for the event data source.

The Discovery catalog stores a variety of data sources and product types. This source will emit events for:

  • a new image was collected
  • image data was ingested into a system
  • a derivative product like a mosaic or elevation model was generated
  • a record for one of the above was updated

Any system that receives unfiltered events from the Monitoring API should not assume that the events will only be images. Furthermore different event types have different field names so do not assume a given field name will exist in an Item's properties.

If a new image is collected over your area, in most cases you will receive two events:

  • An item for the image was added to the Catalog
  • The item was ingested for access through the Raster Analytics API

To only receive the initial Catalog events, you can limit events to only collections related to satellite collects.

"match_criteria": {
"collection": {
"in":["wv01", "wv02", "wv03-vnir", "wv04", "ge01", "lg01", "lg02", "lg03", "lg04", "lg05", "lg06" ]
}
}

If you are only interested in images from specific satellites or sensors you can modify the list above as needed. As noted below filtering on some fields will only match image records so the above criteria can be skipped.

Likewise, to only receive the Raster Analytics ingest events, you can filter the events received to only include the cloud-optimized-archive collection.

"match_criteria": {
"collection": {
"eq": "cloud-optimized-archive"
}
}

Below are all discovery/catalog "criteria_fields" that can be used to filter Monitoring events. Some criteria fields apply to all items while others only apply to specific collections. If a criteria field cannot be found in an item, the item will be filtered out.

The following fields are available in all events:

allowed parametersdata typedescriptionexample
"id"stringID, for image types this is the "Catalog ID""1020010079424900"
"collection"stringSTAC Collection the item belongs to."wv01"
"datetime"stringDatetime of the source image collect, in ISO8601 format"2023-02-16T18:22:25Z"

The following fields are available in both imagery and cloud-optimized-archive ingestion events:

allowed parametersdata typedescriptionexample
"eo:cloud_cover"floatThe estimate of cloud cover.6.814534544606911
"view:azimuth"floatThe angle measured from the sub-satellite point (point on the ground below the platform) between the scene center and true north, measured clockwise from north in degrees (0-360).50.070378285714284
"view:off_nadir"floatThe angle from the sensor between nadir (straight down) and the scene center, measured in degrees (0-90). (Note: for tiles, this is the average off-nadir angle of the full image strip.)41.714803857142854
"view:sun_azimuth"floatThe angle between truth north and the sun, measured clockwise in degrees (0-360).94.91849228571428
"view:sun_elevation"floatThe angle between truth north and the sun, measured clockwise in degrees (0-360).94.91849228571428

The following fields are available in catalog events only. Filtering on one of these criteria will only return items in imagery collections like wv01 and will filter out events from Raster Analytics (cloud-optimized-archive) and other collections. Therefore if you use one of these criteria fields, you do not need to also filter by collection.

allowed parametersdata typedescriptionexample
"gsd"floatThe distance between two consecutive pixels' centers measured on the ground (Ground Sample Distance).5.0
"instruments"list(string)The instrument that acquired the imagery.["VNIR"]
"platform"stringThe name of the satellite used to collect the imagery. Current values are geoeye-01, worldview-01, worldview-02, worldview-03, worldview-legion-01, worldview-legion-02 worldview-legion-03, worldview-legion-04, worldview-legion-05, worldview-legion-06."platform": "geoeye-01"
"target_to_spacecraft_azimuth_max"floatLike view:azimuth, but the maximum azimuth angle over the full collect.50.070378285714284
"target_to_spacecraft_azimuth_min"floatLike view:azimuth, but the minimum azimuth angle over the full collect.50.070378285714284