PurrOSDocs

Inventory

Items, stock levels and the stock ledger, adjustments, waste, counts, transfers and usage recipes.

For how this area works day to day, see the Inventory guide.

Webhook events: item.created, item.updated, stock.level_changed, stock.below_reorder_point, stock_count.posted, waste.recorded, transfer.sent, transfer.received, transfer.discrepancy. See Webhooks.

All paths are relative to /api/v1. Key is the scope an integration key needs, People the permission a signed-in person or personal key needs, and Feature the feature switch the endpoint belongs to. See how to read this reference.

  • POST/inventory/adjustments

    Adjust stock

    Keyinventory:write
    Peopleinventory.adjust
    Featureinventory
  • POST/inventory/waste

    Record waste or shrink

    Keyinventory:write
    Peoplewaste.record
    Featureinventory.waste
  • GET/items

    List items

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • POST/items

    Create an item

    Keyinventory:write
    Peopleitems.manage
    Featureinventory
  • GET/items/external/{externalId}

    Get an item by external ID

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • PUT/items/external/{externalId}

    Create or replace an item by external ID

    Keyinventory:write
    Peopleitems.manage
    Featureinventory
  • GET/items/{id}

    Get an item

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • PATCH/items/{id}

    Update an item (partial)

    Keyinventory:write
    Peopleitems.manage
    Featureinventory
  • GET/stock-counts

    List stock counts

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • POST/stock-counts

    Enter a stock count

    Keyinventory:write
    Peoplestock_counts.count
    Featureinventory
  • GET/stock-counts/{id}

    Get a stock count with variances

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • POST/stock-counts/{id}:cancel

    Cancel an open count

    Keyinventory:write
    Peoplestock_counts.manage
    Featureinventory
  • POST/stock-counts/{id}:post

    Post a count to the stock ledger

    Keyinventory:write
    Peoplestock_counts.manage
    Featureinventory
  • GET/stock-levels

    Stock on hand, reserved and available

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • POST/stock-levels:configure

    Set par level and reorder point for an item at a location

    Keyinventory:write
    Peopleitems.manage
    Featureinventory
  • GET/stock-movements

    The stock ledger

    Keyinventory:read
    Peopleinventory.read
    Featureinventory
  • GET/transfers

    List transfers

    Keyinventory:read
    Peopleinventory.read
    Featureinventory.transfers
  • POST/transfers

    Send stock to another location

    Keyinventory:write
    Peopletransfers.manage
    Featureinventory.transfers
  • GET/transfers/{id}

    Get a transfer

    Keyinventory:read
    Peopleinventory.read
    Featureinventory.transfers
  • POST/transfers/{id}:receive

    Confirm what arrived

    Keyinventory:write
    Peopletransfers.manage
    Featureinventory.transfers
  • GET/usage-recipes/{itemId}

    What one unit of a sold item uses

    Keyinventory:read
    Peopleinventory.read
    Featureinventory.usage_recipes
  • PUT/usage-recipes/{itemId}

    Replace a usage recipe

    Keyinventory:write
    Peopleusage_recipes.manage
    Featureinventory.usage_recipes