fetchLocationItems
The item catalogue at one location — every item and modifier option this organization sells there, with OneTablet's item ids and current availability. The discovery read setItemAvailability depends on.
Scope: items whose brand this organization owns, at a location this organization owns or operates a brand out of. An unknown or foreign locationId is NotFound.
Request
- locationIdstring
The location (kitchen) whose catalogue you want — the
idfromStoresApi.fetchLocations. Required; absent is400. A location that does not exist and one outside your organization's scope are the same404. - querystring
Case-insensitive name search.
- availableboolean
Filter to items currently available (or unavailable) at the location.
- pagePageRequest
Cursor pagination.
{
"locationId": "00000000-0000-0000-0000-000000000000",
"query": "<query>",
"available": true,
"page": {
"limit": 50,
"cursor": "<cursor>"
}
}Responses
- asOfstring<date-time>
When this response was assembled — UTC, ISO-8601. The availability values are read live at that moment; this is the freshness claim for the whole response.
- itemsItemAvailability[]
The page of items tracked at the location, sorted by name, restricted to items of brands your organization owns. Empty when nothing matches.
- nextCursorstring
Opaque cursor for the next page. Absent means the last page.
About Item availability
Item availability ("86-ing") — mark one item available or unavailable at one kitchen (ONE-2621, single-item shape per ONE-2904).
fetchLocationItems and setItemAvailability are ONE indivisible unit: the write is useless without the discovery read, because a partner cannot know OneTablet's item ids in advance.
NOT IMPLEMENTED ON THIS API: replay via Idempotency-Key (the published contract's parameter promises it, and nothing on the platform implements idempotent replay today; a retried setItemAvailability call re-applies rather than de-duplicating). ONE-2621 research and decision 3.