Reddit API Gateway

Ikuti perjalanan kunci dalam satu pekerjaan onboarding

Telusuri pekerjaan onboarding melalui pemeriksaan izin, penambahan header, pencatatan percobaan, penyimpanan respons, dan penggantian kunci.

Pisahkan pengguna, pekerjaan, dan akun pembayar

Pengguna produk, pekerjaan internal, dan akun domain pembayar adalah tiga identitas berbeda. Backend menghubungkan dua yang pertama serta memeriksa izinnya. Browser menerima hasil yang diizinkan. Jika kunci bersama ikut diberikan, pemegangnya dapat memulai pengambilan berbayar di luar batas yang dipasang pada layar produk.

Simpan kunci dalam konfigurasi server atau pengelola rahasia yang sesuai dengan infrastruktur Anda. Variabel lingkungan membantu memisahkan nilai dari kode, tetapi periksa apakah proses pembangunan aplikasi menyisipkan variabel itu ke paket browser. Hindari menyalin konfigurasi lengkap ke log dan laporan kesalahan. Hapus header autentikasi dari pencatatan permintaan. Untuk penelusuran masalah, gunakan jalur, filter, waktu, status HTTP, dan pengenal pekerjaan lokal tanpa membawa rahasia yang sebenarnya.

Susun permintaan arsip yang diizinkan

Tetapkan host arsip dan rute pencarian yang diizinkan untuk pekerjaan pertama. Susun q=onboarding, subreddit=SaaS, dan limit=3 dari masukan tervalidasi; tambahkan kunci hanya saat mengirim permintaan keluar. Jangan meneruskan header tersebut ke URL sembarang dari pengunjung. Pemeriksaan izin harus selesai sebelum tahap ini.

Authorization: Bearer YOUR_API_KEY dan X-API-Key: YOUR_API_KEY adalah dua bentuk header yang valid. Keduanya membawa kunci arsip domain ini, bukan token OAuth Reddit. Kunci dari satu domain tidak berlaku di merek jaringan lain dan saldonya juga terpisah. Gunakan penanda pengganti pada contoh, rekaman layar, serta laporan masalah. Jangan membagikan nilai asli kepada pengguna produk hanya karena mereka berhak melihat sebagian hasil yang Anda ambil dari arsip.

Catat percobaan sebelum mengulang

Berikan pengenal internal dan anggaran percobaan yang kecil kepada pekerjaan. Catat rute, filter, nomor percobaan, dan hasil tanpa header autentikasi. Contoh kebijakan mengizinkan tiga percobaan total, termasuk perpindahan halaman dan pengulangan. Ini aturan produk Anda, bukan kuota pengguna atau buku catatan pekerjaan yang disediakan arsip.

Perhatikan alur yang tidak pasti: respons kosong pertama yang berhasil memakai satu kredit; respons kedua hilang dan mungkin tetap dikenai biaya; pengulangan yang berhasil memakai kredit lagi. Jangan mencatat respons hilang sebagai kegagalan gratis. Kegagalan sistem hulu mengembalikan reservasi, tetapi kegagalan penguraian atau penyimpanan lokal tidak membatalkan keberhasilan berbayar.

Simpan respons sebelum menafsirkannya

Simpan respons sebelum mengubahnya untuk tampilan. Rekaman bersifat datar; kolom bisa tidak tersedia dan parent_id atau link_id bisa menunjuk data yang belum diterima. Pengelompokan tidak membuktikan percakapan lengkap. Tanggal memakai YYYY-MM-DD dalam UTC, termasuk hari to. q mencari title dan text dengan AND di dalam kolom yang cocok; min_score menyaring, sedangkan _doc bukan peringkat atau urutan waktu.

Ganti kunci tanpa mengandalkan masa tumpang tindih

Siapkan penggantian dengan menghentikan penerimaan pekerjaan baru. Setelah masuk dan mengonfirmasi kata sandi, regenerasi langsung menonaktifkan kunci lama. Perbarui proses pengambil data sebelum menjalankannya kembali. Jangan bergantung pada masa berlaku yang tumpang tindih. Batasi pula akses ke nilai baru selama penyerahan dan jauhkan dari keluaran diagnostik.

Batas lokal hanya mengendalikan permintaan melalui backend Anda. Batas itu tidak menghentikan penggunaan langsung kunci yang bocor. Saat menyelidiki, bandingkan catatan percobaan dengan konteks akun tanpa menganggap kenaikan volume sebagai bukti kebocoran. Penggantian tidak mengembalikan kredit yang terpakai. Lindungi kata sandi juga: tidak tersedia pengaturan ulang atau pengiriman kunci melalui email.

Periksa seluruh alur dengan pekerjaan kecil

Terakhir, jalankan pekerjaan kecil dan periksa hasil nyatanya. Untuk 400 periksa parameter, 401 kredensial, 402 saldo, dan 429 frekuensi. Batasnya 100 rekaman per permintaan dan 100 halaman per kueri tanpa jaminan cakupan lengkap. /v1/status memberi keterangan cakupan statis, bukan pemeriksaan kesehatan arsip. Sampel tersimpan dan keputusan berhenti yang beralasan juga dapat menyelesaikan pekerjaan.