Skip to main content

Release Planned Orders

POST 

/api/manufacturing/mrp/planned-orders/release

Carry planned orders out into real supply documents: a manufacturing order for make, one purchase order per supplier for buy, and a warehouse transfer for transfer. Authorization: requires the mrp.release permission and a token carrying the mrp:release scope (manufacturing:write also satisfies it). This is the one action that creates financially significant documents, so it is deliberately grantable separately from the rest of the plan. Selection payload — either an explicit list of ids, or every planned order matching a set of filters:

  • scope: selected (default) acts on ids; filtered acts on every row matching filter / filter_groups within mrp_run_id.
  • ids[]: planned-order ids. Required unless scope=filtered. At most 1000 — use scope=filtered beyond that. Ids that no longer exist come back as a 422 naming them (a planned order is replaced on every run, so a stale selection means the plan was re-run).
  • mrp_run_id: required when scope=filtered — the run the filters are resolved against.
  • exclude_ids[]: rows to leave out after selecting everything matching the filters (max 1000).
  • filter / filter_groups / sort: the same filters and sort GET /api/manufacturing/mrp/runs/{mrpRun}/planned-orders accepts, replayed to resolve the filtered set. One unusable row no longer aborts the batch: the response counts what was released and, per reason, what was skipped (skipped_warehouse, skipped_no_supplier, skipped_no_bom, skipped_no_source_warehouse, skipped_failed).
Required scope: mrp:release|manufacturing:write

Grant this scope to your token under Settings → Developer → Personal Access Tokens.

Request​

Responses​

OK

Response Headers
    Content-Type