Albertsons APIalbertsons.com ↗
Access Albertsons weekly ad deals, discounted products with pricing, and search autocomplete suggestions by store location or zip code.
What is the Albertsons API?
This API exposes 3 endpoints for accessing Albertsons grocery store weekly ad data and product search. Use get_weekly_ads to retrieve all active flyer publications for a given store location, get_weekly_ad_products to pull every discounted item from a specific publication — including sale prices, BOGO and multi-buy deal descriptions, brand names, and categories — and search_suggestions to fetch up to 20 autocomplete results for any product query.
curl -X GET 'https://api.parse.bot/scraper/81605bed-6622-4070-865a-6230c00c3748/get_weekly_ads?store_code=177&postal_code=83713' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace albertsons-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Albertsons Weekly Ad & Search — browse deals, filter by category, search suggestions."""
from parse_apis.albertsons_weekly_ad___search_api import Albertsons, Category, StoreNotFound
client = Albertsons()
# List current weekly ads for a store location
for ad in client.ads.list(store_code="177", postal_code="83713", limit=5):
print(ad.name, ad.valid_from, ad.total_pages, "pages")
# Drill into the first ad's products filtered by category
ad = client.ads.list(store_code="177", limit=1).first()
if ad:
for product in ad.products.list(category=Category.BEVERAGES, limit=5):
print(product.name, product.price_text, product.categories)
# Search autocomplete suggestions
suggestion = client.suggestions.search(query="chicken", limit=1).first()
if suggestion:
print(suggestion.display_query, suggestion.departments, suggestion.brands)
# Typed error handling for invalid store
try:
for a in client.ads.list(store_code="99999999", limit=3):
print(a.name)
except StoreNotFound as exc:
print(f"Store not found: {exc.store_code}")
print("exercised: ads.list / ad.products.list / suggestions.search / StoreNotFound")
Get list of current weekly ad publications (flyers) for a given store location. Returns all active weekly ads including the main Weekly Ad, Bonus Online Savings, Big Book of Savings, etc. The store_code takes precedence over postal_code when both are provided.
| Param | Type | Description |
|---|---|---|
| store_code | string | Albertsons store ID number. Takes precedence over postal_code for determining which ads to return. Invalid store codes result in an upstream 422 error. |
| postal_code | string | US postal/zip code for the store location. Used alongside store_code; when store_code is set, postal_code does not independently change results. |
{
"type": "object",
"fields": {
"ads": "array of ad objects with id, name, description, valid_from, valid_to, total_pages, postal_code, validity_text, thumbnail_url, flyer_type, merchant_name",
"total_ads": "integer count of active ads",
"store_code": "string store ID used",
"postal_code": "string postal code used"
}
}About the Albertsons API
Weekly Ad Publications
The get_weekly_ads endpoint returns all active flyer publications for a store location, identified by either store_code (an Albertsons store ID) or postal_code. When both are provided, store_code takes precedence. Each ad object in the ads array includes fields like id, name, description, valid_from, valid_to, total_pages, validity_text, and thumbnail_url. Publications returned can include the main Weekly Ad, Bonus Online Savings, Big Book of Savings, and others depending on the location. The total_ads field gives a count of active ads at that location.
Discounted Products from a Weekly Ad
The get_weekly_ad_products endpoint accepts a publication_id from the ads[*].id field returned by get_weekly_ads. If no publication_id is supplied, the endpoint falls back to fetching the main weekly ad for the location specified via store_code or postal_code. Each product object in the products array includes id, name, brand, description, sale_story, pre_price_text, price_text, post_price_text, and original_price. The optional category parameter filters results by category name using a case-insensitive partial match; verified category names include Fruits & Vegetables and similar department labels.
Search Autocomplete
The search_suggestions endpoint takes a single required query string — such as "milk", "chicken", or "bread" — and returns up to 20 suggestion objects. Each suggestion carries a query, display_query, and optionally departments and brands arrays for filtering context. The first suggestion in the list typically contains these department and brand metadata fields; the remaining suggestions carry only query text. The total_suggestions field reflects how many results were returned.
The Albertsons API is a managed, monitored endpoint for albertsons.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when albertsons.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official albertsons.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a weekly grocery deal tracker that surfaces current Albertsons promotions by zip code using get_weekly_ads and get_weekly_ad_products.
- Power a price comparison tool by pulling sale_story, price_text, and original_price fields from weekly ad products across multiple store locations.
- Filter discounted produce using the category parameter on get_weekly_ad_products to show only Fruits & Vegetables deals.
- Implement a grocery search bar with autocomplete backed by search_suggestions, including department and brand filter metadata from the first suggestion.
- Send automated weekly deal digests by scheduling get_weekly_ad_products calls and comparing valid_from and valid_to dates across publications.
- Identify BOGO and multi-buy deals programmatically by parsing the sale_story and description fields from the products array.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.