Reddit Search API

Referensi kueri dan respons pencarian Reddit

Referensi teknis rute pencarian Reddit historis, autentikasi X-API-Key, tanggal UTC, total paginasi, serta penanganan kode 400, 401, 402, dan 429.

Dapatkan kunci API

Rute API

MetodeRuteParameter
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
GET/v1/status—

Parameter kueri

ParameterNilai / tipe / rentang
qtext
subredditkeyword
authorkeyword
kindpost | comment
fromISO date
toISO date
min_scoreinteger
limit1–100
page1–100
iditem ID
prefixsubreddit prefix

Pilih rute dan autentikasi yang sesuai

Permintaan data menggunakan host api.redditsearchapi.com. GET /v1/search digunakan untuk pencarian umum, /v1/posts untuk postingan, dan /v1/comments untuk komentar. Untuk mengambil satu item berdasarkan pengenal, gunakan /v1/item dengan parameter id. Rute postingan dan komentar tidak memerlukan id. Penemuan komunitas berdasarkan awalan nama tersedia melalui /v1/subreddits dengan parameter prefix.

Kirim kunci API dari akun domain ini melalui header X-API-Key. Cookie sesi panel akun bukan pengganti kunci untuk permintaan data. Sebaiknya pisahkan konfigurasi kredensial dari teks pencarian yang dapat dibagikan. Saat memeriksa kegagalan autentikasi, pastikan header dikirim tanpa menyalin kunci rahasia ke log publik, pesan kesalahan pengguna, atau tautan hasil pencarian.

GET /v1/status terbuka untuk umum dan tidak menggunakan kredit. Responsnya berupa penjelasan statis tentang layanan arsip serta menunjukkan bahwa server HTTP merespons. Rute ini tidak memeriksa kesehatan mesin pencarian, ketersediaan rekaman, atau kelengkapan cakupan. Gunakan hanya sebagai pemeriksaan respons HTTP; keberhasilan rute ini tidak berarti bahwa kueri data tertentu pasti dapat diproses.

Susun filter dan baca total paginasi

Parameter pencarian yang didukung adalah q, subreddit, author, kind, from, to, min_score, limit, dan page. Nilai kind adalah post atau comment. Tanggal from dan to menggunakan YYYY-MM-DD dengan dasar UTC; tanggal to termasuk dalam rentang. Bedakan format tanggal di antarmuka pengguna dari nilai yang benar-benar dikirim agar batas pencarian dapat diperiksa kembali.

limit dan page masing-masing menerima nilai 1 sampai 100. Satu panggilan mengambil satu halaman dengan paling banyak 100 rekaman. Untuk halaman berikutnya diperlukan panggilan lain. Membagi pekerjaan menurut tanggal atau komunitas dapat membantu mengatur pengambilan, tetapi tidak membuktikan cakupan tanpa celah, rekaman unik, atau keberhasilan mengekspor seluruh kecocokan dari arsip.

Relasi eq berarti total kecocokan kueri tepat, gte berarti batas bawah, dan unknown berarti total tidak dapat diketahui secara andal; nilainya dapat berupa null. Total tepat tidak membuktikan bahwa seluruh Reddit telah diarsipkan. Urutan hasil adalah _doc internal, bukan waktu, relevansi, atau skor. min_score hanya menyaring ambang skor dan tidak mengendalikan pengurutan.

Tangani kesalahan dan bentuk rekaman

Kode 400 menunjukkan permintaan tidak valid, 401 kunci hilang atau tidak valid, 402 kredit tidak cukup, dan 429 batas laju terlampaui. Perbaiki parameter untuk 400, periksa header untuk 401, dan evaluasi saldo untuk 402. Untuk 429, gunakan jeda serta pengulangan terbatas. Mengirim ulang konfigurasi yang sama tanpa memperbaiki penyebabnya bukan penyelesaian untuk kesalahan kredensial atau saldo.

Permintaan tidak valid tidak mendebit kredit; kegagalan upstream mengembalikan kredit yang dicadangkan. Hasil kosong yang berhasil tetap dikenai biaya. Jika koneksi klien terputus setelah server berhasil mengambil data, kredit mungkin sudah terpakai. Setiap pengulangan yang berhasil memakai kredit lagi. Respons berupa rekaman datar; parent_id atau link_id dapat dipakai untuk pengelompokan lokal jika tersedia, tetapi bukan filter kueri server.