Skip to main content
POST
Update shipping status

Authorizations

x-api-key
string
header
required

Path Parameters

orderUuid
string<uuid>
required

Order UUID.

Body

application/json

Update payload for POST /v1/orders/{uuid}/status. At least ONE of status, name_ar, or name_en is required — a fully blank body returns 422. All three may be sent together; the canonical status enum and the custom bilingual label update atomically.

status
enum<string>

Canonical shipping-status enum value. Drives dashboard badges + the shipping_status_updated webhook. Independent of the financial order_status.

Available options:
new,
license_in_progress,
ready_shipping,
delivery_is_in_progress,
delivered,
cancelled
Example:

"ready_shipping"

name_ar
string

Free-form Arabic label. Stored under custom_status.ar on the order. When name_en is omitted, this value is auto-translated to English via Google Translate (cached 30 days). Lets external fulfilment platforms (Salla, Zid, custom WMS) attach their own status names without extending the canonical enum.

Maximum string length: 120
Example:

"خرج للتوصيل"

name_en
string

Free-form English label. Stored under custom_status.en. Auto-translates from name_ar when omitted. Both fields together skip translation.

Maximum string length: 120
Example:

"Out for delivery"

Response

Shipping status updated successfully.

status
boolean
required
Example:

true

message
string | null
required
Example:

""

appended_data
object
required
Example:
data
object
required