REST Countries
Detailed data on all 250 countries including names, capitals, flags, currencies, languages, calling codes, and regional groupings. No key required and widely used in geography and education apps.
🟢 Online · 297 ms
97.37%
Unlimited, no key, no credit card
No key required
Free alternatives (live ranking)
- PokéAPI — 🟢 Online · Unlimited, no key, no credit card
- Rick and Morty API — 🟢 Online · 10,000 req/day, no key, no credit card
- JokeAPI — 🟢 Online · 120 req/min, no key, no credit card
Compare REST Countries with…
- REST Countries vs PokéAPI — Unlimited, no key, no credit card
- REST Countries vs Rick and Morty API — 10,000 req/day, no key, no credit card
- REST Countries vs JokeAPI — 120 req/min, no key, no credit card
Frequently Asked Questions
Does REST Countries require an API key?
No, REST Countries is freely accessible without registration or an API key.
What is REST Countries's free tier?
Unlimited, no key, no credit card
Is REST Countries currently online?
We check REST Countries 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 REST Countries
REST Countries provides detailed data for all 250 countries — names in 250+ languages, ISO codes, capitals, flags (SVG and emoji), currencies, languages, timezones, calling codes, and regional groupings. It is unlimited, requires no key, and suits geography pickers, currency formatters, and internationalization utilities.
Common pitfalls
- REST Countries migrated from v2 to v3.1 in 2021 with breaking changes. The `currencies`, `languages`, and `name` fields changed structure significantly. Code written against v2 examples (still widely indexed in search results) will fail against v3.1.
- The API does not support partial field selection on the full country list by default — `/v3.1/all` returns ~500KB of JSON. Use the `fields` query parameter (`?fields=name,cca2,capital`) to limit the response to what you need.
- Country queries by name use fuzzy matching and may return multiple results. `/v3.1/name/guinea` returns Guinea, Guinea-Bissau, Equatorial Guinea, and Papua New Guinea. Always paginate and handle multi-result responses in your code.
- Flag SVG URLs point to `restcountries.com` infrastructure. For offline-capable apps, embed flag data or use a standalone flags dataset rather than fetching SVGs at runtime.
Quick start (bash)
curl "https://restcountries.com/v3.1/alpha/DE?fields=name,capital,currencies,languages,population" Embed this badge
Add a live status badge to your README, docs, or website.
Markdown
[](https://freeapi.watch/rest-countries) HTML
<a href="https://freeapi.watch/rest-countries"><img src="https://freeapi-builder.a10ayassine.workers.dev/badge/rest-countries.svg" alt="REST Countries Status"/></a>