Authentifizierung und Routen
Die Abrufrouten verwenden GET unter https://api.redditdatastream.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.
Der Zugriff auf das unabhängige historische Reddit-Archiv erfolgt über klar definierte Endpunkte, die sowohl die Abfrage von Suchergebnissen als auch den direkten Zugriff auf spezifische Beiträge und Kommentare ermöglichen. Die API nutzt eine flache Datensatzstruktur, was bedeutet, dass keine serverseitig zusammengefügten Thread-Bäume zurückgegeben werden. Clients müssen die Daten bei Bedarf lokal gruppieren, da keine vollständige Gesprächshierarchie garantiert wird. Felder können fehlen und Verweise auf nicht empfangene Datensätze zeigen. Die Antwort enthält data, pagination und credits. parent_id und link_id sind keine Suchfilter. JSONL entsteht durch lokale Verarbeitung; die Route liefert keinen JSONL-Download.
Seitengrenzen, Fehler und Abrechnung
Für /v1/search, /v1/posts und /v1/comments liegen limit und page jeweils zwischen 1 und 100, mit einer Seite je Anfrage. Die interne Reihenfolge _doc ist keine Chronologie oder Sortierung nach Relevanz oder Bewertung und garantiert keine Zufallsstichprobe. /v1/subreddits akzeptiert nur prefix und limit, ohne page. Lokales Sortieren oder aufgeteilte Zeiträume beweisen weder vollständige Abdeckung noch Eindeutigkeit oder unveränderte Ergebnisse bei weiteren Abfragen.
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.