Read Stock level
const url = 'https://api.aerandil.com/v1/object-types/hospitality.stock_level/objects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.aerandil.com/v1/object-types/hospitality.stock_level/objects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>'Read an existing instance.
How much of one material one store holds — one row per material × store, linked stock_level_for_material and stock_level_in_store (the ids ride on the row too, so a store’s board filters without a walk). on_hand is a cache with one writer: every movement verb records its stock_movement and moves this figure in the same transaction, under the level’s lock; the movements are the truth and recount_stock_level folds them to check it. Never below zero unless the store allows it. Carries the reorder_point (OPERA’s par) and when it was last counted. Minted by the first movement (or reorder point) for the pair.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Object id (UUID v7, server-generated at create time).
Query Parameters
Section titled “Query Parameters”Read through an open branch’s copy-on-first-write overlay view instead of the canonical (main) plane. Does not compose with as_of (422). The branch must exist under the caller’s tenant.
Responses
Section titled “Responses”Object found.
object
object
Per-property source attribution and pins. An entry under properties means the property’s current value came from that source (on the source’s own clock, source_updated_at); an entry under pins is a human override protecting the property from sourced writes.
object
object
object
object
object
object
object
object
object
object
object
Example
{ "object_type": "hospitality.stock_level", "scope": { "level": "tenant" }}Headers
Section titled “Headers”Quoted strong validator (RFC 7232 §2.3) carrying the object’s monotonic version. Informational on the read path — object mutation goes through typed actions on /v1/actions/{action}/apply, not raw CRUD.
No object with that id (or soft-deleted).