PokéAPI
Comprehensive RESTful Pokémon data API covering all 1,000+ Pokémon, moves, abilities, types, and evolution chains. A go-to for learning REST API consumption and building fan projects.
🟢 Online · 8 ms
97.37%
Unlimited, no key, no credit card
No key required
Free alternatives (live ranking)
- Rick and Morty API — 🟢 Online · 10,000 req/day, no key, no credit card
- JokeAPI — 🟢 Online · 120 req/min, no key, no credit card
- Random User Generator — 🟢 Online · Unlimited, no key, no credit card
Compare PokéAPI with…
- PokéAPI vs Rick and Morty API — 10,000 req/day, no key, no credit card
- PokéAPI vs JokeAPI — 120 req/min, no key, no credit card
- PokéAPI vs Random User Generator — Unlimited, no key, no credit card
Frequently Asked Questions
Does PokéAPI require an API key?
No, PokéAPI is freely accessible without registration or an API key.
What is PokéAPI's free tier?
Unlimited, no key, no credit card
Is PokéAPI currently online?
We check PokéAPI 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 PokéAPI
PokéAPI is the canonical resource for Pokémon data — covering all 1,025 Pokémon across 9 generations with stats, moves, abilities, evolution chains, and sprites. It is unlimited, requires no key, and is widely used in React tutorials, TypeScript exercises, and hackathon demos precisely because the data is rich but the API is uncomplicated.
Common pitfalls
- PokéAPI enforces rate limiting via a fair-use policy rather than a hard counter. If you hit the API in a tight loop without caching, you will start receiving 429 responses within minutes. The official docs strongly recommend implementing a local cache — the PokéAPI team provides a client library with built-in caching for several languages.
- Pokémon are referenced by either name (lowercase, hyphenated: `mr-mime`) or numeric ID. Forms and variants (e.g., `charizard-mega-x`) use a hyphenated name format that is not always obvious. Use the `/pokemon-species/{id}` endpoint to discover all variants for a species.
- Responses are large. A single `/pokemon/{id}` response includes all moves learned at all levels from all games — commonly 30-50KB of JSON. If you only need name and type, the `/pokemon/{id}` response still returns the full object; there is no field-selection parameter.
- The API is read-only and returns data from the games, not the trading card game or anime. Pokémon lore from those sources is out of scope and not present.
Quick start (bash)
curl "https://pokeapi.co/api/v2/pokemon/pikachu" | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['name'], [t['type']['name'] for t in d['types']], d['base_experience'])" Embed this badge
Add a live status badge to your README, docs, or website.
Markdown
[](https://freeapi.watch/pokeapi) HTML
<a href="https://freeapi.watch/pokeapi"><img src="https://freeapi-builder.a10ayassine.workers.dev/badge/pokeapi.svg" alt="PokéAPI Status"/></a>