MTG Mate API

Australia's Magic singles store, one SKU at a time

endpoints
10
credits per call
1–3

The MTG Mate API returns Australia's mtgmate.com.au Magic: The Gathering singles store as clean JSON in Australian dollars.

This page covers what the MTG Mate API returns, who uses it, a real response and pricing. Every parameter and response field is in MTG Mate API parameters and responses →

POST/mtgmate/v1/search
Real result, captured Nov 8, 20263 of 5
nameprice_audskuset
Emeritus of Conflict // Lightning Bolt547baa1e6-8200-5a19-a865…Secrets of Strixhaven
Emeritus of Conflict // Lightning Bolt574e0dd52-f6cf-5f73-bade…Secrets of Strixhaven
Emeritus of Conflict // Lightning Bolt (Extended Art)9f4bb64cc-9939-5c55-9aaf…Secrets of Strixhaven
10 active endpoints, on 1, 2 and 3 credit tiers.search · printings · set · sets · card · stock+4 more ↓OpenAPI 3.0 spec ↗

2 credits per call≈ $2/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.

MTG Mate API

3 of 10 endpoints, ready to run

View docs ↗

Find a card by name: every printing and finish with AUD price and units in stock.

2 credits1 required · 3 optional
POST/mtgmate/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 MTG Mate endpoints does ReefAPI ship?

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

  • search

    2 cr

    Find cards by name across the store.

    required
    query
    optional
    set_code, finish, rarity, color, type, language, min_price, max_price, in_stock_only, sort, page, limit
  • printings

    2 cr

    Every printing of one exact card name, including sold-out ones with their last price.

    required
    name
    optional
    set_code, finish, rarity, color, type, language, min_price, max_price, in_stock_only, sort, page, limit
  • set

    3 cr

    One whole Magic set as the store lists it.

    required
    set_code
    optional
    finish, rarity, color, type, language, min_price, max_price, in_stock_only, sort, page, limit
  • sets

    3 cr

    The store's set directory, newest first.

    required
    —
    optional
    query
  • card

    2 cr

    One printing in full.

    required
    —
    optional
    url, name, set_code, card_number, finish, language
  • stock

    1 cr

    Live AUD price and units in stock for one SKU (the sku on any row).

    required
    sku
    optional
    —
  • buylist

    2 cr

    What MTG Mate pays for cards.

    required
    —
    optional
    set_code, min_cash, limit
  • decklist

    3 cr

    Price a whole deck at MTG Mate.

    required
    decklist
    optional
    —
  • recently_added

    2 cr

    The newest stock added to the store, with the day it was added.

    required
    —
    optional
    count
  • staples

    2 cr

    The cards MTG Mate lists as staples for a format, grouped by card type, with the store's last…

    required
    format
    optional
    —

Every parameter, every allowed value →

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

How the MTG Mate API works

MTG Mate 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 /mtgmate/v1/…

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

Pay03
1 or 2 or 3 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

Find the cheapest copy of a card and watch it: two calls

List every printing of a card, then keep an eye on the cheapest in-stock one.

01printings
POST/mtgmate/v1/printings
{"name": "Sol Ring", "in_stock_only": true, "sort": "price_asc", "limit": 5}

Pick the sku of the printing you want.

02stock
POST/mtgmate/v1/stock
{"sku": "<sku from step 1>"}

Returns the live AUD price and units. Call it on your own schedule.

The cheapest in-stock copy of a card in Australia, with its price and units, kept current.

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

Foil and non-foil are separate rows, so a printing never shows one blended price

MTG Mate lists each finish of a printing as its own item. Lightning Bolt alone has 71 listings, 27 of them in stock on 2026-11-08: 38 non-foil, 31 foil and 2 etched. On 96 items we compared on 2026-11-08 the price and units in the API rows equalled the store's live buying panel on all 96.

Card (set)finishprice_audstock
Lightning Bolt (Commander Legends: Battle for Baldur's Gate)Nonfoil4.004
Lightning Bolt (Magic Player Rewards 2010, promo)Foil60.002
Lightning Bolt (Judge Gift Cards 1998, promo)Foil1,275.001
Sword of Feast and Famine (Double Masters)Nonfoil83.004
Sword of Feast and Famine (Double Masters)Foil100.001

Prices are the store's asking prices in AUD and exclude shipping. MTG Mate says it does not grade its singles, so condition is returned as the store lists it (Regular on every row we surveyed) and there are no separate Near Mint and Played prices. Sold-out printings stay in the results with their last price and stock 0, unless you ask for in-stock only.

Coverage

What MTG Mate publishes, and what it does not

Measured 2026-11-08: 68 live test cases across all ten actions, 38 parallel calls at 8 at a time, 14,477 rows surveyed across 15 sets of different eras and 10 searches, and 96 listings' prices and stock compared with the store's live buying panel. Some of these lines go against us.

Checked against the store

Table price and stock equalled the live buying panel on 96 of 96 listings. Decklist rows matched 117 of 117, other printings 69 of 69.

Against us: condition

The store does not grade, so condition is 'Regular' on all 14,477 rows we surveyed.

Search

Capped at 1,000 rows per call by the site; truncated says when that happened.

Buy prices

The hot list and per-set pages. A single card's buy price needs a store account and is not offered.

Use cases

What people build with MTG Mate

The jobs this data is most often used for.

01

Track Australian retail prices for Magic singles, one printing and finish at a time

02

Find the cheapest copy of a card in Australia across all its printings, with units in stock

03

Compare what MTG Mate sells a card for with what it buys it for, in cash and credit

04

Price a Commander or Modern deck in AUD before buying

10

endpoints

1/2/3

credits per call

Pricing

What MTG Mate 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/mtgmate/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"lightning bolt"}'
python
import os
import requests

REEF_KEY = os.environ["REEF_KEY"]

r = requests.post(
    "https://api.reefapi.com/mtgmate/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
        "query": "lightning bolt"
    },
    timeout=90,
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up MTG Mate.

Does the API separate foil and non-foil prices?▾

Yes. Each finish is its own row with its own sku, price and stock: finish is Nonfoil, Foil, Etched or Glossy, and foil is true or false. Filter with finish=foil, or finish=nonfoil.

Are these prices in Australian dollars?▾

Yes, every price field ends in _aud and is the store's listed price in AUD. Shipping is not included.

Can I get the condition of a card?▾

Only what the store publishes. MTG Mate states that it does not grade its singles, so list rows carry the store's value, Regular, on every row we surveyed. There are no separate prices per condition. The buylist is for Near Mint copies only, as the store's own instructions say.

How do I watch a card's price and stock?▾

Take its sku from search or printings and call stock. It returns the live AUD price, units and in_stock, and costs less than a full card call. Use card when you also want rules text, mana cost and the other printings.

What does MTG Mate pay for cards?▾

buylist returns cash and store credit in AUD plus how many the store wants. The hot list had 186 cards on 2026-11-08, cash from A$1.50 to A$40 (median A$3.00) and store credit about 25% higher. Pass set_code for one set, or min_cash to keep only the better offers. Looking up the buy price of any single card needs a store account and is not offered.

Can I price a whole deck?▾

Yes. decklist takes the deck as text, one card per line, up to 5000 characters. It returns up to 10 in-stock printings per card, the store's suggested pick, the total at that pick, and the cards it cannot fill. Names must be exact.

How many results does a search return?▾

The store caps one search at 1000 listings; truncated is true when that happens, and narrowing the name, set or finish gets the rest. Short searches need at least three letters. set has no such cap (Commander Masters returned 1630 rows in one call).

What is the MTG Mate API?▾

MTG Mate API is a ReefAPI endpoint group for australian magic: the gathering singles in aud: foil and non-foil apart, live stock, whole sets, buylist and deck pricing. It returns live JSON through POST requests under /mtgmate/v1.

Is the MTG Mate API free to try?▾

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

Do I need a MTG Mate login or account?▾

No login to MTG Mate 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 MTG Mate 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 MTG Mate API use?▾

MTG Mate actions currently cost 1-3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call MTG Mate from an AI assistant or MCP client?▾

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

Is the MTG Mate API a MTG Mate scraper?▾

It is the managed alternative to a DIY MTG Mate 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 australian magic: the gathering singles in aud: foil and non-foil apart, live stock, whole sets, buylist and deck pricing 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.