Skip to content

Latest commit

 

History

History
294 lines (219 loc) · 9.45 KB

File metadata and controls

294 lines (219 loc) · 9.45 KB

🚀 FreeAPI

The Ultimate Collection of Free Public APIs

1,000+ APIs · 51 Categories · JSON + Markdown · Always Free

License: MIT APIs Categories PRs Welcome


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



⚡ Quick Start

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/fact

That's it. You now have access to 1,092 free APIs.


🎯 Why FreeAPI?

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

📦 JSON Download

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:

  • authNo (free, no key), apiKey (free key required), OAuth, or token
  • https — Whether the API supports HTTPS
  • cors — Whether CORS is enabled (important for browser apps)

🗂 Categories

Emoji Category Count
🐾 Animals 26
🎌 Anime 16
🛡️ Anti-Malware 13
🎨 Art & Design 20
🔐 Auth & Authorization 6
⛓️ Blockchain 7
📚 Books 15
💼 Business 20
📅 Calendar 13
☁️ Cloud Storage 17
🔄 Continuous Integration 6
🪙 Cryptocurrency 51
💱 Currency Exchange 12
Data Validation 7
👨‍💻 Development 72
📖 Dictionaries 13
📝 Documents & Productivity 21
📧 Email 14
🎮 Entertainment 6
🌍 Environment 12
🎉 Events 3
💰 Finance 29
Emoji Category Count
🍔 Food & Drink 21
🎲 Games & Comics 65
📍 Geocoding 58
🏛️ Government 84
❤️ Health 23
💼 Jobs 14
🤖 Machine Learning 13
🎵 Music 23
📰 News 15
📊 Open Data 33
🔓 Open Source Projects 9
📋 Patent 2
🧠 Personality 16
📱 Phone 4
📷 Photography 27
💻 Programming 5
🔬 Science & Math 31
🔒 Security 29
🛍️ Shopping 10
👥 Social 33
Sports & Fitness 27
🧪 Test Data 21
📝 Text Analysis 12
📌 Tracking 5
🚗 Transportation 41
🔗 URL Shorteners 16
🚘 Vehicle 6
🎬 Video 25
🌤️ Weather 25

⭐ Top 10 APIs to Start With

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

💻 Code Examples

Python — Browse APIs Programmatically

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!")

JavaScript — Fetch & Use

// 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}`);

cURL — Instant Gratification

# 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

🔧 Use Cases

  • 🎨 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

🤝 Contributing

Found a great free API? Spotted a broken link? We want your PR!

# Quick contribution
1. Fork → 2. Edit apis.json → 3. Submit PR

See 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

📜 License

MIT — Use it however you want.


🙏 Acknowledgments


⭐ Star this repo if it saved you time!

The more stars, the more APIs we'll add.

Star History Chart