Skip to content

Event Types

Every webhook request contains a JSON body describing a single event. All events share the same envelope; the data object depends on the event type.

Event type Sent when
order.validated An order has been validated by a constellr CSM and its state moves to in_progress.
order.rejected An order has been rejected during validation.
order.closed An order is complete and moves to closed state.
delivery.published A new delivery for an order is available to download.

Event envelope

Field Type Description
id string (UUID) Unique event ID. Identical to the webhook-id header and the same across retries; use it to detect duplicates.
version integer Payload schema version. Currently 1.
type string The event type, e.g. order.validated.
timestamp string (ISO 8601, UTC) When the event happened.
data object Event-specific data, see below.

Request headers

Header Description
content-type application/json
user-agent Constellr-Webhooks/1.0
webhook-id The event id.
webhook-timestamp Unix timestamp (seconds) of this delivery attempt.
webhook-signature Signature used to verify the request.

order.validated

The order has been reviewed and approved by a constellr CSM and the system is working to acquire and deliver images.

Field Type Description
data.order_id string (UUID) The order ID.
data.state string The new order state: in_progress.
{
  "id": "0c8e4a3f-6b1d-4f2a-9e7c-3d5b8a1f2e64",
  "version": 1,
  "type": "order.validated",
  "timestamp": "2026-10-22T09:15:00Z",
  "data": {
    "order_id": "a1003715-03fa-4433-9ef0-db9b836f160c",
    "state": "in_progress"
  }
}

order.rejected

The order has been reviewed by a constellr CSM and rejected.

Field Type Description
data.order_id string (UUID) The order ID.
data.state string The new order state: rejected.
data.rejection_reason string Why the order was rejected.
{
  "id": "3f6c1e2a-8b1d-4c1e-9f0a-2d7c5b9e1a44",
  "version": 1,
  "type": "order.rejected",
  "timestamp": "2026-10-22T09:15:00Z",
  "data": {
    "order_id": "a1003715-03fa-4433-9ef0-db9b836f160c",
    "state": "rejected",
    "rejection_reason": "Area of interest outside the coverage area"
  }
}

order.closed

The order is complete and all of its data has been delivered.

Field Type Description
data.order_id string (UUID) The order ID.
data.state string The new order state: closed.
{
  "id": "7d2b9f41-5c3e-4a8d-b1f6-9e0c2a7d4b13",
  "version": 1,
  "type": "order.closed",
  "timestamp": "2026-12-01T00:05:00Z",
  "data": {
    "order_id": "a1003715-03fa-4433-9ef0-db9b836f160c",
    "state": "closed"
  }
}

delivery.published

A new delivery is available. Use stac_item_id and stac_collection to fetch the item and download its assets from the STAC API.

Field Type Description
data.order_id string (UUID) The order the delivery belongs to.
data.stac_item_id string ID of the STAC item for this delivery.
data.stac_collection string STAC collection containing the item, e.g. lstprecision.
data.acquisition_datetime string (ISO 8601, UTC) When the image was acquired by the satellite.
{
  "id": "9a4e7c12-2f8b-4d6a-8c3e-1b5f0d9a7e28",
  "version": 1,
  "type": "delivery.published",
  "timestamp": "2026-10-23T11:42:10Z",
  "data": {
    "order_id": "a1003715-03fa-4433-9ef0-db9b836f160c",
    "stac_item_id": "lstprecision_20261023_101407_field_a12",
    "stac_collection": "lstprecision",
    "acquisition_datetime": "2026-10-23T10:14:07Z"
  }
}

Fetching the delivery

GET https://api.constellr.com/stac/collections/{stac_collection}/items/{stac_item_id} returns the item with pre-signed download URLs for its assets.


Connect with Us