Skip to content

Orders

An order carries a pickup, one or more dropoffs, payment terms and your own identifier. The full field list is in the reference.

Окно терминала
curl -X POST https://api.govza.app/v1/partner/orders \
-H "Authorization: Bearer $GOVZA_KEY" \
-H "Content-Type: application/json" \
-d @order.json
{
"success": true,
"data": {
"external_order_id": "SHOP-10432",
"order_code": "YB2072",
"status": "new",
"price": 300,
"tracking_url": "https://track.govza.app/abc123",
"tracking_urls": null
}
}

tracking_url is a public tracking page for the whole order. For a single dropoff, tracking_urls is null. For multiple dropoffs, it contains one link per dropoff, in dropoff order, or null when individual links are unavailable.

For a multi-dropoff order:

"tracking_urls": [
"https://track.govza.app/abc123?route=8f3a1c2d",
"https://track.govza.app/abc123?route=41b7e902"
]

external_order_id is your order identifier. Repeating a request with the same value does not create a duplicate order.

  • 201 — the order was created;
  • 200 — this external_order_id was already used; the original order is returned;
  • 409 — a concurrent request is creating this order, retry shortly.

A retry after a network timeout is safe. Use an identifier from your own system and do not reuse one for a different delivery.

List deliveries with:

Окно терминала
curl 'https://api.govza.app/v1/partner/orders?limit=20&offset=0' \
-H "Authorization: Bearer $GOVZA_KEY"

Orders are returned newest first. limit is capped at 100 and defaults to 20.

For one order:

Окно терминала
curl https://api.govza.app/v1/partner/orders/SHOP-10432 \
-H "Authorization: Bearer $GOVZA_KEY"

Statuses run:

newassignedin_progressdelivered

or cancelled at any point before delivery.

The response carries the current status, the price, the tracking URL, the assigned driver once there is one, and the status history.

Окно терминала
curl -X POST https://api.govza.app/v1/partner/orders/SHOP-10432/cancel \
-H "Authorization: Bearer $GOVZA_KEY" \
-H "Content-Type: application/json" \
-d '{ "reason": "customer_changed_mind" }'

Use PUT /v1/partner/orders/{external_order_id} to edit an order while its status is new or assigned. Send the same payload used to create it.

For a partial update, use PATCH and send only the fields to change:

Окно терминала
curl -X PATCH https://api.govza.app/v1/partner/orders/SHOP-10432 \
-H "Authorization: Bearer $GOVZA_KEY" \
-H "Content-Type: application/json" \
-d '{ "comment": "Call 5 minutes ahead", "dropoffs": [{ "index": 1, "contact": { "name": "Zalina" } }] }'

Nested addresses and contacts are merged with the stored values. Send only the dropoffs that changed. index is the zero-based dropoff position; without it, the element’s position in the submitted array is used.

Changing coordinates, cargo size, or routing mode makes Govza verify the quote_id and calculate fresh routes when needed. Changing a name, contact, address text, comment, or buyout amount keeps the existing route and does not by itself change the delivery price.