Periksa autentikasi dan respons data secara terpisah

Pelajari dua header kunci, rute GET, tanggal UTC dan batas halaman. Terapkan tindakan berbeda untuk HTTP 400, 401, 402, serta 429 dan kegagalan koneksi.

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

Header dan rute yang didukung

Alamat dasar adalah https://api.redditapiproxy.com. Pengambilan terlindungi menerima Authorization: Bearer YOUR_API_KEY atau X-API-Key: YOUR_API_KEY. Keduanya didukung; pilih satu. Nilai Bearer merupakan kunci arsip ini, bukan token OAuth Reddit. Simpan kunci asli pada server. Cookie sesi Secure HttpOnly panel akun bukan pengganti header pengambilan. Akun, kunci, dan saldo khusus domain ini dan tidak sama dengan akun merek lain dalam jaringan.

GET /v1/search mencari posting dan komentar; /v1/posts mengambil posting, sedangkan /v1/comments mengambil komentar. GET /v1/item?id=... untuk satu catatan dengan pengenal diketahui. id hanya didukung pada item dan bukan filter posts atau comments. GET /v1/subreddits?prefix=... mencari awal nama komunitas. limit membatasi hasil yang diminta; tidak ada jaminan bahwa keluaran komunitas adalah inventaris lengkap atau hitungan tepat secara global.

GET /v1/status terbuka tanpa kunci dan tidak memakai kredit. Respons menunjukkan cakupan layanan tetap serta aplikasi HTTP yang merespons. Sumber arsip, pencarian, catatan, kunci, dan saldo tidak diperiksa. Jangan menganggap rute data terlindungi bekerja hanya karena status berhasil. Tentukan tampilan yang berbeda untuk informasi ini dan periksa HTTP permintaan data itu sendiri sebelum memprosesnya sebagai keberhasilan.

Filter dan halaman terbatas

Pencarian, posting, dan komentar mendukung q, subreddit, author, kind, from, to, min_score, limit, serta page. Nilai kind ialah post atau comment. Tanggal menggunakan YYYY-MM-DD berdasarkan UTC; hari to termasuk dalam rentang. min_score adalah ambang skor minimum, bukan pengurutan. parent_id dan link_id bukan filter kueri. Jangan menganggap semua rute lain menerima seluruh kondisi pencarian tersebut atau dapat mengembalikan percakapan lengkap melalui bidang hubungan.

limit menerima 1–100 dan page menerima 1–100. Batasnya 100 catatan per permintaan dan 100 halaman per kueri. Setiap halaman diminta terpisah. Urutan dokumen arsip bukan waktu, relevansi, atau skor. Pembagian tanggal dan pengulangan halaman tidak membuktikan cakupan penuh, hasil tidak berubah, maupun keunikan catatan. Lacak kondisi serta halaman yang telah disimpan dalam catatan pekerjaan aplikasi Anda sendiri.

Total catatan dengan eq bersifat tepat, gte adalah batas bawah, dan unknown atau null berarti tidak ada total andal. Itu bukan jumlah halaman dan angka tepat tidak membuktikan semua catatan sudah tersimpan. Catatan datar dapat dibaca atau dihitung tanpa pohon. Jika meneliti hubungan, gunakan pengelompokan lokal opsional memakai parent_id atau link_id yang tersedia. Induk dan komentar yang tidak diterima tidak dapat dipulihkan lewat proses itu.

Kesalahan dan biaya

Kesalahan status HTTP penting untuk penanganan kesalahan di sisi klien. Kode 400 menandakan permintaan yang tidak valid secara format. Kode 401 menunjukkan kunci yang hilang atau tidak sah. Kode 402 berarti saldo kredit tidak mencukupi. Kode 429 menandakan bahwa batas kecepatan permintaan telah terlampaui, bukan timeout koneksi.

Permintaan tidak valid tidak mendebit saldo; kegagalan sumber hulu mengembalikan kredit yang dicadangkan. Pengambilan berhasil tetap memakai satu kredit meskipun kosong. Klien dapat kehilangan respons setelah server menyelesaikan permintaan berbayar. Pengulangan berhasil menggunakan kredit tambahan. Jangan menyimpulkan gratis dari banyaknya kesalahan yang terlihat. Evaluasi keadaan penyimpanan lokal dan pengenal pekerjaan tanpa mencatat header rahasia sebelum memutuskan pengambilan ulang.

Perbaiki parameter untuk 400 dan konfigurasi kunci untuk 401, periksa saldo untuk 402, serta tunda pengiriman untuk 429. Jangan memasukkan semua kegagalan ke pengulangan otomatis yang sama. Respons HTTP yang menyatakan penolakan berbeda dari jaringan yang tidak memberikan respons kepada klien. Keputusan menunggu atau mencoba kembali perlu mempertimbangkan perbedaan itu, batas pekerjaan aplikasi, dan biaya keberhasilan berikutnya.