Publix
Publix Product API
One Publix product by item code at one store: the product card (title, brand, size, description, image, url, category path, the aisle at that store, on_sale, the price and promo as the site shows them, has_coupon) plus its nutrition facts. Order-ahead deli and bakery items also carry short_description, lead_time, serves and calories, and a deli sub has one nutrition label per component and size. Ingredients, allergens, UPC and reviews are not published by Publix online. Costs 1 credit per request.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonitem_codestring | integerrequiredA Publix item code (items[].item_code of search, category or order-ahead), 1-8 digits. Not a UPC: Publix does not publish UPCs online.
Example: 90355
store_idstring | integerrequiredA Publix store number (stores[].store_id of the stores endpoint, found by ZIP or city), 1-5 digits. Prices, promotions and aisles are this store's, and the answer echoes the store (id, name).
Example: 1825
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# The Chicken Tender Pub Sub at store 1825 (Atlanta) and its nutrition labels.
p = client.publix.product(item_code="90355", store_id="1825")["data"]
print(p["title"], p["price_text"], p["lead_time"], p["calories"])
for label in p["nutrition"] or []:
cal = next((n["value"] for n in label["nutrients"] if n["name"] == "Calories"), None)
print(label["size"], label["title"], cal)Response