TL;DR
8 lecture min.Hacker News fait tourner deux API publiques et gratuites, et aucune ne délivre de clé. L'API Firebase sur hacker-news.firebaseio.com/v0/ sert les items un par un, les profils utilisateurs et les listes classées de stories, et son README indique "There is currently no rate limit". L'API Algolia sur hn.algolia.com/api/v1/ sert la recherche plein texte et limite une même IP à 10,000 requêtes par heure.
Comment utiliser l'API Hacker News ?
Chaque question sur comment utiliser l'API Hacker News mène à l'un de deux hôtes gratuits : hacker-news.firebaseio.com/v0/ sert les items en direct, les profils utilisateurs et les listes classées de stories, et hn.algolia.com/api/v1/ sert la recherche plein texte. Les deux renvoient du JSON brut en HTTPS, les deux acceptent les requêtes anonymes, et aucun ne délivre de clé d'API ni n'accepte de token. Passez par Firebase quand vous connaissez déjà l'id d'un item ou voulez la page d'accueil actuelle, et par Algolia quand vous avez un mot-clé et aucun id.
Que renvoie l'API Firebase pour un item ?
L'API Firebase renvoie un objet JSON plat par item depuis /v0/item/<id>.json, et id est le seul champ que porte chaque item. Le README de HackerNews/API liste deleted, type, by, time, text, dead, parent, poll, kids, url, score, title, parts et descendants comme champs optionnels, type prenant l'une des valeurs "job", "story", "comment", "poll" ou "pollopt". Écrivez votre parser sur id plus tout ce que vous trouvez d'autre, car un commentaire porte parent et text là où une story porte url, score et descendants.
curl "https://hacker-news.firebaseio.com/v0/item/8863.json?print=pretty"{
"by": "dhouston",
"descendants": 71,
"id": 8863,
"kids": [9224, 8917, 8884, 8887],
"score": 104,
"time": 1175714200,
"title": "My YC app: Dropbox - Throw away your USB drive",
"type": "story",
"url": "http://www.getdropbox.com/u/2/screencast.html"
}Voici la réponse en direct pour l'item 8863, avec le tableau kids réduit à quatre ids ; le vrai en contient 33. time est un timestamp Unix en secondes, descendants compte tout l'arbre de commentaires, et kids ne contient que les réponses directes, donc parcourir un fil complet oblige à descendre récursivement dans kids, une requête à la fois.

Quels endpoints propose l'API Hacker News ?
L'API Firebase expose dix chemins, tous en GET, tous terminés par .json. Chaque chemin de liste renvoie un tableau d'ids d'items et non les items eux-mêmes, donc lire une liste coûte une requête plus une requête par id que vous résolvez ensuite.
| Endpoint | Ce qu'il renvoie | Taille |
|---|---|---|
/v0/item/<id>.json | une story, un commentaire, une offre d'emploi, un sondage ou une option de sondage | un objet |
/v0/user/<id>.json | un profil : id, created, karma, about, submitted | un objet |
/v0/maxitem.json | le plus grand id d'item actuel | un entier |
/v0/topstories.json | ids de la page d'accueil par classement, offres d'emploi comprises | jusqu'à 500 ids |
/v0/newstories.json | ids des items les plus récents | jusqu'à 500 ids |
/v0/beststories.json | ids des stories les mieux notées | une liste d'ids |
/v0/askstories.json | ids Ask HN | jusqu'à 200 ids |
/v0/showstories.json | ids Show HN | jusqu'à 200 ids |
/v0/jobstories.json | ids des offres d'emploi | jusqu'à 200 ids |
/v0/updates.json | items et profils modifiés | tableaux items et profiles |
Les tailles documentées sont des plafonds, pas des longueurs fixes. Interrogé le 10 septembre 2026, /v0/topstories.json a renvoyé les 500 ids complets tandis que /v0/askstories.json en a renvoyé 28, et /v0/maxitem.json a renvoyé 49 649 544. Les ids sont séquentiels depuis l'item 1, une story intitulée "Y Combinator" publiée par l'utilisateur pg avec un time de 1160418111, donc un crawler peut parcourir tout le corpus en comptant vers le haut. Cet id séquentiel est aussi ce qui rend les statistiques Hacker News que vous pouvez tirer des mêmes endpoints vérifiables plutôt que de seconde main.

Comment chercher dans Hacker News avec l'API Algolia ?
La recherche tourne sur un hôte séparé avec deux chemins : /api/v1/search classe par pertinence, puis par points, puis par nombre de commentaires, et /api/v1/search_by_date classe du plus récent au plus ancien. Les deux acceptent query pour le plein texte, tags pour les filtres de type, numericFilters pour les conditions sur created_at_i, points et num_comments, plus page et hitsPerPage pour la pagination. Filtrez avec tags avant de filtrer dans votre propre code, car les valeurs valides couvrent story, comment, poll, pollopt, show_hn, ask_hn, front_page, author_:USERNAME et story_:ID.
curl "https://hn.algolia.com/api/v1/search?query=postgres&tags=story&hitsPerPage=1"
curl "https://hn.algolia.com/api/v1/search_by_date?tags=story&numericFilters=created_at_i>1788998400"
curl "https://hn.algolia.com/api/v1/search?tags=comment,story_18717168"
curl "https://hn.algolia.com/api/v1/search?tags=front_page"{
"hits": [
{
"objectID": "18717168",
"title": "Bye Bye Mongo, Hello Postgres",
"url": "https://www.theguardian.com/info/2018/nov/30/bye-bye-mongo-hello-postgres",
"author": "philliphaydon",
"points": 1562,
"num_comments": 417,
"created_at": "2018-12-19T17:08:53Z",
"created_at_i": 1545239333,
"story_id": 18717168,
"_tags": ["story", "author_philliphaydon", "story_18717168"]
}
],
"nbHits": 14776,
"page": 0,
"nbPages": 1000,
"hitsPerPage": 1,
"processingTimeMS": 13
}Les tags sont combinés par ET par défaut et par OU entre parenthèses, donc author_pg,(story,poll) se lit auteur pg ET (story OU poll). C'est tout le langage de requête, et il est plus étroit que les opérateurs de recherche booléens que vous écririez pour un moteur de recherche, donc la couverture des mots-clés doit venir de plusieurs requêtes plutôt que d'une seule astucieuse. hitsPerPage vaut 20 par défaut.
Quelles sont les limites de débit de l'API Hacker News ?
Les deux API publient des réponses différentes sur leurs limites de débit (rate limits). Le README de HackerNews/API indique "There is currently no rate limit" pour les endpoints Firebase, et la documentation de hn.algolia.com/api indique qu'Algolia limite une même IP à 10 000 requêtes par heure et bloque les adresses qui dépassent ce seuil. Aucun chiffre publié ne couvre le côté Firebase, donc traitez cette marge comme une politesse et non comme une garantie, et gardez un polling raisonnable dans les deux cas.
Budgétez le côté Algolia avant d'écrire la boucle :
requêtes par heure = (3600 / intervalle de polling en secondes) x nombre de requêtes enregistrées
Trente requêtes enregistrées avec un intervalle de 60 secondes donnent 3600 / 60 = 60 interrogations par requête et par heure, et 60 x 30 = 1 800 requêtes par heure, soit 18 pour cent des 10 000 autorisées. Ajoutez un rafraîchissement de la page d'accueil côté Firebase et le coût est de 1 requête pour /v0/topstories.json plus 500 requêtes d'items, soit 501 requêtes par passage. Quiconque a déjà budgété autour des limites de débit de l'API Reddit trouvera les deux chiffres généreux en comparaison.
Que ne peut pas faire l'API Hacker News ?
Les deux API sont en lecture seule, donc aucun endpoint ne publie de story, ne vote ni ne répond à un commentaire, et aucun chemin n'accepte d'identifiants qui le permettraient. Algolia plafonne aussi la pagination : nbPages multiplié par hitsPerPage a donné exactement 1 000 pour chaque taille de page testée le 10 septembre 2026, et demander la page 60 à 20 résultats par page a renvoyé un tableau hits vide, ce qui signifie qu'une requête atteint 1 000 résultats et pas plus. Découpez une recherche large en plages de dates avec numericFilters sur created_at_i quand vous avez besoin de tout ce qui se trouve derrière ce mur.
Aucune des deux API ne vous alerte. Il n'y a ni webhook, ni email, ni veille par mot-clé, ni dédoublonnage des mentions répétées, ni jugement sur le fil qui mérite une réponse. Ce manque, c'est le travail que fait RedReplier : il prend un site web et un ensemble de mots-clés, surveille Hacker News avec Reddit, X, Bluesky et Facebook au même endroit, classe chaque mention selon l'intention d'achat, explique avec l'IA pourquoi elle a été signalée, et vous envoie un email à l'intervalle prévu par votre forfait. Le même produit offre aussi un accès API et un serveur MCP qui fonctionne avec Claude Code, Cursor et tout client MCP standard, ce qui fait la différence entre une collecte de données sur les réseaux sociaux brute et une file de conversations qui méritent une réponse.
RedReplier
Commencer
Reddit, X, Bluesky et HN
Alertes d'intention en temps réel
Réponses IA illimitées
Classé par intention d'achat
Questions fréquentes
L'API Hacker News a-t-elle besoin d'une clé d'API ?
Non. Ni hacker-news.firebaseio.com/v0/ ni hn.algolia.com/api/v1/ ne délivrent de clé, et aucun n'accepte de token. Un simple GET non authentifié renvoie du JSON depuis les deux hôtes, c'est pourquoi une seule commande curl suffit pour tester n'importe quel endpoint de cette page.
Existe-t-il une limite de débit officielle pour l'API Hacker News ?
Algolia en publie une et Firebase non. La documentation de hn.algolia.com/api plafonne une même IP à 10 000 requêtes par heure, et le README de HackerNews/API indique "There is currently no rate limit" pour les endpoints Firebase. Aucun chiffre documenté n'existe pour Firebase, donc quiconque cite un nombre précis de requêtes par seconde pour elle devine.
Comment récupérer tous les commentaires d'une story Hacker News ?
Deux voies fonctionnent. Sur Firebase, lisez le tableau kids de la story et descendez récursivement dans chaque item enfant, ce qui coûte une requête par commentaire. Sur Algolia, une seule requête à /api/v1/search?tags=comment,story_<ID> renvoie les commentaires comme résultats de recherche, dans la limite du plafond de pagination de 1 000 résultats.
Quelle est la différence entre l'API Firebase et l'API Algolia ?
Firebase est l'enregistrement en direct et Algolia est l'index construit dessus. Firebase répond à "donne-moi l'item 8863" et "qu'y a-t-il sur la page d'accueil en ce moment" avec des champs comme score, kids et descendants. Algolia répond à "quelles stories mentionnent postgres" avec des champs comme points, num_comments et created_at_i, et c'est la seule des deux qui fait de la recherche plein texte.
Peut-on publier ou voter sur Hacker News via l'API ?
Non. Les deux API sont en lecture seule, et aucune ne documente de chemin d'écriture pour soumettre des stories, publier des commentaires ou voter. Tout outil qui publie sur Hacker News en votre nom pilote le site web, pas l'API.
Jusqu'où remontent les données de l'API Hacker News ?
Jusqu'au premier item du site. L'item d'id 1 est une story intitulée "Y Combinator" publiée par l'utilisateur pg, avec un time Unix de 1160418111, ce qui la place en octobre 2006. Les ids avancent ensuite de façon séquentielle jusqu'à la valeur que /v0/maxitem.json indique aujourd'hui.
Comment récupérer la page d'accueil actuelle de Hacker News avec l'API ?
L'endpoint Firebase /v0/topstories.json renvoie jusqu'à 500 ids classés de la page d'accueil, et chaque id demande ensuite une requête séparée vers /v0/item/<id>.json pour obtenir le titre, le score et l'url. Algolia propose un raccourci pour la même liste : /api/v1/search?tags=front_page renvoie la page d'accueil sous forme de résultats de recherche en une seule requête. Firebase convient quand il faut le classement en direct avec tous les champs, Algolia quand une seule requête suffit.
Peut-on filtrer les résultats de recherche Hacker News par score ou par nombre de commentaires ?
L'API Algolia accepte numericFilters pour poser des conditions sur points et num_comments, en plus de created_at_i pour les plages de dates. Une requête comme numericFilters=points>500 restreint /api/v1/search aux stories au-dessus de ce score, et plusieurs filtres se combinent avec une virgule. Firebase porte les mêmes champs score et descendants sur chaque item, mais n'a pas de paramètre de filtre, donc filtrer côté Firebase revient à récupérer les items et vérifier les champs soi-même.
Comment suivre les nouvelles publications Hacker News dès qu'elles apparaissent ?
Interroger /v0/newstories.json sur Firebase renvoie les ids les plus récents, jusqu'à 500 à la fois, et comparer chaque appel au précédent révèle les nouveaux ids. Associé à /v0/maxitem.json, qui donne le plafond actuel de tout le corpus, un bond de ce nombre signale de nouveaux items avant même de les lister. Le README indique "There is currently no rate limit", ce qui veut dire qu'interroger cet endpoint souvent ne coûte rien de documenté, mais le calcul de budget Algolia de cet article s'applique dès qu'on mélange des recherches.
Peut-on consulter tout ce qu'un utilisateur Hacker News donné a publié ?
/v0/user/<id>.json sur Firebase renvoie un profil avec un champ submitted, un tableau de tous les ids d'items publiés par cet utilisateur, commentaires compris. Chaque id se résout via /v0/item/<id>.json pour obtenir titre, texte et score, le même schéma d'une requête par id que pour parcourir un fil de commentaires. Le tag Algolia author_:USERNAME filtre aussi les résultats de recherche par auteur, plus rapide quand seules les stories comptent et pas l'historique complet.
Nous voir plus souvent sur Google
Un clic définit RedReplier comme source préférée. Nos articles remontent alors dans vos À la une, en mode IA et dans les aperçus IA.
Avant de partir...
RedReplier
Repérez chaque acheteur qui cherche ce que vous vendez
RedReplier surveille Reddit, X, Bluesky et Hacker News en temps réel, classe chaque sujet selon l'intention d'achat et rédige votre réponse, pour que vous arriviez en premier.
Reddit, X, Bluesky et HN
Alertes d'intention en temps réel
Réponses IA illimitées
Classé par intention d'achat
Articles connexes


Seuls huit opérateurs de recherche Reddit sont documentés officiellement
Les opérateurs de recherche Reddit se divisent en huit documentés et une longue traîne qui ne vit que dans les posts de la communauté. Voici le tri.


Repérés dans les fils publics : que sont les points de douleur client ?
Lu dans les fils publics : que sont les points de douleur client, leurs quatre types et les formulations qui séparent une plainte d'un signal d'achat.


Jakob Nielsen a publié la règle 90-9-1 en 2006, et les preuves depuis sont minces
Jakob Nielsen a publié la règle 90-9-1 en 2006 : 90% d'une communauté en ligne ne fait que lire, 9% contribue parfois, 1% écrit presque tout. Ce qu'elle vaut.

