GiftCards APIgiftcards.com ↗
Search the GiftCards.com catalog by keyword and retrieve actively discounted gift cards with coupon codes, denominations, and brand data via two endpoints.
What is the GiftCards API?
The GiftCards.com API exposes two endpoints for querying the site's gift card catalog: search_gift_cards for full-text product search with pagination, and get_discounted_cards for retrieving up to 50 currently promoted products with their active coupon codes and sales rules. Each product response includes brand names, available denominations, category assignments, badges, and configurable variants, giving developers structured access to the full public catalog.
curl -X GET 'https://api.parse.bot/scraper/bc97929b-0f5a-4876-9c35-f79451afc3a4/search_gift_cards?page=1&limit=5&query=visa' \ -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 giftcards-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.
from parse_apis.giftcards_com_api import GiftCards, GiftCard, DiscountedCard
client = GiftCards()
# Search for Visa gift cards
for card in client.giftcards.search(query="visa", limit=5):
print(card.name, card.brand_name, card.sku)
for variant in card.variants:
print(" Variant:", variant.product.name, variant.product.sku)
for amt in variant.product.giftcard_amounts:
print(" Amount:", amt.value)
# List currently discounted cards with coupon codes
for deal in client.discountedcards.list(limit=3):
print(deal.brand_name, deal.url_key)
for rule in deal.sales_rules:
print(" Discount:", rule.discount_amount, rule.display_name, rule.coupon)
Full-text search over giftcards.com product catalog. Returns paginated gift card products matching the query keyword, including brand info, available denominations, categories, badges, and configurable variants. An empty query returns all products. Paginates via integer page counter.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based). |
| limit | integer | Maximum number of results per page. |
| query | string | Search keyword to match against product names and brands. Empty string returns all products. |
{
"type": "object",
"fields": {
"products": "array of gift card product objects with name, brand_name, url_key, sku, currency, base_image, giftcard_amounts, categories, badges, and variants",
"total_count": "integer total number of matching products",
"total_pages": "integer total number of pages",
"current_page": "integer current page number"
},
"sample": {
"data": {
"products": [
{
"sku": "ZJTSJR1N9WK1JBWBQG3686G40C",
"name": "Starbucks",
"badges": [],
"url_key": "starbucks-gift-card",
"currency": "USD",
"variants": [
{
"product": {
"sku": "07675006121",
"name": "Starbucks Gift Card",
"giftcard_amounts": [
{
"value": 50
},
{
"value": 100
},
{
"value": 250
}
]
}
}
],
"base_image": "https://www.giftcards.com/content/dam/bhn/live/nam/us/en/catalog-assets/product-images/07675006121/07675006121_82516_master.png/_jcr_content/renditions/cq5dam.web.1280.1280.jpeg",
"brand_name": "Starbucks®",
"categories": [
{
"name": "Most Popular Gift Cards",
"url_key": "most-popular-gift-cards"
}
],
"giftcard_amounts": []
}
],
"total_count": 65,
"total_pages": 22,
"current_page": 1
},
"status": "success"
}
}About the GiftCards API
Searching the Gift Card Catalog
The search_gift_cards endpoint accepts three optional parameters: query (a keyword matched against product names and brands), page (1-based page number), and limit (results per page). An empty query string returns all available products. Each object in the products array includes name, brand_name, url_key, sku, currency, base_image, giftcard_amounts, categories, badges, and variants. The response also returns total_count, total_pages, and current_page to support cursor-free pagination across the full catalog.
Discounted Cards and Promotion Rules
The get_discounted_cards endpoint requires no input parameters and returns up to 50 gift card products that currently carry active promotions. Each item in the items array includes the standard product fields plus a sales_rules array, which contains the discount amount, display name, coupon code, and a text description of the promotion. This makes it straightforward to compare active discount rates across brands without any filtering logic on the client side.
Data Coverage
Both endpoints return denomination data in the giftcard_amounts field, allowing callers to see exactly which fixed values or ranges are available for each card. The badges field surfaces merchandising labels (such as "new" or "on sale") as assigned by GiftCards.com. Product URLs are derivable from the url_key field, which maps to each card's canonical path on the site.
The GiftCards API is a managed, monitored endpoint for giftcards.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when giftcards.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 giftcards.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?+
- Monitor active coupon codes and discount rates across all brands using
get_discounted_cardsandsales_rules. - Build a gift card price comparison tool by querying denominations and discount amounts for specific brands.
- Populate a gift card search feature in a rewards or cashback app using keyword-driven
search_gift_cardsresults. - Track badge changes (e.g. 'on sale', 'new') over time by polling
search_gift_cardswith an empty query. - Filter gift cards by category using the
categoriesfield returned in each product object. - Generate a curated list of discounted cards for a deals newsletter using coupon codes from
get_discounted_cards. - Build a brand directory by aggregating
brand_name,url_key, and availablegiftcard_amountsacross the full catalog.
| 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.
Does GiftCards.com have an official developer API?+
What does the `get_discounted_cards` endpoint actually return in `sales_rules`?+
sales_rules includes the discount amount, a display name for the promotion, the coupon code string, and a plain-text description. The endpoint returns up to 50 discounted products at a time and requires no input parameters.Can I filter `search_gift_cards` results by category or denomination?+
query, page, and limit as inputs. Category and denomination data are present in the response fields (categories, giftcard_amounts) and can be filtered client-side, but server-side filtering by those dimensions is not currently supported. You can fork this API on Parse and revise it to add category or denomination filter parameters.Does the API return individual gift card purchase history or balance data?+
How does pagination work in `search_gift_cards`?+
page parameter (1-based). The response includes total_count, total_pages, and current_page so callers can determine how many pages remain. The limit parameter controls results per page.