Kimlik Doğrulama ve Giriş Süreci
Veri çekme istekleri Authorization: Bearer YOUR_API_KEY veya X-API-Key: YOUR_API_KEY başlıklarından biriyle doğrulanır. /v1/status anahtarsız ve ücretsizdir. Kayıt e-posta ve UTF-8 kodlamasında 12–72 baytlık parola ile yapılır. Anahtar ödeme öncesinde bir kez gösterilir; güvenli bir kopya tutun. Hesap oturumu Secure HttpOnly çerez kullanır ve API anahtarıyla yapılan veri çekme doğrulamasından ayrıdır.
Kimlik doğrulama başlığı üzerinden iletilen bu anahtar, veri çekme isteklerinde hesabı doğrulamak için kullanılır. Geçersiz veya eksik bir anahtar sunulduğunda, sistem HTTP 401 hata kodunu döndürür ve işlemi reddeder. Bu durum, yetkisiz erişimi önlemek ve kaynakların doğru kullanıcılar tarafından kullanılmasını sağlamak için tasarlanmış temel bir güvenlik katmanıdır.
HTTP 400 geçersiz istek, 401 eksik veya geçersiz anahtar, 402 yetersiz bakiye, 429 hız sınırıdır. Geçerli anahtar tek başına başarılı yanıt veya kayıt bulunacağı garantisi değildir. 400 için parametreyi, 401 için anahtarı kontrol edin; 402 için işlemi durdurun veya bakiye yükleyin, 429 durumunda bekleyin. Hız sınırının uygulanması arşiv sağlığını veya kullanılabilirliğini kanıtlamaz. Yanıtı doğrulamadan yerel ilerleme durumunu tamamlanmış saymayın.
Veri Yapısı ve Filtreleme Mekanizmaları
Yanıtlar düz JSON kayıtlarıdır. parent_id ve link_id alanları varsa yerel gruplama yapılabilir, ancak bütün üst kayıtların veya konuşma geçmişinin bulunduğu garanti edilmez. Bu alanlar sorgu filtresi değildir. Alan türünü ve gerçek kimlikleri kontrol edin; eşleşmeyen bağlantıyı belirsiz bırakın. İstemci mantığı mevcut verileri düzenler, eksik konuşmayı geri getirmez. Böylece yerel görselleştirmeyi arşivde doğrulanmış tam bir konuşma ağacıyla karıştırmamış olursunuz.
Arama filtreleri q, subreddit, author, kind, from, to, min_score, limit ve page olarak yazılır. kind için post veya comment kullanılır. Tarihler UTC takviminde YYYY-MM-DD biçimindedir; to günü dahildir. min_score yalnızca filtreler. /v1/item tek bilinen kayıt için id gerektirir; /v1/posts ve /v1/comments için id kullanılmaz. /v1/subreddits, prefix ve limit ile topluluk adlarını keşfeder, sayımları küresel olarak kesin olmayabilir.
Her istekte en fazla 100 kayıt ve sorguda en fazla 100 sayfa alınabilir. eq kesin toplamı, gte alt sınırı, unknown güvenilir toplamın bilinmediğini belirtir; toplam null olabilir. Bunlar eşleşen kayıt toplamlarıdır, sayfa sayısı değildir. Alt sınır kesin sayı değildir ve kesin toplam da istemcinin bütün sonuçları kaydettiğini kanıtlamaz. Sayfa yinelemesi veya dönem bölme eksiksiz veya yinelenmeyen toplama garantisi değildir.
Kullanılabilir Yollar ve Hata Kodları
Temel veri erişimi için /v1/search, /v1/posts, /v1/comments ve /v1/item yolları kullanılır. Arama modülü, başlık ve içeriklerde kelime arama imkanı sunarken, alt subreddit listeleme özelliği de mevcuttur. Bu yollar, arşivdeki metinleri verimli bir şekilde keşfetmenizi sağlar. Her bir yol, farklı veri setlerine ve erişim desenlerine hitap ederek kapsamlı bir veri analiz deneyimi sunar.
/v1/status yalnızca statik hizmet açıklaması ve HTTP yanıtı verir. Anahtarı, sorguyu, arama altyapısını veya belirli kaydın varlığını doğrulamaz. Bir durum yanıtından kaynak sistemin veri çekmeye hazır olduğu sonucu çıkarılamaz. Gerçek veri çekme yanıtını kendi alan beklentilerinizle karşılaştırın. Örneğin /v1/comments?subreddit=learnprogramming&limit=3 en fazla üç yorum ister; üç bağlı yorum veya tam bir tartışma dalı getirme sözü vermez.
Başarılı veri çekme isteği boş sonuçta da bir kredi tüketir. Geçersiz istekler kredi düşürmez ve kaynak sistemde başarısız veri çekme rezervi iade edilir. İstemcide yanıt kaybı sunucuda başarısızlık demek değildir; ücretli başarı gerçekleşmiş olabilir. Başarılı tekrar yeni kredi tüketir. Anahtar ve bakiye redditcommentsapi.com içindir. Oturum açıp parola doğrulamasıyla anahtar yenilemek eski anahtarı hemen geçersiz kılar; anahtar e-postası veya parola sıfırlama yoktur.