Good Games API

What Good Games Australia charges for every card in each condition, and how many are left

endpoints
6
credits per call
1–5

The Good Games API returns goodgames.com.au, the Australian trading-card and board-game retailer, as clean JSON in Australian dollars.

POST/goodgames/v1/search
Real result, captured Nov 8, 20263 of 15
titleprice_audnamegame
Charizard V 018/159 (SWSH: Crown Zenith) - Holofoil2.6 AUDCharizard Vpokemon
Charizard ex [redacted-phone]/091 (SV: Paldean Fates) - Holofoil2 AUDCharizard ex 054 091pokemon
Charizard VMAX Secret 74/73 (Champion's Path) - Holofoil71.6 AUDCharizard VMAX Secretpokemon
6 active endpoints, on 1 and 5 credit tiers.search · product · sets · filters · collections · suggestDetails ↓OpenAPI 3.0 spec ↗

1 credit per call≈ $1/1,000 calls1,000 free credits, no card

Get a free API key
Try it live

Run the call yourself, on the real endpoint

Change a parameter and press Try it. The response on the right is what your code will receive.

Good Games API

3 of 6 endpoints, ready to run

View docs ↗

One row per card with a price and live stock for each of its five conditions, in AUD.

1 credit0 required · 5 optional
POST/goodgames/v1/search
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

Try every endpoint in the playground

Endpoints

What Good Games endpoints does ReefAPI ship?

6 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

  • search

    1 cr

    Search Good Games by name or card number across the store, one game's singles or sealed produ…

    required
    —
    optional
    game, scope, collection, keyword, exact_match, set, rarity, finish, product_type, tags, condition, in_stock, min_price, max_price, sort, page, limit
  • product

    1 cr

    One Good Games product in full, by id, handle or URL.

    required
    product
    optional
    —
  • sets

    5 cr

    The card sets Good Games carries singles from for one game, newest stock first, with how many…

    required
    game
    optional
    max_pages
  • filters

    1 cr

    The filter values Good Games offers for one game's singles or sealed product or for a collect…

    required
    —
    optional
    game, scope, collection
  • collections

    1 cr

    Good Games' collections with their product counts.

    required
    —
    optional
    keyword
  • suggest

    1 cr

    As-you-type suggestions from the shop's search box.

    required
    keyword
    optional
    —

Every parameter, every allowed value →

Missing a Good Games endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
How it works

How the Good Games API works

Good Games is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

Authenticate01
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 632 engines.

Call02
POST /goodgames/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

Pay03
1 or 5 credits per call

Credits, not seats. Failed and blocked calls are never charged, and nothing is cached: every call reads the source live.

Read04
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

Recipe

From a card name to the cheapest copy you can buy in Australia, in two calls

Search the game, then open the card to see each condition.

01search
POST/goodgames/v1/search
{"game": "pokemon", "keyword": "charizard", "in_stock": true, "sort": "price_asc"}

Every in-stock Charizard, cheapest first, with its set, number and finish.

02product
POST/goodgames/v1/product
{"product": "charizard-v-018-159-swsh-crown-zenith-holofoil"}

That card's five conditions: NM at A$12.80 with 3 in stock on 2026-11-08, the other four sold out.

For any card: what it costs in each condition, how many are left, and the set and number to match it against other markets.

request
curl -X POST https://api.reefapi.com/goodgames/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"game":"pokemon","keyword":"charizard"}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "goodgames",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}
Fields

One Charizard V, five conditions: the AUD price and the stock of each

Good Games sells every single in five conditions, each priced and stocked separately. Measured on Charizard V 018/159 (Crown Zenith, Holofoil), 2026-11-08:

what the shop listsfieldvalue
Near Mint: $12.80, 3 in stockvariants[0].price_aud / stock12.8 / 3
Lightly Played: $10.30, sold outvariants[1].price_aud / in_stock10.3 / false
Moderately Played: $7.70, sold outvariants[2].price_aud / in_stock7.7 / false
Damaged: $2.60, sold outvariants[4].price_aud / stock2.6 / 0
Cheapest condition you can actually buylowest_in_stock_price_aud12.8

The product-level price_aud is the lowest of the five conditions, here the $2.60 Damaged price, which is sold out; lowest_in_stock_price_aud is what you could buy today. Good Games publishes stock for its online range only: there is no count per walk-in shop, so stock_by_store is always null, and stock_by_location names the store's fulfilment locations.

Coverage

What Good Games publishes, and what it does not

goodgames.com.au only, in AUD. Measured 2026-11-08: 71 of 71 live cases across six actions, 40 of 40 calls at 8 concurrent, and 69 products re-read on the shop's own pages with 1 of 1,328 values differing (a stock of 13 against 14).

What a product returns

Price and stock per condition, reduced-from price, rarity, set, finish, card number, card attributes, images, barcode and stock per fulfilment location.

Against us: Magic sets

The sets action reads the newest 4,200 Magic products, so that list is partial and marked complete: false.

Against us: depth

Deep paging stops at about 55,000 products.

Sealed only

Yu-Gi-Oh!, Digimon and Star Wars: Unlimited are sealed product only.

Not published

Stock per walk-in shop, sales or price history, and buy-list prices.

Use cases

What people build with Good Games

The jobs this data is most often used for.

01

Australian price tracking per condition across 37,000 singles

02

Arbitrage: Good Games' AUD NM price against TCGplayer, Cardmarket or eBay for the same card number

03

Restock and low-stock watches on specific conditions

04

Sealed booster-box and pack prices in AUD

6

endpoints

1/5

credits per call

Pricing

What Good Games data costs

The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

$0.67–$1.50 / 1,000 credits
Full pricing →
  • 1,000 free credits on signup, no card
  • One key, all 632 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire
no credit card1,000 free credits · instant API key · pay by card or crypto
Quickstart

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/goodgames/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"game":"pokemon","keyword":"charizard"}'
python
import os
import requests

REEF_KEY = os.environ["REEF_KEY"]

r = requests.post(
    "https://api.reefapi.com/goodgames/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
        "game": "pokemon",
        "keyword": "charizard"
    },
    timeout=90,
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up Good Games.

Which games have singles at Good Games?▾

Magic: The Gathering, Flesh and Blood, Pokémon, Disney Lorcana, One Piece and Riftbound, 37,134 products in all on 2026-11-08. Yu-Gi-Oh!, Digimon and Star Wars: Unlimited are sealed product only at Good Games; use scope sealed for those.

Does it give the price per condition?▾

Yes. Each single carries five variants, NM, LP, MP, HP and DMG, each with price_aud, in_stock and a live stock count. The condition parameter returns one condition only, for example every in-stock NM Pokémon single on a page.

Are these real stock numbers, or just in stock and sold out?▾

Real counts per condition, the same numbers the product page prints as 'Only 3 in stock'. On 2026-11-08 we re-read 69 products on the shop's own pages and 1 of 1,328 values differed: a stock of 13 against 14.

Can I see stock at a particular Good Games shop?▾

No. Good Games does not publish stock for individual walk-in shops, so stock_by_store is null. stock_by_location names the store's fulfilment locations as its catalogue reports them, which are not shops you can visit.

Can I look up a card by its number?▾

Yes, keyword takes a printed number such as 018/159 or OP08-047, and every row carries card_number. Magic and Flesh and Blood singles print the number in the title, not as a separate value at the shop; the API reads it from there.

How do I get every set?▾

sets returns the sets a game has singles from, newest stock first. Pokémon, Lorcana, One Piece, Flesh and Blood and Riftbound come back complete; Magic is too large to read in one call, so it returns the sets on the newest 4,200 products and says complete false. search with a set name reaches every set.

Is it Australian pricing?▾

Yes. Every price is in AUD as Good Games lists it for Australian customers.

What is the Good Games API?▾

Good Games API is a ReefAPI endpoint group for good games australia as json: aud prices and live stock per card and condition for pokémon, magic, lorcana, one piece, flesh and blood and riftbound. It returns live JSON through POST requests under /goodgames/v1.

Is the Good Games API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. Good Games calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Good Games login or account?▾

No login to Good Games is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Good Games data?▾

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Good Games API use?▾

Good Games actions currently cost 1-5 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call Good Games from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call goodgames actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the Good Games API a Good Games scraper?▾

It is the managed alternative to a DIY Good Games scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same good games australia as json: aud prices and live stock per card and condition for pokémon, magic, lorcana, one piece, flesh and blood and riftbound back as clean JSON.

Contact

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 631 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-11-08.