Thekrazycouponlady APIthekrazycouponlady.com ↗
Access current manufacturer coupons from The Krazy Coupon Lady. Filter by brand, store, and category. Get discount values, expiration dates, and offer links.
What is the Thekrazycouponlady API?
The Krazy Coupon Lady API exposes 2 endpoints that return current grocery and drugstore manufacturer coupons, each with up to 11 fields including discount value, expiration date, brand, store, and a direct offer link. The list_coupons endpoint supports filtering by brand, store, and category slugs with paginated results, while get_coupon returns full details for a single coupon including legal copy and redemption terms.
curl -X GET 'https://api.parse.bot/scraper/fb7215b2-24b9-4ccf-ac78-9fec44236769/list_coupons?page=1&limit=5' \ -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 thekrazycouponlady-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: KrazyCouponLady SDK — bounded, re-runnable; every call capped."""
from parse_apis.thekrazycouponlady_com_api import KrazyCouponLady, CouponNotFound
client = KrazyCouponLady()
# List current coupons, capped at 3
for coupon in client.coupons.list(limit=3):
print(coupon.title, coupon.description, coupon.store, coupon.expiration)
# Drill down: get the first coupon's full details
item = client.coupons.list(limit=1).first()
try:
full = client.coupons.get(coupon_id=item.id)
print(full.title, full.description, full.store, full.expiration)
except CouponNotFound as e:
print(f"coupon gone: {e.coupon_id}")
# Filter by store
for coupon in client.coupons.list(store="cvs", limit=2):
print(coupon.discount, coupon.brand, coupon.categories)
print("exercised: coupons.list, coupons.get")
List current unexpired manufacturer coupons for grocery and drugstore products. Results are sorted by most recently updated. Each coupon includes discount value, product description, redeemable store, brand, categories, expiration date, and a direct offer link. Results are auto-iterated across pages.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| brand | string | Filter by brand slug (e.g. 'dove', 'fleet', 'crest'). Omit to include all brands. |
| limit | integer | Number of coupons per page (1-100). |
| store | string | Filter by store slug (e.g. 'cvs', 'walgreens', 'kroger'). Omit to include all stores. |
| category | string | Filter by category slug (e.g. 'body-wash', 'medicine', 'personal-care', 'beauty'). Omit to include all categories. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"coupons": "array of coupon objects with id, title, description, discount, brand, store, categories, expiration, start_date, offer_link, image_url",
"has_next": "boolean indicating if more pages are available",
"total_count": "integer total number of coupons returned in this page"
},
"sample": {
"data": {
"page": 1,
"coupons": [
{
"id": "TCB_811200030132076643",
"brand": "Fleet",
"store": "CVS",
"title": "Save $3.00",
"discount": "Save $3.00",
"image_url": "https://images.ctfassets.net/nie44ndm9bqr/TCB_811200030132076643/1782925706777/IMG_TCB_811200030132076643.jpg",
"categories": [
"household supplies",
"Medicine",
"Personal Care"
],
"expiration": "2026-08-16T09:59:59.000Z",
"offer_link": "https://thekrazycouponlady.com/coupons?couponId=TCB_811200030132076643",
"start_date": "2026-06-05T04:00:00.000Z",
"description": "on any ONE (1) Mini Enema"
}
],
"has_next": true,
"total_count": 5
},
"status": "success"
}
}About the Thekrazycouponlady API
What the API Returns
The list_coupons endpoint returns an array of coupon objects, each carrying a unique id, title (e.g. "Save $4.00"), description, discount value string, brand, store, categories, expiration date, start_date, offer_link, and image URL. Results are sorted by most recently updated and are filtered to unexpired coupons only. The response also includes page, has_next, and total_count fields to support pagination.
Filtering and Pagination
list_coupons accepts brand, store, and category as optional slug-style string filters — for example, brand=dove, store=cvs, or category=personal-care. You can combine these to narrow results to a specific product segment. The limit parameter (1–100) controls page size, and the page parameter steps through results. When has_next is true, increment page to retrieve the next batch.
Single Coupon Detail
The get_coupon endpoint takes a coupon_id obtained from list_coupons results (e.g. TCB_8112010011111149067) and returns the full coupon record. This includes all fields from the list endpoint plus legal_copy, which contains the full redemption terms when the source provides them. This is useful when building features that display fine-print text or validate coupon eligibility rules.
The Thekrazycouponlady API is a managed, monitored endpoint for thekrazycouponlady.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when thekrazycouponlady.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 thekrazycouponlady.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 grocery savings app that surfaces unexpired coupons filtered by store (e.g. Walgreens or Kroger) and displays discount values alongside expiration dates
- Aggregate manufacturer coupons by category slug (e.g. 'body-wash', 'medicine') to power a category-browsing deal feed
- Send expiration-aware coupon alerts by querying
list_couponsdaily and comparingexpirationfields against the current date - Populate a brand-specific deal page by filtering
list_couponswith abrandslug and linking out viaoffer_link - Display full redemption terms in a coupon detail view by calling
get_couponand rendering thelegal_copyfield - Track new coupon availability over time by monitoring
start_datevalues across paginatedlist_couponsresponses
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does The Krazy Coupon Lady have an official developer API?+
What does the `list_coupons` endpoint return and how do the filters work?+
id, title, discount, brand, store, categories, expiration, start_date, offer_link, and image. You can narrow results using any combination of the brand, store, and category slug parameters. Omitting a filter returns all values for that dimension.Is coupon data available for all stores, or only certain retailers?+
Does the API return historical or expired coupons?+
list_coupons returns only current, unexpired coupons — it does not expose a historical archive of past or expired offers. The expiration field on each coupon reflects the cutoff date. You can fork this API on Parse and revise it to build a separate endpoint that tracks and stores expired coupon records over time.What is the `legal_copy` field in `get_coupon` and is it always present?+
legal_copy contains the full redemption terms and fine-print text for a coupon when the source provides it. It is not guaranteed to be present on every coupon — the field is included when available. For coupons without it, the field will be absent or null. Use get_coupon with the coupon_id from list_coupons to retrieve it.