FreeAPI.watch

Scryfall

Complete Magic: The Gathering card database with high-resolution scans, oracle text, rulings, and market prices. Exceptionally well-documented and generous for a volunteer-run service.

Status
🟢 Online · 197 ms
30-day uptime
0%
Free tier
No key; courtesy limit of 10 requests/second, no credit card
Auth
No key required
Last 30 days

Free alternatives (live ranking)

Compare Scryfall with…

Official docs ↗

Frequently Asked Questions

Does Scryfall require an API key?

No, Scryfall is freely accessible without registration or an API key.

What is Scryfall's free tier?

No key; courtesy limit of 10 requests/second, no credit card

Is Scryfall currently online?

We check Scryfall every hour. The current status is shown at the top of this page. You can also see the 30-day uptime history in the chart above.

Implementation notes

When to use Scryfall

Scryfall is the reference API for Magic: The Gathering — every card ever printed, every printing of every card, oracle text, rulings, format legality, marketplace prices, and high-resolution card images. No key, no signup, and a search syntax that is genuinely excellent: it is the same query language the website uses, so you can prototype a query in the search box and paste it straight into your code. Use it for deck builders, collection trackers, Discord bots, draft simulators, and price-check tools. It is one of the best-run free APIs in any category — thoughtful documentation, a published rate-limit courtesy policy, versioned bulk data downloads, and maintainers who communicate changes ahead of time. The design assumption is that heavy consumers download the bulk files and query locally while the HTTP API handles lookups and interactive search; integrations that respect that split essentially never have problems.

Common pitfalls

Quick start (bash)

# same search syntax as the website: t:dragon f:commander cmc<=4
curl -s 'https://api.scryfall.com/cards/search?q=t%3Adragon+f%3Acommander+cmc%3C%3D4' | jq '.total_cards'
# for anything bulk, download the daily dump instead of paging the API
curl -s 'https://api.scryfall.com/bulk-data' | jq -r '.data[].download_uri'

Embed this badge

Add a live status badge to your README, docs, or website.

Scryfall status badge

Markdown

[![Scryfall Status](https://api.freeapi.watch/badge/scryfall.svg)](https://freeapi.watch/scryfall)

HTML

<a href="https://freeapi.watch/scryfall"><img src="https://api.freeapi.watch/badge/scryfall.svg" alt="Scryfall Status"/></a>