Reddit Proxy
DE

StartDokumentation

Referenz für den Lesevertrag des historischen Archivs

GET, beide Schlüsselheader, UTC-Daten, flache Datensätze, Seitengrenzen und Fehler für historische Lesezugriffe.

Erste Anfrage

Senden Sie die Anfrage von Ihrem Server und halten Sie Ihren API-Schlüssel geheim.

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

API-Referenz

↔ Tabelle horizontal verschieben

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.redditproxy.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.

Jede Abfrage gibt flache Datensätze zurück, was bedeutet, dass keine serverseitigen Thread-Bäume oder vorgefertigten Hierarchien existieren. Wenn in den Ergebnissen Felder wie parent_id oder link_id vorhanden sind, können Clients diese Informationen lokal gruppieren, um Konversationen nachzubilden. Es gibt jedoch keine Garantie dafür, dass diese Felder alle Informationen enthalten oder eine vollständige Abfrage der Gesamtstruktur ermöglichen, da die Server-Filteroptionen für diese IDs nicht direkt unterstützt werden. Die Antwort enthält data, pagination und credits. Felder der einzelnen Dokumente können variieren; fehlender Text und offene Verweise sollten ohne erfundene Ergänzungen 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.