Order Status Update Ep
POST/v1/order/update_status
Update Order Status
Updates the delivery status of an order and sends it to the destination system.
Headers
| Header | Type | Required | Description |
|---|---|---|---|
| X-Tenant-Name | str | Yes | Name of the origin tenant making the request |
| X-Dest-Tenant-Name | str | Yes | Name of the destination tenant that will receive the status update |
| X-Origin-System-Name | str | None | No | Name of the origin system. If not provided, uses the tenant's primary system |
Request
order: OrderKey
Identifies the order to update. At least one field is required.
Show Child Attributes
origin_order_number: str | None = None
Order number from the origin system.
destination_order_number: int | None = None
Order number in the destination system.
order_id: str | None = None
ID of the order.
location: TerminalMappingKey | None = None
Location for load/drop status updates. Required unless progress_status is "complete". At least one of mapping_id, source_name, source_id, or goid must be provided.
Show Child Attributes
mapping_id: str | None = None
ID of the mapping record. Use when you have previously looked up or cached the mapping.
source_name: str | None = None
Display name of the terminal in the source system. Matched against the mapping's display_name field.
source_id: str | None = None
Unique identifier of the terminal in the source system. Matched against the mapping's source_id field.
goid: str | None = None
Gravitate Object ID - direct reference to master data. When set, no other fields can be provided. Format: terminal_XXXXXX.
progress_status: OrderProgressStatus
Current delivery status.
Please note that to mark an order as fully complete, the progress_status must be set to complete after all loads and drops have been submitted.
The complete status indicates that the order has been fully processed and no further updates are expected.
Order Progress Status
driving_to_load - Driver is en route to the loading terminal.
arrived_at_load - Driver has arrived at the loading terminal.
loading - Driver is actively loading product.
completed_load - Loading is complete.
driving_to_drop - Driver is en route to the delivery site.
arrived_at_drop - Driver has arrived at the delivery site.
dropping - Driver is actively delivering product.
completed_drop - Delivery is complete.
complete - Order is fully complete.
eta: datetime | None = None
Estimated time of arrival.
actual: datetime | None = None
Actual time of event.
Response
status: str
Crossroads integration status. Each status represents a step in the integration pipeline.
Integration Stages
origin_mapped
The progress update has been received by crossroads and needs mapping to crossroads master data.
master_mapped
The progress update has been mapped to crossroads master data and needs mapping to the destination system.
destination_mapped
The progress update has been mapped to the destination system and is ready to be sent.
synced
The progress update has been successfully sent to the destination system.
error
An error occurred during processing. Check the message and log for details.
rejected
The progress update was rejected by the destination system. Check the message and log for details.
status_update: OrderStatusUpdate | None = None
The status update record.
Show Child Attributes
progress_status: OrderProgressStatus
The delivery status that was set.
location: TerminalMappingKey | None
Location where the status update occurred.
eta: datetime | None
Estimated time of arrival if provided.
actual: datetime | None
Actual time of event if provided.
message: str | None = None
Status message or error details.
log: CrossroadsLogV2 | None = None
Processing log entry.
Responses
- 200
- 422
Successful Response
- application/json
- Example (from schema)
{
"status": "origin_mapped",
"status_update": {
"location": {
"mapping_id": "5eb7cf5a86d9755df3a6c593",
"source_name": "string",
"source_id": "string",
"goid": "string"
},
"progress_status": "driving_to_load",
"eta": "2025-12-19T21:24:56.189Z",
"actual": "2025-12-19T21:24:56.189Z"
},
"log": {
"_id": "5eb7cf5a86d9755df3a6c593",
"title": "string",
"date": "2025-12-19T21:24:56.189Z",
"status": "unknown",
"severity": "low",
"routing": {
"origin_tenant_id": "string",
"origin_tenant_name": "string",
"origin_source_system": "string",
"origin_source_system_id": "string",
"destination_tenant_id": "string",
"destination_tenant_name": "string",
"destination_source_system": "string",
"destination_source_system_id": "string"
},
"detail": {
"category": "crossroads",
"message": "Unhandled System Error. Please retry or contact support.",
"message_short": "System Error",
"traceback": "string"
},
"linked": {
"type": "order",
"origin_order_id": "string",
"origin_order_number": 0,
"destination_order_id": "string",
"destination_order_number": 0
},
"worker_name": "Crossroads",
"correlation_id": "string",
"group_id": "string"
},
"message": "string"
}
Validation Error
- application/json
- Example (from schema)
{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string"
}
]
}