Skip to content
Proofwork Docs

Inventory Tracking

Proofwork lets you log inventory usage directly in the field — no separate system, no double entry.

In Proofwork, anything you track is a Thing, and every Thing belongs to a Thing type you declare for your account. You choose the names — Gate, Lawn Mower, Cement, Delivery Site — because the vocabulary is yours, not ours.

Each type declares how its things are tracked:

  • Quantity — a kind of stuff you measure (cement, diesel, cable). The type carries the unit, and each log records how much moved.
  • State — one particular object with a current condition (that gate, that lawn mower). The type declares the valid states — open / closed, repairing / out / unavailable — so a recorded state is always one of a known set.

Types live on the Things screens, under Thing Types (/things/types). They can be reordered, and are archived rather than deleted, because things, requirements and automation rules all reference them. A thing’s current quantity or state is a projection over its events, not a stored column.

When a worker uses a quantity-tracked thing on site:

  1. They select the thing
  2. Enter the quantity used, in the type’s unit
  3. The event is logged — time, location, worker, quantity

Every thing has a history — see where it’s been, who used it, and when. Filter by date range or workflow.

Because a quantity-tracked thing’s amount is the running sum of its thing.qty_moved events, current stock and usage over any date range are queryable from the event ledger — there is no separate stock column to keep in sync.

GET /api/v1/things
GET /api/v1/things?q=gate&label_id=3

Full CRUD via REST API. See the API overview for details.