Manage Inventory
POST/api/inventories/manageinventory
Tier: Internal — subject to change without notice.
The place-manager approve/reject action for a parked stocktake (state ValidationFailed or PendingApproval).
Enums.ApprovalState on the request DTO is
int-serialized (no StringEnumConverter), unlike most enums in this domain.
Request
Responses
- 200
- 400
- 401
- 403
Same response shapes as InventoryController.ResolveInventory(...) (per ReturnResultDto).
Approve runs the full item-state/place cascade and moves the stocktake to
Complete, writing a backdated Approved transaction row followed by a
Completed row. Reject applies no item changes and moves the stocktake to
Rejected (terminal), writing a Rejected transaction row with the supplied
comment.
Unknown id — NotFound; the caller is not a place manager of the stocktake's place
(agents always fail this check) — InvalidOperation ("PlaceManager"); the
stocktake is not in PendingApproval or ValidationFailed —
InvalidOperation ("InventoryState"); processing-gate/other exceptions as in
InventoryController.ResolveInventory(...).
Caller is not authenticated.
Caller does not have Update permission on the Inventory module.