Skip to content

Update an order

PATCH
/orders/{id}
curl --request PATCH \
--url https://acme.mykreezalid.com/api/partners/v1/orders/1 \
--header 'Authorization: Basic <credentials>' \
--header 'Content-Type: application/json' \
--data '{ "status": "accepted", "fulfillment_status": "shipped", "order_items": [ { "id": 4242 } ] }'

Updates one of the orders received by your vendor account, typically its status or fulfillment_status. PUT /orders/{id} behaves the same. Send the order fields to change, at the top level of the body or wrapped in an order object. The order always stays yours. To update an order item, send it in order_items (or items) with the id of an existing item of this order. Only the last item of that list is taken into account: update items one request at a time.

status must be one of: draft, pending, new, accepted, shipped, service_provided, customer_confirmed, supplier_confirmed, declined, completed, failed, canceled. fulfillment_status must be empty or one of: started, scheduled, prepared, shipped, in_transit, available, delivered, executed, canceled, error. Any other value is refused with HTTP status 404.

When the order cannot be saved, the response still has HTTP status 200, with success: false. No notification is sent.

id
required
integer

Order’s unique identifier

Media typeapplication/json
object
status
string

Example

accepted
fulfillment_status
string
nullable

Example

shipped
order_items

Order item to update, identified by its id. Only the last entry is taken into account.

Array<object>
object
id
required
integer

Example

4242

Success

Media typeapplication/json
object
success
boolean
message

Order updated, or Error. No update.

string

Example

{
"success": true,
"message": "Order updated"
}

Missing or wrong API credentials.

No order of yours has this ID, or status / fulfillment_status is not a valid value.