Reddit Proxy
FR

AccueilDocumentation

Référence du contrat de lecture de l’archive

GET, deux en-têtes de clé, dates UTC, enregistrements plats, pagination et erreurs pour migrer des lectures historiques.

Première requête

Envoyez la requête depuis votre serveur et gardez votre clé API privée.

cURL
curl --fail-with-body \
  -H "Authorization: Bearer ${REDDIT_API_KEY}" \
  "https://api.redditproxy.com/v1/posts?subreddit=dataengineering&limit=3"

Référence API

↔ Faites défiler le tableau horizontalement

Routes de l’API

MéthodeRouteParamètres
GET/v1/searchq, subreddit, author, kind, from, to, min_score, limit, page
GET/v1/postsq, subreddit, author, kind, from, to, min_score, limit, page
GET/v1/commentsq, subreddit, author, kind, from, to, min_score, limit, page
GET/v1/itemid
GET/v1/subredditsprefix, limit
GET/v1/status—

Paramètres de requête

ParamètreValeur / type / plage
qtext
subredditkeyword
authorkeyword
kindpost | comment
fromISO date
toISO date
min_scoreinteger
limit1–100
page1–100
iditem ID
prefixsubreddit prefix

Authentification et routes disponibles

Les routes de récupération utilisent GET sur https://api.redditproxy.com. Transmettez X-API-Key: <clé> ou Authorization: Bearer <clé> ; les deux en-têtes sont acceptés. Conservez le secret sur votre serveur. Le panneau du compte utilise une session avec cookie Secure HttpOnly, distincte de l’authentification nécessaire aux requêtes de récupération de votre application.

/v1/search recherche publications et commentaires ; /v1/posts se limite aux publications et /v1/comments aux commentaires. Ces routes n’acceptent pas id comme filtre. Pour un identifiant connu, /v1/item?id=... recherche un enregistrement individuel. Cette opération ne parcourt pas automatiquement ses réponses, ses descendants ou ses ancêtres et ne promet pas de retrouver le message demandé.

/v1/subreddits accepte prefix et limit pour découvrir des communautés. prefix n’est pas un filtre des routes de contenu. Les comptages de communautés ne constituent pas un recensement global garanti. /v1/status est public et non facturé : il décrit statiquement le service et confirme que l’application HTTP répond, sans sonder le moteur de recherche ni vérifier la disponibilité des données archivées.

Filtres et structure des réponses

Les paramètres de search, posts et comments sont q, subreddit, author, kind, from, to, min_score, limit et page. kind accepte les valeurs littérales post et comment. q effectue une recherche textuelle, sans langage arbitraire de requêtes ni classification des sentiments. Choisissez les filtres en tenant compte des messages qu’ils peuvent exclure alors que votre analyse en aurait besoin pour comprendre une réponse.

from et to utilisent YYYY-MM-DD en UTC et s’appliquent à created_utc. Le jour indiqué par to est inclus entièrement. Ces paramètres n’acceptent ni heures ni secondes et ne désignent pas le moment d’entrée dans l’archive. min_score définit un seuil numérique de score, sans trier les résultats et sans sélectionner automatiquement les conseils les plus utiles ou les intervenants les plus fiables.

Les réponses de l'API sont des enregistrements plats, ce qui signifie qu'elles ne contiennent pas d'arbres de discussion assemblés par le serveur. Lorsque les champs parent_id et link_id sont présents, le client peut effectuer un regroupement local des données. Cependant, il n'y a aucune promesse de complétude concernant l'ancestralité ou la structure hiérarchique complète des conversations archivées retournées par le service. Ces champs ne sont pas des filtres de requête. La réponse contient data, pagination et credits ; les champs de chaque document peuvent varier. Préservez le texte absent et les références non résolues sans inventer le contexte manquant.

Pagination, erreurs et coût des tentatives

limit et page acceptent des valeurs de 1 à 100. L’ordre interne _doc ne garantit aucun tri chronologique, par pertinence ou par score. Trier votre tableau local ne réorganise que les données reçues. Diviser les dates et parcourir des pages peut structurer la collecte, mais ne prouve ni exhaustivité, ni unicité, ni stabilité des enregistrements entre plusieurs requêtes distantes.

Lisez pagination.total avec relation : eq indique un total exact pour la requête, gte une borne inférieure et unknown l’absence d’un total fiable, éventuellement null. Ne remplacez pas inconnu par zéro. Même un total exact ne prouve pas que tous les résultats ont été téléchargés ni que l’archive contient toute l’histoire. Conservez aussi les indicateurs de pagination renvoyés pour décrire les limites rencontrées.

HTTP 400 indique des paramètres invalides, 401 une clé absente ou invalide, 402 un solde insuffisant et 429 une limite de fréquence. Une récupération réussie, même vide, coûte un crédit. Les requêtes invalides ne débitent pas le compte ; les échecs du service source restituent la réservation. Une perte de réponse côté client peut suivre une réussite facturée. Une nouvelle tentative réussie coûte un autre crédit ; enregistrez les réponses avant de mettre à jour votre progression.