Approve Purchase Order Approval Request
POST/api/purchase-orders/:purchase_order/approval-request/approve
Approve a pending approval request. Runs the standard purchase order approval: the order moves to open, inventory becomes inbound, and backorder coverage is applied. The requester is notified that their purchase order was approved.
purchase-orders:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Authentication: Requires Bearer token.
Requires permission: purchase_orders.approve
Returns 422 if the request was already approved, rejected, or withdrawn (for example by another approver acting first).
Approval policy:
While the purchase-order approval policy is enabled the purchase_orders.approve permission is not required — you must instead be eligible for the request's current step. Approving a step that is not the last records your decision and the order stays in draft until the final step is approved. Not eligible → 403 approval_limit_exceeded; already decided by someone else → 409 approval_state_conflict.
Request
Responses
- 200
- 401
- 403
- 404
- 409
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden
Response Headers
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Conflict
Response Headers
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.