Le Guide Ultime : public-apis/public-apis

avril 2026 · 6 min de lecture

Le dépôt GitHub public-apis/public-apis est l'un des dépôts les plus célèbres de la communauté open source (+400 000 étoiles). C'est un annuaire maintenu par la communauté regroupant des milliers d'API HTTP gratauitement accessibles pour les développeurs web et logiciels.

Ce guide complet vous aidera à comprendre comment l'utiliser, comment choisir la bonne API, et comment éviter les pièges classiques lors de leur intégration dans vos projets.


🚀 1. Pourquoi utiliser public-apis ?

Ce repo est l'outil indispensable pour :

  • Les développeurs Front-End (React, Vue, Angular) : Construire des applications avec de la vraie donnée dynamique sans avoir à coder un serveur ou une base de données.
  • Les créateurs de Portfolios : Remplir son GitHub de projets concrets (Météo, Pokedex, Netflix Clone, Dashboard Crypto).
  • Les Hackathons : Trouver des sources de données instantanées pour prototyper rapidement.
  • L'apprentissage de l'écosystème HTTP : Pratiquer les verbes HTTP (GET, POST), le parsing JSON, les Promises JavaScript (fetch, async/await), et la gestion des erreurs.

🛠️ 2. Décortiquer le Tableau d'Analyse

Chaque API est classée par catégorie (Animals, Blockchain, Books, etc.) et présentée via un tableau à 5 colonnes cruciales à vérifier avant de commencer à coder.

Colonne Ce que cela signifie Conseil pour les débutants
API Nom et lien vers la documentation officielle. Lisez bien la doc, c'est là que vous trouverez les "Endpoints" (les URL exactes à appeler).
Description Résumé de l'utilité de l'API. Choisissez quelque chose qui vous motive (ex: Données Spatiales de la NASA).
Auth Type d'authentification requise (apiKey, OAuth, ou No). Privilégiez No pour un prototype en 5 minutes. apiKey demandera de créer un compte gratuit.
HTTPS Si l'API utilise un certificat SSL/TLS (Yes / No). Toujours choisir Yes. Si votre site est hébergé en HTTPS (Vercel, Netlify), il bloquera les requêtes vers des API en HTTP (erreur Mixed Content).
CORS Cross-Origin Resource Sharing. Accepte les requêtes depuis un navigateur (Yes, No, Unknown). Crucial : Si l'API indique No, vous ne pourrez pas l'appeler directement depuis votre Front-end (React/JS natif) sur un autre domaine d'origine. Il faudra un backend intermédiaire. Cherchez du Yes !

🏆 3. Le "Hall of Fame" des API par catégorie

Voici les API les plus fiables et intéressantes pour créer des projets complets, avec des exemples d'appels :

🎬 A. Films & Séries (Divertissement)

  • The Movie Database (TMDB) : L'API de référence ultime.
    • Idée de projet : Un clone de Netflix ou Allociné.
    • Spécificité : Nécessite une apiKey d'inscription. Donne accès aux affiches géantes, notes, bandes-annonces...
  • Jikan : L'API MyAnimeList.
    • Idée de projet : Un traqueur de sorties d'animés.

👾 B. Jeux-vidéos & Culture Geek

  • PokéAPI : Toutes les données Pokémon imaginables.
    • Idée de projet : Un Pokedex interactif avec React.
    • Snippet (Exemple de code) :
      fetch('https://pokeapi.co/api/v2/pokemon/pikachu')
        .then(res => res.json())
        .then(data => console.log(data.sprites.front_default));
      
  • Rick and Morty API : Tous les personnages, épisodes et lieux.

💰 C. Finance & Crypto-monnaies

  • CoinGecko : Données cryptos sans clé API (Auth: No).
    • Idée de projet : Un dashboard financier en temps réel.
  • ExchangeRate-API : Taux de conversion de devises fiables.

🌤️ D. Données Utilitaires (Pratique quotidienne)

  • OpenWeatherMap (Clé API requise) / Open-Meteo (Sans clé API).
    • Idée de projet : Application météo avec géolocalisation.
  • REST Countries : Obtenir infos (drapeau, map, nom complet) sur tous les pays.
    • Idée de projet : Un quiz de géographie.

😂 E. APIs "Fun" & Factices (Pour s'entraîner)

  • JSONPlaceholder : De fausses données (Fake REST API) d'un réseau social. Parfait pour tester le CRUD (Créer, Lire, Mettre à jour, Supprimer).
  • The Dog API / The Cat API : Des images d'animaux mignonnes à l'infini.

🚧 4. Les 3 Pièges classiques et comment les éviter

Piège 1 : L'erreur "CORS policy" (Cors Error)

Le problème : Votre navigateur (sur localhost ou votre nom de domaine) bloque la requête car le créateur de l'API refuse de servir des données à des sites tiers non autorisés. La solution :

  1. Choisissez une API marquée CORS: Yes dans le tableau Github.
  2. Si vous devez absolument utiliser une API sans CORS, utilisez un proxy comme https://corsproxy.io/? devant l'URL. Ex : fetch('https://corsproxy.io/?' + encodeURIComponent('https://api-sans-cors.com/data'))

Piège 2 : Le "Rate Limiting" (Erreur HTTP 429)

Le problème : L'API est gratuite, mais vous ne pouvez faire que (par exemple) 100 requêtes par heure. Si vous en faites plus, elle vous bloque temporairement en renvoyant une erreur 429 Too Many Requests. La solution :

  1. Lisez la documentation pour connaître la limite.
  2. Évitez de placer vos fetch() dans des boucles infinies ou des useEffect mal configurés en React.
  3. Gérez l'erreur proprement dans l'UI :
    if (response.status === 429) {
      alert("Molo l'asticot, limite atteinte. Réessaie plus tard !");
    }
    

Piège 3 : Les clés API (API Keys) exposées

Le problème : Vous mettez votre clé API en clair dans votre fichier JS et vous poussez le tout sur GitHub. Des bots la volent (même sur une API gratuite). La solution : Utilisez un fichier d'environnement (ex: .env pour React/Vite) :

# .env
VITE_TMDB_API_KEY=ma_cle_secrete_1234

Et assurez-vous d'ajouter .env dans votre fichier .gitignore.


🚀 5. Architecture d'un projet type avec une API Publique

Pour démarrer un portfolio pro, voici la stack recommandée :

  1. Initialisation : npm create vite@latest mon-app -- --template react
  2. Setup Styling : Installez Tailwind CSS pour aller vite.
  3. Le Fetch Logic : Créez un dossier src/services/ avec un fichier api.js dédié aux requêtes fetch (pour séparer les données des composants React).
  4. Gestion du statut : Pensez toujours à avoir trois états (Loading true/false, Data [], Error null).

🤝 6. Comment Contribuer au dépôt ?

Vous avez créé une API ouverte au public (ex: Liste des boulangeries de votre ville) ? Vous pouvez la rajouter à cette liste colossale :

  1. Fork le dépôt public-apis.
  2. Lisez le CONTRIBUTING.md. L'outil va exiger un ordonnancement alphabétique strict.
  3. Ajoutez votre ligne de tableau.
  4. Soumettez une Pull Request (PR). Des mainteneurs valideront votre soumission après quelques jours.

Fin du guide. Parfait pour se lancer dans la création d'applications Front-End connectées au monde réel !

Ce guide vient de Build With Nath

La communauté est gratuite. J’y publie ces guides au fil de l’eau et on y répond aux questions.

Autres guides · Guides

Vous dirigez une entreprise et vous voulez savoir lequel de vos process mérite ce genre de traitement ? Le diagnostic vous le dit en trois minutes, ou on en parle trente minutes.