/open-data/transfer-partners.json
43 bank and card currencies, 500 transfer paths with ratios, card-tier ratios, announced changes and the 11 transfer bonuses running when it was built.
The data behind Points or Cash, as free JSON. No key, no sign-up. Sourced, dated, and the same tables our MCP tools answer from.
Two free JSON files, no key needed: https://pointsorcash.app/open-data/transfer-partners.json (every bank-to-airline and hotel transfer ratio, plus active bonuses) and https://pointsorcash.app/open-data/award-chart.json (typical saver award prices). CC BY 4.0.
GET, no key, JSON (UTF-8), CORS open to every origin, cached for an hour.
43 bank and card currencies, 500 transfer paths with ratios, card-tier ratios, announced changes and the 11 transfer bonuses running when it was built.
Typical one-way saver prices for 22 airline programs, by market (from the US or from Europe) and cabin, with taxes and a confidence rating.
curl https://pointsorcash.app/open-data/transfer-partners.json
Every file starts with the same metadata. Keys are always present; a missing value is null.
site, name, description, url, docsWhat the file is and where it lives.
generated_atWhen the file was built (ISO 8601, UTC). It is rebuilt on every deploy.
as_ofThe research dates behind the data, per source file. Each program also has its own checked date.
method, sourcesHow the numbers are collected, and where from.
license, license_url, attributionCC BY 4.0: free to reuse, including commercially, with credit and a link to Points or Cash.
programs[].partners[].ratioBank points : partner points, as the bank publishes it (for example "1:1" or "4:3").
programs[].partners[].partner_points_per_pointThe partner points one bank point becomes (a number).
programs[].partners[].active_bonusA confirmed temporary bonus running on generated_at, with its end date; null when there is none.
programs[].markets[market][cabin]Award chart only: the typical saver price as a string ("32500", "from 6000"), or null.
Shortened to one program, one partner and one bonus.
{
"site": "https://pointsorcash.app",
"name": "Credit card points transfer partners",
"generated_at": "2026-11-12T00:10:25.787Z",
"as_of": {
"transfer_partners": "2026-11-02",
"transfer_bonuses": "2026-11-09"
},
"license": "CC BY 4.0",
"counts": {
"programs": 43,
"partners": 500,
"active_bonuses": 11
},
"programs": [
{
"id": "chase_ur",
"name": "Chase Ultimate Rewards",
"kind": "credit_card_points",
"country": "US",
"checked": "2026-11-01",
"source_urls": [
"https://www.chase.com/sapphire-cards/personal/preferred"
],
"notes": "…",
"partners": [
{
"id": "avios_aerlingus",
"name": "Aer Lingus AerClub (Avios)",
"type": "airline",
"ratio": "1:1",
"partner_points_per_point": 1,
"transfer_time": "instant",
"alt_ratios": [],
"scheduled_change": null,
"active_bonus": {
"bonus_pct": 30,
"ratio_with_bonus": "1:1.3",
"starts": "2026-11-01",
"ends": "2026-12-01",
"targeted": false
},
"notes": null
}
]
}
],
"active_bonuses": [
{
"bank": "chase_ur",
"partner": "ihg",
"partner_name": "IHG One Rewards",
"region": "US",
"bonus_pct": 80,
"ratio_with_bonus": "1:1.8",
"starts": "2026-11-01",
"ends": "2026-12-03",
"targeted": false,
"notes": "…",
"sources": [
"https://www.doctorofcredit.com/chase-ultimate-rewards-80-transfer-bonus-to-ihg-11-8-5/",
"https://thepointsparty.com/articles/chase-transfer-bonuses-avios-ihg-wyndham-november-2026"
]
}
]
}
Ratios are read from each bank's own transfer-partner pages for the country that issues the card and checked weekly; each program carries the date it was last checked. ratio is bank points : partner points as published; partner_points_per_point is the partner points one bank point becomes. alt_ratios lists other ratios for some cards (for example Citi's non-premium cards); scheduled_change is an announced change with its date. active_bonus is a confirmed temporary bonus running on generated_at; check its end date. Transfer times are typical, not guaranteed.
One-way, per person, the lowest published (saver) level, in the program's own miles or points. Prices are strings as published ("32500", "from 6000"); null means no price for that cabin. Dynamic programs vary by date, so these are typical levels, not live availability. confidence: high (official chart, checked against several sources), medium (a reputable secondary source from 2025-2026), low (an estimate or conflicting sources).
Sources: The banks' official transfer-partner pages (source_urls on each program). Typical transfer times are mostly from AwardWallet's crowd-sourced reports. Bonuses come from the bank's announcement or the sites listed in active_bonuses[].sources. Program award charts where they can be read, otherwise points and miles publications; each program lists its sources with dates. Licence: CC BY 4.0. More data: the Points Ratio Index and points and miles statistics (JSON and CSV downloads). For AI assistants: the MCP server.
No. Send a plain GET request. The files are static, served with CORS open to every origin, so they work from a browser too.
The ratios were last checked on 2026-11-02 and the bonuses on 2026-11-09. We check ratios weekly; the files are rebuilt with every deploy. Always check the bank's own page before you transfer: transfers can't be undone.
Yes, under CC BY 4.0: credit Points or Cash and link to pointsorcash.app. Bank, airline and hotel names belong to their owners.
No. The award chart holds typical saver prices, not seats. For questions in plain language (points or cash for a trip, cents per point), use the MCP server.