Jeux vidéo : une API pour les requêter tous
Posté le 7 août 2025 dans Développement
Un de mes projets avait il y a quelque temps besoin de la liste la plus complète possible des jeux vidéo PC de ces dernières décennies, avec des données toutes simples du genre le nom et une image représentative. Le monopole et l’ubiquité de Steam m’avaient à l’époque fait choisir leur API, sauf que par définition elle ne propose que des jeux de leur catalogue, en plus d’être extrêmement limitée.
Ça allait à peu près jusqu’à ce que mes besoins changent : j’ai eu besoin de plus que les jeux de base (les mods aussi), ainsi que de filtrer selon différents critères comme le statut (publié, early access, etc.) ; les modes de jeu (solo, multijoueur, coopératif, etc.) et la plateforme (Windows, Linux, Oculus, console, etc.). On sort donc vraiment du scope de Steam.
Après quelques recherches, j’ai décidé de migrer vers l’API proposée par IGDB (appartenant à Twitch) : c’est comme IMDb mais pour les jeux vidéo. J’ai été étonné par la qualité, les possibilités et la quantité d’informations disponibles dans cette API pour la modique somme de zéro euro, y compris pour les projets commerciaux : il faut juste créer un compte Twitch.
L’authentification est très simple, les endpoints très nombreux, et des webhooks sont carrément proposés afin de mettre à jour votre base automatiquement sans avoir à poll l’API ! De plus, tous les endpoints sont disponibles au format Protocol Buffers, ce qui est très surprenant (mais cool).
Le requêtage s’effectue grâce à un mini-langage nommé Apicalypse qui a semble-t-il été créé spécialement pour IGDB. Perso je ne l’ai rencontré nulle part ailleurs, mais en tout cas, son utilisation est très facile et se rapproche d’un SQL simplifié. Tout ce qu’on attend d’une API digne de ce nom est possible : sélection de champs imbriqués ou non, pagination, recherche, filtrage simple ou avancé, jointures, tris, etc.
À noter également que si un jeu manque ou que si vous avez trouvé une erreur, il est possible de contribuer afin d’améliorer la base de données et tout le monde peut donc en profiter.
Reste à savoir combien de temps cette API restera gratuite, Twitch étant une filiale d’Amazon, cette dernière possédant également IMDb dont l’accès à l’API coûte… 150 000 dollars minimum (!) par an.