Creates a standalone transfer of stock from one location to another (Transfers → Create).
Requires ManageTransfers and an Idempotency-Key header. Body: { "sourceLocationId": 1, "destinationLocationId": 4, "notes": "Restock van 2", "lines": [ { "itemId": 12, "quantity": 3 } ] }. For each line the server picks the concrete units the way stock moves do: units of that item at exactly sourceLocationId (not its child locations) that are not in transit, not in a bundle and not already on an open transfer — fewest units consumed, then oldest first. The units are grouped into transfer lines and the transfer is created Pending. When its value reaches the organization's approval threshold it also gets an approval request (approvalStatus``Pending, managers are emailed) and must be approved (POST /api/v1/transfers/{id}/approve, which moves it straight to InTransit) or rejected before anything else can happen. Otherwise the lifecycle is POST …/pick → POST …/start → POST …/complete (or POST …/cancel while Pending). Nothing is written unless every line can be filled. Returns the new transfer; its Location header is /api/v1/transfers/{id}.
Request
- Base URL: https://app.flexonthejob.com
- URL: https://app.flexonthejob.com/api/v1/transfers
- Auth: HTTP bearer
Request body
Response
The created transfer with its lines.
Changes
No recorded changes to this operation across all 1 revision of this API.