Developer guide

How Card Perks API works

A plain-English tour of the platform, the data model, and how to query it. For exact request/response specs, see the API reference.

What Card Perks API is

Card Perks API is the canonical, machine-readable database of credit-card benefits. There has never been one clean, current source of truth for what every card actually offers — issuer guides are scattered PDFs that change quietly. We continuously gather, structure, and verify that data, then expose it through a single REST API your application can query.

Comprehensive
800+ cards across major U.S. issuers, with terms imported from public CFPB data and benefits structured into atomic records.
Structured
Every benefit is one typed, queryable record — no scraping HTML or parsing PDFs on your end.
Trustworthy
Each field carries a source, a confidence score, and a last-verified date.

The data model

Two objects: cards and benefits. A card has identity + terms (issuer, network, annual fee, FX fee) and a list of benefits. Every benefit is one atomic row with exactly one type — bundles are split apart, so "airline benefits" becomes a separate fee credit, a free-bag perk, and a priority-boarding status.

Benefits are organized on two axes: where it lives (categorysubcategory) and what it is (type). The type decides which fields appear inside the nested attributes object — that's where the real depth lives.

Every benefit also has a stable slug (e.g. chase-sapphire-reserve:300-annual-travel-credit) that never changes across re-ingestion, so you can rely on it as a key. Resolve any benefit with GET /v1/benefits/{id-or-slug}.

Benefit types

There are nine types. Fetch the live list (and the fields each carries) from GET /v1/types:

credit — Statement credits (travel, dining, rideshare…)
insurance — Travel coverage (trip delay, cancellation, baggage)
protection — Purchase coverage (cell phone, warranty, returns)
access — Lounges, expedited screening, presales
status — Airline/hotel/rental elite status
earning — Points/miles/cashback, welcome & anniversary bonuses
perk — Non-monetary entitlements (free bag, companion fare)
service — Concierge, roadside assistance
term — Card terms (annual fee, APR, FX fee)

Querying the data

The power of the typed model is that you can filter all the way down into a benefit's attributes:

# Cards whose cell-phone protection has a low deductible & high cap
GET /v1/benefits?type=protection&max_deductible=50&min_coverage=800

# Monthly auto-triggered credits over $15
GET /v1/benefits?type=credit&reset_cadence=monthly&min_value=15

# Priority Pass lounge access
GET /v1/benefits?type=access&provider_network=Priority%20Pass

Get a whole card with its benefits grouped by category via GET /v1/cards/{id}, browse the structure with GET /v1/taxonomy, or try everything live in the interactive playground.

Explore the data (no key needed)

Two public surfaces let you (and your users) feel the data before writing a line of code:

Card directory
Browse a human-readable page for every card we track at /cards — perks grouped by category, with value estimates and verification badges. These pages are indexable; the deep structured fields stay behind the API.
Live wallet demo
The perks wallet is a working app built entirely on this API — add the cards you hold and check off perks as you use them. Each card is one GET /v1/cards/{id} call; it's the kind of product you can ship on Card Perks in an afternoon.

How we verify data

Every benefit carries trust metadata so you can decide how much to rely on it:

  • source — the document and section a fact came from, plus a verbatim citation quoting the source line.
  • confidence — a 0–1 score blending extraction confidence, attribute completeness, verification, and freshness.
  • verified — whether the row was confirmed against an authoritative document.
  • last_verified_at — when we last checked it.

API keys & rate limits

Create a free account in the developer portal to generate API keys. Send your key as an X-API-Key header on every /v1 request. Each plan has a request rate limit; usage is metered per key and visible in your dashboard. A public read-only demo key powers the docs playground so you can try the API before signing up.

Plans & billing

Developer — Free
Generous free tier for prototyping and low-volume apps.
Growth — $49/mo
Higher rate limits and volume for production apps.
Enterprise — $499/mo
Highest limits, change-event webhooks, and priority support.

See full limits on the pricing page. Billing is handled securely through Stripe.