The Inventory API reads and moves the stock an MSP keeps on hand: quantities by location, serialized units, and the purchase orders, receipts, transfers, and counts that change them. Use it to feed warehouse tooling, barcode scanners, and procurement automation.
GET /inventory/stock lists quantities, filterable by location_id, service_id, client_id, and a low_stock flag for reorder checks. GET /inventory/stock-locations lists the places stock can live, and /inventory/units tracks individual serialized units through to the asset they become. For scanner integrations, GET /inventory/lookup resolves a scanned barcode or identifier in one call.
curl "https://algapsa.com/api/v1/inventory/lookup?code=889349114032" \
-H "X-API-Key: $ALGA_API_KEY"Incoming hardware flows through purchase orders: list them with GET /inventory/purchase-orders and book arrivals with POST /inventory/purchase-orders/{poId}/lines/{lineId}/receive. Stock that arrives outside a PO is booked with POST /inventory/receipts. Between locations, list in-flight moves with GET /inventory/transfers and confirm arrival with POST /inventory/transfers/{transferId}/receive. One-off corrections go through POST /inventory/adjustments.
Physical counts are session-based: POST /inventory/counts starts a session, POST /inventory/counts/{sessionId}/records records each counted quantity, and POST /inventory/counts/{sessionId}/submit closes the session and applies the results.
Every endpoint links through to its full parameters, request and response schemas, and code samples.
POST/api/v1/inventory/adjustmentsAlgaPSAAdjust stockGET/api/v1/inventory/countsAlgaPSAList cycle count sessionsPOST/api/v1/inventory/countsAlgaPSAStart a cycle count sessionGET/api/v1/inventory/counts/{sessionId}AlgaPSAGet a cycle count sessionPOST/api/v1/inventory/counts/{sessionId}/recordsAlgaPSARecord a cycle count quantityPOST/api/v1/inventory/counts/{sessionId}/submitAlgaPSASubmit a cycle count sessionGET/api/v1/inventory/lookupAlgaPSALook up an inventory barcode or identifierGET/api/v1/inventory/purchase-ordersAlgaPSAList purchase ordersGET/api/v1/inventory/purchase-orders/{poId}AlgaPSAGet a purchase orderPOST/api/v1/inventory/purchase-orders/{poId}/lines/{lineId}/receiveAlgaPSAReceive a purchase-order linePOST/api/v1/inventory/receiptsAlgaPSAReceive stock manuallyGET/api/v1/inventory/stockAlgaPSAList stock levelsGET/api/v1/inventory/stock-locationsAlgaPSAList stock locationsGET/api/v1/inventory/transfersAlgaPSAList stock transfersPOST/api/v1/inventory/transfers/{transferId}/receiveAlgaPSAReceive a stock transferGET/api/v1/inventory/unitsAlgaPSAList serialized stock unitsGET/api/v1/inventory/units/{unitId}AlgaPSAGet a serialized stock unit