DEV Community

Orbit Websites
Orbit Websites

Posted on

Top 10 Free APIs Every Developer Needs to Know About

Top 10 Free APIs Every Developer Needs to Know About

Let’s be real — building apps from scratch is hard. But you don’t have to reinvent the wheel every time. Free, public APIs can save you weeks of work, whether you’re mocking data, building a side project, or prototyping a feature. I’ve used these in real apps, demos, and tutorials. No fluff, no paywalled tiers — just reliable, free APIs that actually work.

Here are 10 free APIs I keep coming back to — with practical examples and tips on how to use them.


1. JSONPlaceholder – Fake REST API for Testing

Need test data fast? JSONPlaceholder gives you a full fake REST API with posts, users, comments, and more. It’s perfect for frontend devs or anyone mocking backend behavior.

fetch('https://jsonplaceholder.typicode.com/posts')
  .then(response => response.json())
  .then(posts => console.log(posts.slice(0, 3)));
Enter fullscreen mode Exit fullscreen mode

Pro tip: Use it with POST, PUT, and DELETE — it accepts writes (but doesn’t persist them). Great for testing form submissions.


2. OpenWeatherMap – Real-Time Weather Data

Weather APIs are everywhere, but OpenWeatherMap’s free tier is generous: 1,000 calls/day, global coverage, and decent docs.

Get an API key (free), then:

const API_KEY = 'your-key';
fetch(`https://api.openweathermap.org/data/2.5/weather?q=London&appid=${API_KEY}`)
  .then(res => res.json())
  .then(data => console.log(data.main.temp - 273.15)); // Kelvin to Celsius
Enter fullscreen mode Exit fullscreen mode

Watch out: The free tier doesn’t include forecasts beyond 5 days. And yes, temps are in Kelvin by default — don’t forget to convert.


3. The Cat API – Because Cats

Need placeholder images? The Cat API returns random cat pics. It’s fun, fast, and surprisingly useful for UI testing.

fetch('https://api.thecatapi.com/v1/images/search')
  .then(res => res.json())
  .then(data => {
    document.body.innerHTML = `<img src="${data[0].url}" alt="Random cat" />`;
  });
Enter fullscreen mode Exit fullscreen mode

No API key needed for basic image fetching. But if you want to upvote cats or use GIFs, you’ll need one (free to get).


4. PokeAPI – All Pokémon, All the Time

Everything about Pokémon — species, moves, types, sprites. It’s well-documented, fast, and 100% free.

fetch('https://pokeapi.co/api/v2/pokemon/pikachu')
  .then(res => res.json())
  .then(data => {
    console.log(data.sprites.front_default);
    console.log(data.types.map(t => t.type.name));
  });
Enter fullscreen mode Exit fullscreen mode

Use it for learning APIs, building Pokédex apps, or just impressing your teammates.


5. IP Geolocation API (ipapi.co)

Want to get a user’s location from their IP? This one’s simple, free (up to 30k requests/month), and returns JSON.

fetch('https://ipapi.co/json/')
  .then(res => res.json())
  .then(data => {
    console.log(`Location: ${data.city}, ${data.region}, ${data.country_name}`);
  });
Enter fullscreen mode Exit fullscreen mode

No API key needed for basic use. Great for localization, analytics, or showing weather based on location.


6. News API (newsapi.org)

Get headlines from thousands of sources. The free tier includes top headlines (but not full search history).

const API_KEY = 'your-key';
fetch(`https://newsapi.org/v2/top-headlines?country=us&category=technology&apiKey=${API_KEY}`)
  .then(res => res.json())
  .then(data => {
    data.articles.forEach(a => console.log(`${a.title}${a.source.name}`));
  });
Enter fullscreen mode Exit fullscreen mode

Heads up: The free tier only gives you 100 requests/day. And “everything” searches are locked behind paid plans.


7. GitHub REST API – Code, Users, Repos

GitHub’s API is powerful and free (with rate limits). Use it to fetch repo info, user profiles, or trending projects.

fetch('https://api.github.com/users/octocat')
  .then(res => res.json())
  .then(data => console.log(data.public_repos, data.followers));
Enter fullscreen mode Exit fullscreen mode

Unauthenticated: 60 req/hour. Authenticated (with token): 5,000/hour. Always prefer auth in production.


8. REST Countries – Country Data Made Easy

Need country names, capitals, currencies, or timezones? This API is lightweight and returns clean JSON.

fetch('https://restcountries.com/v3.1/name/france')
  .then(res => res.json())
  .then(data => {
    const country = data[0];
    console.log(`${country.capital[0]}, ${country.region}`);
  });
Enter fullscreen mode Exit fullscreen mode

No API key. No rate limits (as of now). Perfect for dropdowns, forms, or global apps.


9. JokeAPI – Add Humor to Your App

Why not? JokeAPI serves clean, filterable jokes (programming, dark, puns — you pick).


js
fetch('https://v2.jokeapi.dev/joke/Programming')


---

☕ **Community-Focused**
Enter fullscreen mode Exit fullscreen mode

Top comments (0)