Reddit Fetch

Referenz für Ihren Client des historischen Archivs

Routen, Bearer oder X-API-Key, UTC-Daten, flache Datensätze und Fehler für serverseitige JavaScript-Abfragen.

API-Schlüssel erhalten

API-Endpunkte

MethodeEndpunktParameter
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—

Abfrageparameter

ParameterWert / Typ / Bereich
qtext
subredditkeyword
authorkeyword
kindpost | comment
fromISO date
toISO date
min_scoreinteger
limit1–100
page1–100
iditem ID
prefixsubreddit prefix

Authentifizierung und Routen

Die Abrufrouten verwenden GET unter https://api.redditfetch.com. Senden Sie X-API-Key: <Schlüssel> oder Authorization: Bearer <Schlüssel>; beide Header sind zulässig. Bewahren Sie den Schlüssel auf Ihrem Server auf. Der Kontobereich verwendet eine Sitzung mit Secure HttpOnly-Cookie. Diese Sitzung ist von der Authentifizierung Ihrer Datenabfragen getrennt und ersetzt nicht den erforderlichen Header im eigenen Client.

/v1/search durchsucht Veröffentlichungen und Kommentare, /v1/posts beschränkt die Auswahl auf Veröffentlichungen und /v1/comments auf Kommentare. Diese Routen akzeptieren keinen id-Filter. Für eine bekannte Kennung sucht /v1/item?id=... einen einzelnen Datensatz. Die Route ruft weder dessen Antworten noch sämtliche untergeordneten Kommentare oder die ganze Kette vorheriger Nachrichten automatisch ab. Auch das Auffinden des bezeichneten Datensatzes ist nicht garantiert.

/v1/subreddits akzeptiert prefix und limit zur Suche nach Communities. prefix ist kein Filter für die Inhaltsrouten. Die dort genannten Anzahlen sind kein garantiert exakter Gesamtzensus. /v1/status ist öffentlich und wird nicht berechnet. Der Endpunkt gibt eine statische Beschreibung des Dienstes aus und bestätigt die Antwort der HTTP-Anwendung, ohne die Suchmaschine oder die Verfügbarkeit von Archivdatensätzen zu prüfen.

Filter und zurückgegebene Daten

Für search, posts und comments sind q, subreddit, author, kind, from, to, min_score, limit und page zulässig. kind akzeptiert die unveränderten Werte post und comment. q führt eine Textsuche aus, keine beliebige Abfragesprache und keine Analyse von Stimmungen. Überlegen Sie bei jedem Filter, ob er Nachrichten ausschließt, die später als Kontext zum Verständnis einer Antwort benötigt werden könnten.

from und to erwarten YYYY-MM-DD in UTC und beziehen sich auf created_utc. Der Tag to wird vollständig eingeschlossen. Stunden oder Sekunden werden mit diesen Parametern nicht angegeben; es geht auch nicht um den Zeitpunkt der Aufnahme ins Archiv. min_score ist ein numerischer Mindestwert für die Bewertung. Der Filter sortiert nicht und erkennt weder verlässliche Antworten noch besonders gute Lernmaterialien.

Die API gibt flache Datensätze zurück, keine serverseitig erstellten Thread-Strukturen. Wenn Felder wie parent_id und link_id vorhanden sind, können Sie diese lokal gruppieren, aber eine vollständige Konversation ist nicht garantiert. Es gibt keine integrierten Filter für parent_id oder link_id. Dies erlaubt eine flexible Client-seitige Verarbeitung. Eine Abrufantwort enthält data, pagination und credits. Die Felder in data können variieren; fehlender Text und offene Verweise sollten als solche erhalten bleiben.

Seitengrenzen, Fehler und Abrechnung

limit und page erlauben Werte von 1 bis 100. Die interne Reihenfolge _doc garantiert keine Sortierung nach Zeit, Relevanz oder Bewertung. Eine lokal sortierte Tabelle ordnet nur die empfangenen Datensätze neu. Kleinere Zeiträume und weitere Seiten können eine Erhebung organisieren, beweisen aber weder vollständige Abdeckung noch Einmaligkeit oder unveränderte Daten zwischen zwei entfernten Abfragen. Dokumentieren Sie deshalb die Grenzen Ihrer tatsächlich erhaltenen Auswahl.

Lesen Sie pagination.total zusammen mit relation: eq bezeichnet eine exakte Anzahl für die Abfrage, gte eine untere Schranke und unknown eine nicht verlässlich bekannte Anzahl, gegebenenfalls null. Unbekannt ist nicht null Datensätze. Selbst eine exakte Anzahl beweist nicht den vollständigen Download und auch nicht die Erfassung aller historischen Kommentare. Bewahren Sie die zurückgegebenen Hinweise zur Paginierung für Ihren Bericht auf.

HTTP 400 bedeutet ungültige Parameter, 401 einen fehlenden oder ungültigen Schlüssel, 402 zu wenig Guthaben und 429 eine Begrenzung der Anfragehäufigkeit. Jeder erfolgreiche Abruf kostet einen Credit, auch ein leerer. Ungültige Anfragen buchen nichts ab; Fehler des vorgeschalteten Dienstes erstatten die Reservierung. Ein Client kann die Antwort nach berechnetem Erfolg verlieren. Ein erfolgreicher neuer Versuch wird erneut berechnet. Speichern Sie die Antwort, bevor Sie Ihren lokalen Fortschritt aktualisieren.