Přejít na obsah
Rankupedia
RankupediaRegistrovat se

Záznam: API

API nástroje pro kontrolu DR: každý parametr a pole vysvětleno

Odkaz na tvar požadavku a dvě pole, která nese každá autentizovaná odpověď. Řádky specifické pro akci se liší, proto před parsováním otestujte jeden volání.

Kámen most představující základní URL API s dělníkem držícím železný klíč pro autentizaci

Služba je REST API vracející JSON. CORS je otevřené. Stránka v prohlížeči může volání provést přímo. Klíče začínají na sk_ a získáte je na stránce účtu po přihlášení přes Google.

Základní URL je https://rankupedia.com/api.php. Ověřte se pomocí key=sk_... v query stringu nebo pomocí hlavičky Authorization: Bearer sk_..., podle toho, co váš klient preferuje. Čtyři akce žádné ověření nepotřebují: domain, overview, stats a suggest.

Nástroj pro kontrolu DR je užitečný až tehdy, když dokážete parsovat jeho výstup. Níže uvedená ukázka je nejmenší užitečný případ a následující sekce pokrývají části, ve kterých lidé často dělají chyby.

Jedno volání, anotované

Bezplatná akce overview. Nahraďte doménu tou vaší.

bash
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"

Anatomie požadavku

01

Vyberte akci

Hodnota action vybírá operaci a cenu. Bezplatné akce jsou uvedeny v tabulce cen.

02

Nazvěte cíl

Hodnota q je holá doména, například nytimes.com, bez schématu ani cesty.

03

Přidejte pověření, pokud je akce placená

Buď key v query stringu, nebo Bearer hlavička. Hlavičky drží klíče mimo serverové logy a historii prohlížeče.

04

Stránkování a řazení

page a per krájí výsledky a sort s order je řadí. Stránkování končí u 50 000 řádků.

Příprava seznamu domén před prvním voláním

Mnoho podivných výsledků začíná vstupem, nikoliv serverem. Seznam jednou vyčistěte, pak ho pošlete.

Odstraňte vše, co není holá doména. Vložená adresa s cestou přidává znaky, které hodnota q neočekává, takže odstraňte schéma, cestu i koncové lomítko.

Odstraňte schéma a cestu

Přeměňte https://shop.example.org/blog/ na shop.example.org před voláním. Hodnota q bere holou doménu, takže se cesta zahodí zde, nikoliv posílá.

Tabulkové kalkulátory tyto detaily skrývají uvnitř buňky. Rychlý filtr na lomítka a dvojtečky zachytí většinu z nich.

Převeďte názvy na malá písmena a odstraňte duplikáty

Názvy domén nejsou citlivé na velikost písmen, takže Example.COM a example.com označují jeden cíl. Odeslání obou vyčerpá kredity dvakrát za jednu odpověď.

Odstraňte duplikáty před počítáním volání. Seznam 2 100 názvů se 300 duplikáty potřebuje dvě volání bulk_dr surově, ale po odstranění duplikátů jeho 1 800 unikátních názvů vejde do jednoho.

Rozhodněte se mezi kořenem a subdoménou

Subdoména jako blog.example.org je ve vašem seznamu vlastní název. Rozhodněte se, o kterou otázku jde, než něco pošlete.

Pokud otázka pokrývá celý web, pošlete kořenový název. Pokud pokrývá jednu subdoménu, otestujte přesně ten název a odpověď čtěte jako příslušející pouze jí.

Zapište rozhodnutí do poznámek úlohy, aby další běh, možná jinou osobou, použil stejné pravidlo.

Parametry dotazu

ParametrVýznamPoznámky
actionKterá operace se má spustitPovinné; viz tabulka cen
qCílová doménaPříklad: nytimes.com
keyAPI klíčNebo použijte Bearer hlavičku
pageČíslo stránky výsledkůHluboké stránkování je omezeno na 50 000
perŘádků na stránkuPřijímá 10 až 5000; jedno volání je jeden náklad, bez ohledu na počet řádků
sortSloupec pro řazeníDostupné sloupce závisí na akci
orderasc nebo descPoužívejte společně se sort
domainsSeznam pro bulk_drMax 2 000 domén najednou, přes GET nebo tělo POST
Dělník používající velký pravítko k měření řad dřevěných beden na dopravníku

Procházení dlouhého výpisu

Akcí výpisu vrací řádky po stránkách. Dva parametry řídí řez: page vybírá, který řez, a per určuje, kolik řádků obsahuje. Per přijímá hodnoty od 10 do 5000.

Nejprve zvolte velikost stránky. Větší per sníží počet volání a fakturace počítá volání, nikoliv řádky.

Seřaďte před stránkováním

Sort a order rozhodují, které řádky se dostanou na první stránku. Nastavte obě hodnoty při každém volání v sérii, aby každá stránka pocházela ze stejného řazení.

Použijte desc na sloupci metriky, když chcete mít nejsilnější řádky první, a asc, když hledáte nejslabší. Dostupné názvy sloupců závisí na akci.

Potvrďte pořadí malým testem dvou stránek, než důvěřujete dlouhému běhu.

Zastavte se u kapacity 50 000 řádků

Hluboké stránkování končí u 50 000 řádků. Za tímto bodem volání vrací nic nového, takže smyčka, která stránkuje dál, plýtvá kredity.

Zúžte otázku nebo rozdělte úlohu na menší běhy. Druhý dotaz s jiným cílem je obvykle čistší než hlubší stránkování.

Kapacita hloubky je vlastností výpisu, takže platí pro každého klienta, který ji volá.

Ukončete smyčku na krátké stránce

Zastavte, když stránka vrátí méně řádků než per. To je obvyklý znak, že výpis došel.

Kombinujte tento test s kontrolou zůstatku v záznamu pro řešení problémů, aby smyčka skončila na poslední stránce nebo při nízkém zůstatku, podle toho, co přijde dříve.

Pole přítomná v každé odpovědi

ok

Logická hodnota. True znamená, že volání bylo dokončeno. False znamená, že ne, a HTTP status vám řekne proč.

_credits

Vyskytuje se u autentizovaných volání. Reportuje náklad tohoto volání a váš zbývající zůstatek v kreditech, což vám umožní zastavit smyčku, než zůstatek dojde.

Co zde nedokumentujeme

Názvy polí na úrovni řádku pro každou akci jsou viditelné v živé odpovědi. Nepřepisujeme je v tomto záznamu, aby nemohl od služby odstoupit.

Testování volání před psaním smyčky

01

Vyberte doménu, kterou znáte

Vyberte web, jehož profil můžete posoudit z jeho vlastních stránek. Doména, kterou znáte, usnadní odhalit podivné číslo.

02

Pošlete jedno bezplatné volání

Spusťte overview nebo domain bez klíče. Odpověď ukazuje skutečný tvar JSON, což je spolehlivější než jakýkoliv popis, včetně tohoto.

03

Pošlete jedno placené volání s nejmenší stránkou

Použijte per=10 u akce výpisu. Uvidíte pole řádků a hodnotu _credits, než přejdete na škálování.

04

Přečtěte _credits, pak škálujte

Vynásobte náklad jednoho volání počtem volání ve vašem plánu. Pokud je celkem více než zůstatek, zmenšete plán před spuštěním smyčky.

Před nasazením klienta

  • Zkontrolujte ok před čtením jakéhokoliv jiného pole
  • Logujte _credits při každém volání
  • Chápejte data jako měsíční snímek
  • Zvládněte 401 a 402 zvlášť, viz záznam pro řešení problémů
  • Udržujte klíč mimo front-end kód
Zahradník třesoucí sítem, aby oddělil běžné kameny z hromad kamení

Poznámky k dávkování

Akce bulk_dr přijímá až 2 000 domén na volání. Pošlete je jako hodnotu query domains nebo jako tělo POST, když je seznam příliš dlouhý na URL.

compare bere až 20 domén a intersect bere 2 až 10. Intersect odpovídá na jednu otázku: které stránky odkazují na všechny domény, které jmenujete.

Protože fakturace je na volání, větší dávky jsou vždy levnější na řádek. Také selhají jako jeden celek. Rozdělte do velikosti, kterou můžete zopakovat.

Dlouhé seznamy mohou jít v těle POST. Přečtěte ok před čímkoliv jiným v odpovědi, protože zamítnutá dávka neobsahuje řádky, které byste mohli použít.

Čtení JSON bez předpokladů

Parsovače selhávají na polích, která odpověď vynechá. Kód, který očekává každý klíč na každém řádku, je křehký, a jeden krátký řádek může zastavit celý úkol.

Chápejte chybějící pole jako normální

Pole řádků závisí na akci, takže pole přítomné v jednom výpisu může chybět v jiném. Přiřaďte každému poli výchozí hodnotu a pokračujte.

Logujte, které pole chybělo, ne jen to, že něco selhalo. Tento log ukáže, zda se změnila schéma, nebo váš vlastní kód.

Uchovávejte surové odpovědi pro vzorek

Uložte surový JSON prvních několika volání v každém novém úkolu. Když později číslo vypadá špatně, uložený text vyřeší otázku rychleji než paměť.

Uložte vzorek s datem a názvem akce. Měsíční obnova znamená, že stejné volání může příští měsíc vrátit jiné řádky.

Akce podle rodiny

RodinaAkceTypické použití
Bezplatnédomain, overview, stats, suggestRychlé dotazy a automatické doplňování
Skórováníbulk_dr, compare, dr_distributionProhledávání seznamů a souborů peerů
Výpisrefdomains, backlinks, anchors, toppages, anchor_cloudAudit jedné stránky
Vyhledávánísearch, keyword, intersectNajít, kdo odkazuje daným anchor textem nebo na několik konkurentů
Omezení tohoto záznamu

Názvy polí na úrovni řádku se liší podle akce a nejsou zde uvedeny. Zavolejte endpoint s bezplatnou akcí na doméně, kterou znáte, a přečtěte JSON, což je jediný autoritativní zdroj.

Otázky o parametrech, které vývojáři kladou

Čtyři otázky o parametrech pokrývají většinu prvního týdne s API.

Potřebuji klíč pro každé volání?

Ne. Akce domain, overview, stats a suggest nepotřebují klíč. Placené akce potřebují, posílaný buď jako parametr key nebo jako Bearer hlavička.

Mohu poslat klíč v URL?

Ano, parametr key funguje v query stringu. Hlavička drží klíč mimo adresu samotnou, což mnoho týmů preferuje pro logy a sdílené odkazy.

Co když chci per nad 5000?

Dokumentovaný rozsah je 10 až 5000. Hodnoty mimo něj jsou mimo to, co tento záznam popisuje, takže udržte hodnotu v rozsahu a stránkujte pro více.

Záleží na velikosti písmen v q?

Názvy domén nejsou citlivé na velikost písmen, takže před odesláním hodnotu převedte na malá písmena. Jedno psaní usnadňuje srovnání výsledků napříč běhy.