Publix store locator
Publix stores near a ZIP code: store number, name, address, phone, pharmacy and liquor store phones and hours, store hours, coordinates, distance, type, status, departments, services, opening date and image, plus raw.
Every response includes credits_used: the credits this call cost.
Part of the Publix API: 6 endpoints with prices, use cases and example responses.
Parameters
| name | type | description |
|---|---|---|
ziprequired | string | 5-digit ZIP code. Example: 33801 |
limit | integer | Stores (default 15, max 50). |
types | string | Store types, comma-separated: R Publix, G GreenWise Market, H Pharmacy, N Publix Sushi, S Publix Liquors (default all). |
Every endpoint also takes fresh, raw, fields (see lean responses and caching).
Example
curl "https://api.api.sh/publix/v1/stores?zip=33801" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/publix/v1/stores",
params={"zip": "33801"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/publix/v1/stores");
url.searchParams.set("zip", "33801");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).
Example response (real call, trimmed: lists cut to 2 items, long text shortened, raw left out)
{"zip": "33801","count": 15,"stores": [{"store_id": 1651,"name": "Grove Park Shopping Center","address": "1617 US Hwy 98 S","city": "Lakeland","state": "FL","zip": "33801","phone": "+1 555 010 0000","pharmacy_phone": "+1 555 010 0000","liquor_phone": "+1 555 010 0000","hours": "Sun 7:00 AM - 10:00 PM,Mon 7:00 AM - 10:00 PM,Tues 7:00 AM - 10:00 PM,Wed 7:00 AM - 10:00 PM,Thurs 7:00 AM - 10:00 PM,Fri 7:00 AM - 10:00 PM…","pharmacy_hours": "Sun 11:00 AM - 6:00 PM,Mon 9:00 AM - 9:00 PM,Tues 9:00 AM - 9:00 PM,Wed 9:00 AM - 9:00 PM,Thurs 9:00 AM - 9:00 PM,Fri 9:00 AM - 9:00 PM,Sat …","liquor_hours": "Sun 10:00 AM - 10:00 PM,Mon 10:00 AM - 10:00 PM,Tues 10:00 AM - 10:00 PM,Wed 10:00 AM - 10:00 PM,Thurs 10:00 AM - 10:00 PM,Fri 10:00 AM - 10…","latitude": 28.023309,"longitude": -81.92622,"distance_miles": 2,"type": "Publix","status": null,"departments": ["Publix Bakery","Publix Deli","… 4 more"],"services": ["Money Order Sales","Money Transfers","… 4 more"],"opened": "6/27/2019 12:00:00 AM","image": "https://images.publixcdn.com/pct/images/static/StoreFront/001651-828x498.png","short_name": "Grove Park","time_zone": "Eastern Standard Time"},{"store_id": 1270,"name": "Southgate Shopping Center","address": "2515 S Florida Ave","city": "Lakeland","state": "FL","zip": "33803-3858","phone": "+1 555 010 0000","pharmacy_phone": "+1 555 010 0000","liquor_phone": "+1 555 010 0000","hours": "Sun 7:00 AM - 10:00 PM,Mon 7:00 AM - 10:00 PM,Tues 7:00 AM - 10:00 PM,Wed 7:00 AM - 10:00 PM,Thurs 7:00 AM - 10:00 PM,Fri 7:00 AM - 10:00 PM…","pharmacy_hours": "Sun 11:00 AM - 6:00 PM,Mon 9:00 AM - 9:00 PM,Tues 9:00 AM - 9:00 PM,Wed 9:00 AM - 9:00 PM,Thurs 9:00 AM - 9:00 PM,Fri 9:00 AM - 9:00 PM,Sat …","liquor_hours": "Sun 10:00 AM - 9:00 PM,Mon 10:00 AM - 9:00 PM,Tues 10:00 AM - 9:00 PM,Wed 10:00 AM - 9:00 PM,Thurs 10:00 AM - 9:00 PM,Fri 10:00 AM - 9:00 PM…","latitude": 28.014845,"longitude": -81.958494,"distance_miles": 4,"type": "Publix","status": null,"departments": ["Publix Bakery","Publix Deli","… 4 more"],"services": ["Money Order Sales","Money Transfers","… 4 more"],"opened": "10/1/2009 12:00:00 AM","image": "https://images.publixcdn.com/pct/images/static/StoreFront/001270-828x498.png","short_name": "Southgate S/C","time_zone": "Eastern Standard Time"},"… 13 more"],"cached": false,"credits_used": 1}