Track and Manage Tasking Orders
Once you have placed a tasking order, there are a number of endpoints that will enable you to track, modify or cancel your order. This page covers managing both individual tasking orders and recurring order series.
Managing individual orders
This section outlines how to track and manage one off tasking orders
Tracking orders
You can use the "Retrieve a tasking order" endpoint to get information about a specific tasking order:
export ORDER_ID="xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx"
curl -X GET "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/orders/${ORDER_ID}" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
The response returns a Feature, which also includes the current status of the Order along with a full breakdown of the
status history in the status_history field
{
"type": "Feature",
"geometry": {
"bbox": [
...
],
"type": "Point",
"coordinates": [
...
]
},
"properties": {
"stac:item_id": "string",
"stac:datetime": "...",
"stac:metadata": {
...
},
"licence_level": "My Licence",
"addon:withhold": "PT0H",
"name": "My Order",
"product": "standard",
"datetime": ".../...",
"satvu:day_night_mode": "day",
"max_cloud_cover": 15,
"min_off_nadir": 0,
"max_off_nadir": 30,
"status": "fulfilled",
"created_at": "...",
"updated_at": "...",
"status_history": [
{
"status_from": "in progress",
"status_to": "fulfilled",
"datetime_updated": "...",
"reason": "Image delivered to customer - order fulfilled"
},
{
"status_from": "staged",
"status_to": "committed",
"datetime_updated": "...",
"reason": "Satellite task assigned"
},
{
"status_from": None,
"status_to": "staged",
"datetime_updated": "...",
"reason": "Order created"
}
]
},
"id": "...",
"links": [
...
],
"contract_id": "...",
"price": {
...
}
}
You can also view all your tasking orders with "List all tasking orders" endpoint:
curl -X GET "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/orders/" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
Searching orders
The order search endpoint provides more advanced parameters to search your existing orders. The following example searches orders that are placed in the specified geometry:
curl -X POST "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/search/" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"collections": [
"orders"
],
"intersects": {
"coordinates": [
[
[
-8.60621344099522,
60.63920763634644
],
[
-14.213293594801314,
45.95851155946286
],
[
10.621928171802324,
52.72769978027327
],
[
-8.60621344099522,
60.63920763634644
]
]
],
"type": "Polygon"
}
}'
View individual tasks assigned to an order
For standard tasking orders, it may require more than one task attempt to fulfil an order. The tasks endpoint provides
a list of all of the tasks that have been assigned to a specific order along with the current status of each task, and
the full status history.
export ORDER_ID="xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx"
curl -X GET "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/orders/${ORDER_ID}/tasks" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
An example response is shown below. The details field within the status_history provides more detail on what
triggered the change in status. For example if a task did not fulfil an order due to the cloud cover of the captured
image being greater than the parameters defined in the standard tasking order.
{
"order_id": "...",
"tasks": [
{
"id": "...",
"status": "planned",
"created_at": "...",
"updated_at": "...",
"acquisition": {
...
},
"status_history": [
{
"status_from": "processing",
"status_to": "fulfilled",
"datetime_updated": "...",
"reason": "Task fulfilled",
"details": None
},
{
"status_from": "in progress",
"status_to": "processing",
"datetime_updated": "...",
"reason": "Task processing",
"details": None
},
{
"status_from": None,
"status_to": "in progress",
"datetime_updated": "...",
"reason": "Satellite task assigned",
"details": None
}
]
}
]
}
Modifying an order
Various aspects of a tasking order can be modified after the point at which the order has been placed. The point at which the fields can be modified depend on the status of the order:
Order namecan be modified at any point.- Order properties that impact the price of an order (
withholdandlicence level) can be modified in thestagedorin progressstatuses. - For Standard tasking orders, tasking parameters (
geometry,tasking window,day/night,cloud coverandoff nadir angle) can only be modified in thestagedstatus. - For Assured tasking orders, tasking parameters cannot be modified. To modify an assured order, we recommend that you cancel the order and place a new assured order.
All of the order fields can be modified using the 'Edit tasking order' endpoint
curl -X PATCH "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/orders/${ORDER_ID}/" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"geometry": {
"type": "Point",
"coordinates": [..,..]
},
"properties": {
"licence_level": "My Licence",
"addon:withhold": "PT0H",
"name": "My Order",
"start_time": "2026-01-01T00:00:00+00:00",
"end_time": "2026-01-30T00:00:00+00:00",
"satvu:day_night_mode": "day",
"max_cloud_cover": 100,
"min_off_nadir": 0,
"max_off_nadir": 45
}
}'
There are also endpoints to run feasibility and get a price estimate for an order modification prior to making the updates. Further information on these endpoints can be found in the full Tasking API specification
Cancelling an order
Tasking orders in the staged status can be cancelled free of charge. Once an order has been added to the satellite
tasking plan, the order moves to the in progress status and the order can no longer be cancelled.
For orders in the staged status, the Order cancellation endpoint can be used to cancel the order via the API
curl -X POST "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/orders/${ORDER_ID}/cancel" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
Managing a recurring series
For recurring order series, modifications and cancellations apply to future child orders only — any orders that have already been created within the series are not affected. For information on creating a recurring series, see the Recurring Series Tasking Tutorial.
Modifying a series
The name of a series can be updated at any time. All other fields (geometry, order_parameters, frequency,
total_order_count or end_date) can be modified while the series status is in progress.
export SERIES_ID="xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx"
curl -X PATCH "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/series/${SERIES_ID}" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"name": "Monthly monitoring - Manchester (updated)",
"total_order_count": 12
}'
If you update total_order_count alongside other parameters such as frequency, ensure the new value accounts for any
orders already created in the series.
Cancelling a series
To cancel a series and prevent any further child orders from being created, use the series cancellation endpoint:
curl -X POST "https://api.satellitevu.com/otm/v2/${CONTRACT_ID}/tasking/series/${SERIES_ID}/cancel" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
A successful cancellation returns a 204 response with no body. Any reserved credit for unfulfilled future orders is
returned to your credit limit. Orders that have already been fulfilled are not affected.