Skip to main content

Search Inventory Movements

POST 

/api/v2/inventory-movements

Returns the same paginated inventory movement audit trail as the GET version of this endpoint, but accepts filters as a JSON request body instead of the query string. Use this POST variant when the filter set is too large or too complex to fit in a URL.

Required scope: inventory:write

Grant this scope to your token under Settings → Developer → Personal Access Tokens.

Provide advanced filters under filter_groups, a tree of conditions combined with a conjunction of and or or. Each condition names a column, an operator, and a value. A free-text search term matches against id, SKU, product name, warehouse, and reference.

Text columns (type, inventory_status, link_type, reference, product_name, sku) accept: is, is_not, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty, is_one_of, is_not_one_of. Numeric and date columns (id, quantity, inventory_movement_date, created_at, updated_at) accept: is, is_not, greater_than, greater_than_or_equal, less_than, less_than_or_equal, between, is_empty, is_not_empty. The warehouse filter narrows by warehouse.

Sortable columns (via sort, prefix with - for descending): id, inventory_movement_date, quantity, type, inventory_status, reference, created_at, updated_at, warehouse_name, sku, product_name. Results default to -inventory_movement_date.

Request

Responses

OK

Response Headers
    Content-Type