1,000+ APIs · 51 Categories · JSON + Markdown · Always Free
Stop wasting hours searching for APIs.
FreeAPI is a developer-first, community-curated collection of free public APIs. Structured data you can actually use — not just a giant README nobody reads.
Quick Start · Browse APIs · JSON Download · Contribute
3 steps. 30 seconds.
# 1. Download the API catalog
curl -O https://raw.githubusercontent.com/AIPMAndy/FreeAPI/main/apis.json
# 2. Pick a category
cat apis.json | python3 -c "import sys,json; d=json.load(sys.stdin); [print(f'{k}: {len(v)} APIs') for k,v in d['categories'].items()]"
# 3. Start building
curl https://catfact.ninja/factThat's it. You now have access to 1,092 free APIs.
| Problem | FreeAPI Solution |
|---|---|
| 🔍 APIs scattered across 100s of sites | ✅ One structured JSON file |
| 📖 Giant README nobody can search | ✅ Machine-readable + per-category files |
| 💀 Dead APIs everywhere | ✅ Community-maintained, PRs fix broken links |
| 🔐 "Free" APIs that aren't really free | ✅ Only APIs with genuine free tiers |
The real power of FreeAPI is the structured JSON — use it in your apps, scripts, or tools.
curl -O https://raw.githubusercontent.com/AIPMAndy/FreeAPI/main/apis.json📋 JSON Schema
{
"total": 1092,
"categories": {
"Category Name": [
{
"name": "API Name",
"url": "https://docs-url.com",
"description": "What it does",
"auth": "No | apiKey | OAuth | token",
"https": "Yes | No",
"cors": "Yes | No | Unknown"
}
]
}
}Each field:
auth—No(free, no key),apiKey(free key required),OAuth, ortokenhttps— Whether the API supports HTTPScors— Whether CORS is enabled (important for browser apps)
|
|
| API | What It Does | Auth | Try It |
|---|---|---|---|
| 🐱 The Cat API | Random cat images | apiKey |
curl https://api.thecatapi.com/v1/images/search |
| 🐕 Dog CEO | Random dog images | None | curl https://dog.ceo/api/breeds/image/random |
| 😂 JokeAPI | Programming jokes | None | curl https://v2.jokeapi.dev/joke/Programming |
| 🌦️ wttr.in | Weather in terminal | None | curl wttr.in/Shanghai |
| 🪙 CoinGecko | Crypto prices | None | curl https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd |
| 🌍 REST Countries | Country data | None | curl https://restcountries.com/v3.1/name/china |
| 🎲 Bored API | Random activities | None | curl https://www.boredapi.com/api/activity |
| 🚀 NASA | Space imagery & data | apiKey |
Get free key |
| 📰 NewsAPI | Live news | apiKey |
Get free key |
| 🐾 PokeAPI | Pokémon data | None | curl https://pokeapi.co/api/v2/pokemon/pikachu |
import json, requests
# Load the catalog
with open('apis.json') as f:
catalog = json.load(f)
# List all Weather APIs
for api in catalog['categories']['Weather']:
print(f" {api['name']:25} {api['auth']:10} {api['url']}")
# Find all APIs that need NO authentication
no_auth = [
api for apis in catalog['categories'].values()
for api in apis if api['auth'] == 'No'
]
print(f"\n{len(no_auth)} APIs need no authentication — just call them!")// Get a random programming joke
const res = await fetch('https://v2.jokeapi.dev/joke/Programming');
const data = await res.json();
console.log(data.joke || `${data.setup} ... ${data.delivery}`);
// Load the catalog and find all crypto APIs
const catalog = await fetch(
'https://raw.githubusercontent.com/AIPMAndy/FreeAPI/main/apis.json'
).then(r => r.json());
console.log(`Crypto APIs: ${catalog.categories.Cryptocurrency.length}`);# Random cat fact
curl https://catfact.ninja/fact
# Bitcoin price in USD
curl https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd
# Random activity if you're bored
curl https://www.boredapi.com/api/activity
# Weather for any city (terminal-friendly)
curl wttr.in/Tokyo?format=3- 🎨 Side Projects — Find APIs for your next hackathon project
- 📚 Learning — Practice API integration with real endpoints
- 🤖 AI/ML — Feed structured API data to your LLM agents
- 📱 App Development — Discover data sources for your app
- 📊 Data Science — Access free data endpoints for analysis
Found a great free API? Spotted a broken link? We want your PR!
# Quick contribution
1. Fork → 2. Edit apis.json → 3. Submit PRSee CONTRIBUTING.md for full guidelines.
What makes a good API entry:
- ✅ Has a free tier (not just a free trial)
- ✅ Has documentation
- ✅ Is currently working
- ❌ No paid-only APIs
- ❌ No dead/deprecated APIs
MIT — Use it however you want.
- Initial data from public-apis/public-apis — the OG (433k+ ⭐)
- Built by AIPMAndy