Free inventory REST API

Read pools and movements or submit authenticated stock adjustments through the versioned Free API.

Reviewed 2026-08-15

Free registers authenticated routes under laqi-lusm/v1. Requests must be made as a WordPress user with manage_woocommerce; cookie authentication also requires a valid REST nonce. Do not expose administrator credentials in a browser or external client.

List pools

GET /wp-json/laqi-lusm/v1/pools

Use the optional search parameter to match pools and linked product context. Responses use normalized, versioned inventory data intended for administrative clients.

Adjust one pool

POST /wp-json/laqi-lusm/v1/pools/{id}/adjustments

Submit the adjustment mode, quantity, unit, and reason expected by the route schema. The endpoint uses the same stock-adjustment and atomic mutation services as the Stock tab; it is not a direct database write. Invalid units, incompatible families, insufficient stock, or malformed quantities return an error and do not partially mutate the pool.

Supply an idempotency value when supported by the client workflow so retrying a request cannot create the same movement twice.

List movements

GET /wp-json/laqi-lusm/v1/movements

Use this endpoint for operational reads, not to reconstruct balances by summing arbitrary client-side results. The pool record remains the authoritative current balance and each movement records the resulting balance at that point.

Extension boundary

Free exposes a versioned extension context for supported internal integrations. Pro attaches to that context without replacing the inventory engine. Production balance changes must still pass through the mutation service; integrations should never update plugin tables directly.

Pro adds authenticated endpoints for SKU/barcode scan lookup, mobile stocktake, and external movements. See CSV and external integrations and Mobile stocktaking.

Integration safety

  • Treat numeric quantities as decimal strings in the stated unit, not binary floating-point values.
  • Keep a stable external event or idempotency key.
  • Record a meaningful source and reason.
  • Handle HTTP errors before retrying.
  • Read the returned movement and balance instead of assuming the requested mutation succeeded.
  • Test against a non-production pool and verify the resulting Activity entries before enabling a write integration.

Still need help?

Tell us what you are trying to do and where you got stuck.

Contact support