Giriş: API
DR kontrol aracı API'si: her parametre ve alan açıklandı
İstek yapısının ve her kimlik doğrulaması yapılan yanıtın taşıdığı iki alan için referans. Eyleme özgü satırlar değişebilir, bu nedenle ayrıştırma yapmadan önce bir çağrıyı test edin.

Hizmet, JSON döndüren bir REST API'dir. CORS açıktır. Bir tarayıcı sayfası bunu doğrudan çağırabilir. Anahtarlar sk_ ile başlar ve Google ile giriş yaptıktan sonra hesap sayfasından alınır.
Temel URL https://rankupedia.com/api.php şeklindedir. key=sk_... ile sorgu dizesinde veya Authorization: Bearer sk_... başlığıyla kimlik doğrulaması yapın; istemcinizin tercihine bağlı olarak hangisini kullanırsanız kullanın. Dört eylem buna gerek duymaz: domain, overview, stats ve suggest.
Bir DR kontrol aracı, çıktısını işleyebildiğinizde yalnızca o zaman kullanışlı olur. Aşağıdaki örnek en küçük kullanışlı durumdur ve ondan sonraki bölümler insanların hata yaptığı kısımları kapsar.
Tek çağrı, açıklama ile
Ücretsiz overview eylemi. Alanı kendi alanınızla değiştirin.
curl "https://rankupedia.com/api.php?action=overview&q=nytimes.com"
# authenticated listing, 100 rows per page:
curl -H "Authorization: Bearer sk_live_..." \
"https://rankupedia.com/api.php?action=refdomains&q=nytimes.com&per=100&page=1&order=desc"Bir isteğin anatomisi
Eylemi seçin
action değeri işlemi ve fiyatı belirler. Ücretsiz eylemler maliyet tablosunda listelenmiştir.
Hedefi adlandırın
q değeri, şema veya yol içermeyen, sadece alan adı şeklindedir (örneğin nytimes.com).
Eğer eylem ücretliyse kimlik bilgilerini ekleyin
İster sorgu dizesinde key ister Bearer başlığı. Başlıklar anahtarların sunucu günlüklerinde ve tarayıcı geçmişinde görünmemesini sağlar.
Sayfalama ve sıralama
page ve per sonuçları dilimlere ayırır ve sort ile order bunları düzenler. Sayfalama 50.000 satırda durur.
İlk çağrıdan önce alan listesi hazırlama
Birçok tuhaf sonuç, sunucudan ziyade girdiden kaynaklanır. Listeyi bir kez temizleyin, sonra gönderin.
Sadece alan adı olmayan her şeyi temizleyin. Yol içeren bir adres, q değerinin beklemediği karakterler ekler; bu nedenle şemayı, yolu ve sonundaki eğik çizgiyi kaldırın.
Şemayı ve yolu kaldırın
https://shop.example.org/blog/ adresini çağrıdan önce shop.example.org'a dönüştürün. q değeri sadece alan adı alır, bu nedenle yol burada atılır ve gönderilmez.
E-tablolar bu ayrıntıları bir hücrenin içinde gizler. Eğik çizgiler ve iki nokta için hızlı bir filtre, bunların çoğunu yakalar.
İsimleri küçük harfe çevirin ve tekrarları kaldırın
Alan adları büyük/küçük harf duyarlı değildir, bu nedenle Example.COM ve example.com aynı hedefi ifade eder. İkisini de göndermek, tek bir cevap için kredileri iki kez harcar.
Çağrı sayısını saymadan önce tekrarları temizleyin. 300 tekrar içeren 2.100 isimli bir liste, ham haliyle iki bulk_dr çağrısı gerektirir; ancak temizlendikten sonra benzersiz 1.800 isim tek bir çağrıda sığar.
Kök alan adı ile alt alan adı arasında karar verin
blog.example.org gibi bir alt alan adı, listenizde kendi başına bir isimdir. Hangisi hakkında soru sorduğunuzu göndermeden önce karar verin.
Sorunuz tüm siteyi kapsıyorsa, kök ismi gönderin. Tek bir alt alan adıyı kapsıyorsa, tam olarak o ismi test edin ve cevabı yalnızca ona ait olarak okuyun.
Kararı işin notlarına yazın, böylece bir sonraki çalıştırmada (belki farklı bir kişi tarafından) aynı kural uygulanır.
Sorgu parametreleri
| Parametre | Anlam | Notlar |
|---|---|---|
| action | Hangi işlemin çalıştırılacağı | Zorunlu; maliyet tablosuna bakın |
| q | Hedef alan adı | Örnek: nytimes.com |
| key | API anahtarı | Veya Bearer başlığını kullanın |
| page | Sonuçların sayfa numarası | Derin sayfalama 50.000 ile sınırlıdır |
| per | Sayfa başına satır sayısı | 10 ile 5000 arasında kabul edilir; bir çağrı bir yüklemedir, satır sayısına bakılmaksızın |
| sort | Sıralanacak sütun | Mevcut sütunlar eyleme bağlıdır |
| order | asc veya desc | Sort ile birlikte kullanın |
| domains | bulk_dr için liste | Her seferinde en fazla 2.000 alan adı, GET veya POST gövdesi aracılığıyla |

Uzun bir listeyi sayfalamak
Listeleme eylemleri sonuçları sayfalarda döndürür. Dilimi kontrol eden iki parametre vardır: page hangi dilimi seçeceğini, per ise kaç satır tutacağını belirler. Per 10 ile 5000 arasında değerler kabul eder.
Önce sayfa boyutunu seçin. Daha büyük bir per değeri, çağrı sayısını azaltır ve faturalandırma satırlardan ziyade çağrı sayısına göre yapılır.
Sayfalamadan önce sıralayın
Sort ve order, hangi satırların birinci sayfaya düşeceğini belirler. Bir seri içindeki her çağrıda ikisini de ayarlayın, böylece her sayfa aynı sıralamadan gelir.
En güçlü satırları önce görmek istediğinizde bir metrik sütunu için desc kullanın, en zayıfları aradığınızda asc kullanın. Mevcut sütun adları eyleme bağlıdır.
Uzun bir çalışmaya güvenmeden önce iki sayfalık küçük bir testle sıralamayı onaylayın.
50.000 satır sınırında durun
Derin sayfalama 50.000 satırda durur. Bu noktadan sonra çağrı yeni bir şey döndürmez, bu nedenle sayfalama yapan bir döngü kredileri boşa harcar.
Soruyu daraltın veya işi daha küçük çalışmalara bölün. Farklı bir hedefle ikinci bir sorgu, genellikle daha derin bir sayfadan daha temizdir.
Derinlik için bir sınır, listeleme özelliğinin bir parçasıdır, bu nedenle bunu çağıran her istemci için geçerlidir.
Kısa bir sayfada döngüyü sonlandırın
Bir sayfa per değerinden daha az satır döndürdüğünde durun. Bu, listenin tükendiğinin yaygın bir işaretidir.
Bu testi sorun giderme girişindeki bakiye kontrolü ile birleştirin, böylece döngü son sayfada veya düşük bakiyede (hangisi önce gelirse) sonlanır.
Her yanıtta mevcut olan alanlar
ok
Bir boolean. True çağrının tamamlandığını, False tamamlanmadığını ve HTTP durumunun nedenini gösterdiğini belirtir.
_credits
Kimlik doğrulaması yapılan çağrılarda görünür. Bu çağrının maliyetini ve kalan bakiyenizi kredilerde bildirir, bu da döngüyü bakiye bitmeden önce durdurmanıza olanak tanır.
Her eylem için satır düzeyindeki alan adları canlı bir yanıtta görünür. Hizmetten uzaklaşmaması için bunları bu girişte çoğaltmıyoruz.
Bir döngü yazmadan önce bir çağrıyı test etme
Tanıdık bir alan adı seçin
Profilini kendi sayfalarından yargılayabileceğiniz bir site seçin. Tanıdık bir alan adı, tuhaf bir sayının fark edilmesini kolaylaştırır.
Tek bir ücretsiz çağrı gönderin
Anahtar olmadan overview veya domain çalıştırın. Yanıt, JSON'un gerçek yapısını gösterir; bu, bu dahil olmak üzere herhangi bir açıklamadan daha güvenilirdir.
En küçük sayfa ile tek bir ücretli çağrı gönderin
Bir listeleme eyleminde per=10 kullanın. Ölçeklendirmeden önce satır alanlarını ve _credits değerini göreceksiniz.
_credits değerini okuyun, sonra ölçeklendirin
Tek bir çağrının maliyetini planınızdaki çağrı sayısıyla çarpın. Toplam bakiyeden büyükse, döngü başlamadan önce planı küçültün.
Bir istemciyi dağıtmadan önce
- Başka herhangi bir alanı okumadan önce ok bayrağını kontrol edin
- Her çağrıda _credits değerini günlüğe kaydedin
- Veriyi aylık bir anlık görüntü olarak kabul edin
- 401 ve 402 hatalarını ayrı ayrı işleyin, sorun giderme girişine bakın
- Anahtarı ön uç kodunda tutmayın

Toplu işleme ilişkin notlar
bulk_dr eylemi çağrı başına 2.000 alan ada kadar kabul eder. Bunları bir domains sorgu değeri olarak veya liste bir URL için çok uzunsa bir POST gövdesi olarak gönderin.
compare en fazla 20 alan adı alır ve intersect 2 ile 10 arasında alır. Intersect tek bir soruya cevap verir: hangi siteler adını verdiğiniz tüm alanlara bağlantı verir.
Faturalandırma çağrı başına yapıldığı için, daha büyük toplu işler her satır için her zaman daha ucuzdur. Ayrıca bir birim olarak başarısız olurlar. Tekrarlayabileceğiniz bir boyuta göre parçalara ayırın.
Uzun listeler bir POST gövdesine girebilir. Reddedilen bir toplu iş kullanılabilecek satır içermediğinden, yanıtta her şeyden önce ok bayrağını okuyun.
Varsayımlar olmadan JSON okuma
İşleyiciler, bir yanıtın atladığı alanlarda hata verir. Her satırda her anahtarın var olduğunu varsayan kod kırılgandır ve tek bir kısa satır tüm bir işi durdurabilir.
Eksik alanları normal olarak kabul edin
Satır alanları eyleme bağlıdır, bu nedenle bir listelemede mevcut olan bir alan başka birinde yok olabilir. Her alana bir varsayılan değer atayın ve devam edin.
Bir şeylerin başarısız olduğunu değil, hangi alanın eksik olduğunu günlüğe kaydedin. Bu günlük, şemanın mı yoksa kendi kodunuzun mu değiştiğini gösterir.
Örnek için ham yanıtları saklayın
Her yeni işte ilk birkaç çağrının ham JSON'unu kaydedin. Daha sonra bir sayı yanlış görünürse, kaydedilen metik soruyu bellekten daha hızlı çözer.
Örneği tarihi ve eylem adıyla birlikte saklayın. Aylık yenileme, aynı çağrının bir sonraki ay farklı satırlar döndürebileceği anlamına gelir.
Ailelere göre eylemler
| Aile | Eylemler | Tipik kullanım |
|---|---|---|
| Ücretsiz | domain, overview, stats, suggest | Hızlı aramalar ve otomatik tamamlama |
| Puanlama | bulk_dr, compare, dr_distribution | Listeleri ve rakip setlerini eleme |
| Listeleme | refdomains, backlinks, anchors, toppages, anchor_cloud | Tek bir siteyi denetleme |
| Arama | search, keyword, intersect | Belirli bir anchor ile veya birkaç rakiple bağlantı kuranları bulma |
Satır düzeyindeki alan adları eyleme göre farklılık gösterir ve burada listelenmez. Bilgi kaynağı olan JSON'u okumak için tanıdık bir alan üzerinde ücretsiz bir eylemle uç noktayı çağırın.
Geliştiricilerin sorduğu parametre soruları
Dört parametre sorusu, API ile ilk haftanın çoğunu kapsar.
Her çağrı için anahtara ihtiyacım var mı?
Hayır. domain, overview, stats ve suggest eylemlerinin anahtara ihtiyacı yoktur. Ücretli eylemler için anahtara ihtiyaç vardır; bu anahtar key parametresi veya Bearer başlığı olarak gönderilir.
Anahtarı URL'de gönderebilir miyim?
Evet, key parametresi sorgu dizesinde çalışır. Başlık, anahtarın adresin kendisinde görünmemesini sağlar; bu, günlükler ve paylaşılan bağlantılar için birçok ekip tarafından tercih edilir.
per değerini 5000'in üzerine çıkarmak istesem ne olur?
Belgelenmiş aralık 10 ile 5000 arasındadır. Bu aralığın dışındaki değerler bu girişin açıkladığı şeyin dışına düşer, bu nedenle değeri aralık içinde tutun ve daha fazlası için sayfalamayı kullanın.
q'da harf durumu önemli mi?
Alan adları büyük/küçük harf duyarlı değildir, bu nedenle göndermeden önce değeri küçük harfe çevirin. Tek bir yazım, çalıştırmalar arasında sonuçları karşılaştırmayı kolaylaştırır.