Publix
Publix Weekly Ad API
The current Publix weekly ad for one store, in English: about 700 items, including about 230 Buy 1 Get 1 FREE deals, sale prices, multi-buys ("2 for $9.00"), Buy 2 Get 1 FREE and percent-off deals, with the ad's start_date and end_date. Florida ads run Thursday to Wednesday, Georgia and North Carolina ads Wednesday to Tuesday. Each item has savings_text as shown, a parsed deal_type, price, bundle, save_up_to, promotion and valid dates. Filter by department, BOGO only or text. 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/jsonstore_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: 1614
departmentstringOnly items of this department, 1-60 characters (a value of the answer's departments list, e.g. Meat, Produce, Deli, Wine).
Example: Produce
bogo_onlybooleanOnly Buy 1 Get 1 FREE and Buy 2 Get 1 FREE items.
Example: true
querystringOnly items whose title, description or brand contains this text, 1-100 characters.
Example: coffee
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# This week's BOGO list at three stores in three states.
for store_id in ("1614", "1825", "1453"): # Miami FL, Atlanta GA, Charlotte NC
r = client.publix.weekly_ad(store_id=store_id, bogo_only=True)["data"]
print(r["store"]["name"], r["ad"]["start_date"], r["ad"]["end_date"], r["count"])
for i in r["items"][:5]:
print(" ", i["deal_type"], i["title"], i["save_up_to"])Response