27. 5. 2014

Upekli jsme Cipíska – nová betaverze API

API Skliku aktuálně používá několik desítek klientů nebo firem provozujících automatizované nástroje pro práci s kampaněmi a jejich nároky v čase pochopitelně rostou, proto jsme se před časem rozhodli připravit novou verzi – Cipíska.

Logo API

Nová verze obsahuje všechny připomínky, které jsme posbírali během provozu předchozí verze s označením Bajaja. Protože je Cipísek zatím ve verzi beta, tak jsme umístili dokumentaci na speciální URL: http://api.sklik.cz/cipisek/ kde vývojáři najdou i příslušný sandbox na hraní a vyvíjení.

Stručné představení změn

  • Hromadné metody – až na metody skupiny keywords.*  bylo možné dříve pracovat pouze s jednou entitou. Cipísek nově umí pracovat s velkým množstvím kampaní, sestav, a dalších entit najednou. Limity se u jednotlivých entit liší a můžeme je během provozu bety měnit. Pro zjištění  aktuálního stavu slouží medota api.limits, kde najdete i limity systému (Max-Min CPC a podobně).
  • Rychlost – přidáním metod pro hromadné manipulace s daty se řádově zvýšila propustnost API. Kompletní přepis API tomu samozřejmě také hodně napomohl.
  • Diagnostika – při chybném zadání některého z parametrů lze z odpovědi přesně vyčíst, která položka byla chybná, co bylo očekáváno a její skutečný obsah. Nápověda k diagnostice je uvedená v dokumentaci u každé metody.
  • Hromadné pohledy – na data se v API lze “dívat” například tak, že si lze vytáhnout inzeráty ze všech nebo jen zvolených kampaní, či sestav. Není tedy třeba stahovat všechna data inzerátů v kampani, pokud je cílem získat jen inzeráty jedné sestavy nebo více sestav, které jsou v různých kampaních.
  • Zrušili jsme statistické reporty – statistická data uměl Bajaja dost nešikovně. Zrušili jsme metody, které jen tupě četly výsledky statistický reportů, a připravili metody typu *.stats, například campaigns.stats, které jsou chytré a umí se statistikami, dimenzemi a sítěmi hotová kouzla.
  • Nové funkce – možnosti Skliku se od časů Bajaji rozšířili, a proto jsme nově doplnili metody podporující grafickou reklamu a retargeting.
  • Permanentní testování – všechny metody API jsou kompletně pokryty automatickými testy, které probíhají několikrát denně. Můžeme si tedy být jisti, že se o problémech, které mohla snad způsobit jiná komponenta, dozvíme velmi rychle a jsme schopni zjednat v krátkém čase nápravu.
  • Dokumentace – zajistili jsme, že dokumentace je úzce svázána s kódem. Nemůže se tedy stát, že by se lišila od aktuální funkčnosti jednotlivých metod.
  • Metoda suggest – tato metoda slouží pro návrh dalších klíčových slov, ale časem se z ní stalo i oblíbené místo pro zjišťování statistik hledanosti. Čísla zde byla historicky jiná než v inzerentském rozhraní. Metodu jsme proto rozšířili a umravnili tak, aby zobrazovala shodné statistiky. Nově vznikla také metoda suggest.stats, které je možné předhodit pole dotazů a metoda vrátí statistiky hledanosti plus další metriky, ale nenavrhuje další slova jako předchozí metoda. To se hodí pokud potřebujete zjistit hledanost konkrétního dotazu (i víc než jednoho) a navržená rozšíření nepotřebujete.

Anti DoS

Každý systém má nějaké limity, proto Cipísek obsahuje i tzv. Anti DoS. Všechny metody mají interně nastavený limit kolikrát ji může jeden účet použít v plovoucím časovém okně. Pokud je limit překročen, metoda vrátí příslušnou informaci a přidá počet sekund po jejichž uplynutí je možné v komunikaci s API pokračovat.

Limit je nyní nastaven na 300 volání metod během 60 sekund. Jedním voláním hromadné metody můžete obsloužit až 100 entit. Funkce keywords.* můžou obsloužit až  5000 entit. Tyto limity budeme pravděpodobně upravovat podle zkušeností z reálného provozu. Aktuální stav všech limitů lze zjistit pomocí metody api.limits.

Spuštění do ostrého provozu

Betaverze je od toho, aby obsahovala chyby a Cipísek jich nejspíš opravdu několik obsahuje, ale je rozhodně lepší, chytřejší a svižnější než Bajaja. Pomozte nám ho otestovat – napište nám zpětnou vazbu, své zkušenosti nebo problémy, na email sklik@firma.seznam.cz a my se budeme snažit v co nejkratší době odstranit to, co vám brání ve šťastném sosání a posílání dat.

Jakmile si budeme jisti, že ostrému používání nebrání žádná chyba, tak nastavíme Cipíska jako defaultní verzi API Skliku. Nápověda pro Bajaju a rozhraní samotné, bude uklizeno na speciální URL a určitý čas jej budeme podporovat. Termín ukončení provozu určíme s později s několikaměsíčním předstihem.

Proč Cipísek?

Je to podle abecedy další pohádková bytost po Arabele, kterou už jsme pohřbili, a zastaralém Bajajovi. Tak šup, jděte se na něj podívat.

Za celý tým Skliku Jirka Chomát.