Skip to main content

supplyPOStatusUpdate

Updates the status, progress, or milestone tracking for a purchase order.

Status is the single source of truth for where a purchase order is in its lifecycle, and can be set to any valid status directly — the milestone (a rolled-up grouping of status) is derived automatically. The same call can optionally record milestone tracking detail (progress, track status) and a note against the current milestone.

Authentication

Requires the supply:update_po_status permission.

Business Rules

  • At least one update field must be provided (new_status, new_progress, milestone_track_status, or note).
  • Progress values must be between 0 and 100.
  • Any valid status may be set from any current status; there is no fixed transition sequence.

Possible Errors

  • **Purchase Order not found**: The specified purchase order does not exist or you don't have access to it.
  • **At least one status update field is required**: You must provide at least one field to update.
  • **Progress must be between 0 and 100**: The progress percentage is out of range.
  • **Invalid status**: The provided status is not a valid status value.
supplyPOStatusUpdate(
input: POStatusUpdateInput!
): StatusResponse!

Arguments

supplyPOStatusUpdate.input ● POStatusUpdateInput! non-null input common

Parameters for POStatusUpdate

Type

StatusResponse object common

The response of a mutation that only returns a status