The following explains how to pull item data from Yellow Dog via the Fetch API.
| GET /items | Multiple items from any store unless filtered |
| GET /items/{itemId} | Details on a specific item from any store given its item id GUID. |
| GET /stores/{storeId}/items | Multiple items from a specific store unless filtered |
Of the above three endpoints that are able to retrieve item data, a two-way POS integration will generally use either GET /items or GET /stores/{storeId}/items. If all of the item data that the POS is interested in can be found in one store, GET /stores/{storeId}/items will help narrow the results to the relevant data. Otherwise, GET /items can return all item data in the entire database and the caller can take care of filtering what is needed.
Since the query parameters supported by these two endpoints are the same, it is relatively easy to start with either endpoint and change your mind later if necessary.
GET /stores/{storeId}/items?Expand=Stores&pageNumber=1&pageSize=100
For populating your initial datastore, it is best to make a call through all pages of the items endpoint with the proper expansion query parameters. From this point forward, you should be able to use the following lastUpdated example to refresh your datastore with only the changes that have occured in the item configuration.
GET /stores/{storeId}/items?Expand=Stores&filter=lastUpdated>=20260401
This request will return all the items that have a lastUpdated later than 2026-04-01. It is highly recommended that you use a request like this for updating your data store for the latest item configurations. It is recommended that the lastUpdated filter value be set as the last time the item refresh cycle began.
Note that if the update request does not specify pagination parameters, it will return no more than the default page size of 100 items. For this reason, you should at least check the response headers to make sure you have not missed any items in an update due to this limit. The frequency at which you check for updates will also influence the typical count in an update response and how much time goes by without having the latest item data.
When pulling item data, make sure to use the ?Expand=Stores query parameter to include store specific data. Even if you only care about the item data for one store, you will need this expansion parameter to get pricing information since Yellow Dog lists it under store specific data.
Yellow Dog allows a POS to define its own item annotation requirements to add POS specific data to items. See How to include POS specific item annotations for details.