Changes some of an item's name, description, category, price, cost, preferred vendor or vendor part number.
Requires ManageInventory and an Idempotency-Key header. Partial update: only the fields present in the body change; omitted (or null) fields are left alone, and "description": "" (or whitespace only) clears the description. The same rules as the Items page apply — renaming also renames every inventory unit of the item; a new unitPrice / cost is written to the item and its future stock only (existing units keep their own pricing, as with "push to existing inventory" left off); changing categoryId copies that category's properties onto the item. A rename to an active item's name is refused with 409. Optional optimistic concurrency: send the ETag from GET /api/v1/items/{id} as If-Match to get 412 instead of overwriting a change made in the meantime (the tag covers stock too, so a concurrent stock move also yields 412 — GET again and retry). Fires the item.updated webhook naming the changed fields. Permissions mirror the app exactly: name, price/cost and category are edited on the Items page under ManageInventory; description is edited only on the Item Templates page, so sending it (including "" to clear) additionally requires ManageTemplates (403 otherwise, nothing changed). The same applies to preferredVendorId (an active vendor of the organization; 0 removes the link) and vendorPartNumber ("" clears it), which the app edits on Item Templates → Edit; an unknown or inactive vendor is 422. Example: { "unitPrice": 1.35 } or { "preferredVendorId": 3, "vendorPartNumber": "PX-12C" }.
Request
- Base URL: https://app.flexonthejob.com
- URL: https://app.flexonthejob.com/api/v1/items/{id}
- Auth: HTTP bearer
Path parameters
Numeric item id.
Request body
Response
Updated; body is the item exactly as GET /api/v1/items/{id} returns it.
Changes
No recorded changes to this operation across all 1 revision of this API.