Update Work Order Status

Changed on

Operates on Service Orders, shown in the Zuper client app as "Work Order" (in every industry). Work Orders share the exact same underlying schema and endpoints as Purchase Orders / Material Orders; they're distinguished only by the purchase_order_type field (SERVICE_ORDER here) and the /service_orders route prefix. Status transitions are validated against a fixed transition matrix — an unreachable transition is rejected with 400. WORK_COMPLETED is not a valid status for a Purchase Order / Material Order; use FULFILLED instead.

put/service_orders/{purchase_order_uid}/status

Request

  • Base URL
    https://dc-region.zuperpro.com/api
  • URL
    https://dc-region.zuperpro.com/api/service_orders/{purchase_order_uid}/status
  • Auth
    API key in header x-api-key

Path parameters

purchase_order_uidstring required

Request body

purchase_order_status'DRAFT' | 'SUBMITTED' | 'APPROVED' | 'REJECTED' | 'CANCELED' | 'SENT_TO_VENDOR' | 'VENDOR_APPROVED' | 'VENDOR_REJECTED' | 'FULFILLED' | 'PARTIALLY_FULFILLED' | 'WORK_COMPLETED' | 'INVOICED' | 'PAID' | 'CLOSED' required
remarksstring
attachmentsobject[]

Response

200

type'success'
titlestring
messagestring
dataobject

Present only for vendor-integrated suppliers — holds the supplier submission result.

Changes