Jak vygenerovat API klíč ke Google mapám

Google mapy se prakticky staly, už před pár lety, v podstatě nedílnou součástí každého moderního webu a poskytly návštěvníkům interaktivní pohled na mapy přímo z webu.

Aktualizace článku: 11.2. 2024

Google mapy se prakticky staly, už před pár lety, v podstatě nedílnou součástí každého moderního webu a poskytly návštěvníkům interaktivní pohled na mapy přímo z webu.

V průběhu roku 2018 došlo k razantní změně podmínek v poskytování map a od té doby je nezbytné mít součástí účtu, na kterém je API klíč vygenerován, kreditní kartu, ze které se v případě překročení bezplatného limitu odečítá platba za poskytnutí mapového rozhraní.

Kolik to teda stojí?

Google mapy poskytují v podstatě 200$/měs. zdarma pro zobrazování map pro každého uživatele (= Google účet napojený na API).

V překladu to znamená:

  • až 28 500 načtení dynamické mapy
  • až 100 000 načtení statické mapy

Na běžném informačním webu je to více než dostatečná hranice na to jí překročit a pokud by se tak náhodou stalo, tak dalších 1000 volání API vyjde na 2$ až 7$.

Více je možné se dozvědět zde: https://cloud.google.com/maps-platform/pricing/

Jak aktivovat API klíč

Pojďme k tomu podstatnému, proč jste přišli a proč tento příspěvek dáváme i našim klientům pro potřebu vytvoření API klíče a zadání platebních údajů (včetně citlivých údajů o platební kartě).

  1. Přihlaste se ke svému Google účtu na adrese https://console.cloud.google.com/apis/dashboard, případně si vytvořte nový na stejném odkaze
  2. V horizontální nabídce zvolte “Select project” a následně tlačítko “Create project
    select.png
  3. Zadejte název Vašeho projektu a stiskněte “Create
    create.png
  4. Máme vytvořený projekt a přesuneme se z nástěnky do “Libraries
    libraries.png
  5. Vyhledejte spojení “Map..” a u znázorněných API povolte jejich použití tlačítkem “Enable
    enable.png
    embed_API.png
  6. Následně pokračujte v levém menu na položku “Credentials” a tlačítko “Create credentials” a nakonec na “API key
    API_key.png
  7. Takto vytvoříte tolik klíčů, kolik bude potřeba. Klíče následně zkopírujte a pošlete vývojáři.
    API_key_send.png

Tak, máme za sebou první část postupu. Následně je ale nezbytné aktivovat platební metodu.

Jak přidat platební metodu

Když už máme vytvořené a předané API klíče, tak je potřeba přidat platební metodu následujícím postupem:

  1. Ve vertikální navigaci zvolte položku “Billing” a následně “Manage billing account”
    billing.png
  2. Otevře se Vám stránka s možností vytvořit novou platební metodu. Klikněte tedy na “Add billing account
    accounts.png
  3. Zaškrtněte souhlas s podmínkami a pokračujte kliknutím na tlačítko “Continue
    agree.png
  4. Vyplňte své údaje, údaje o platební kartě a pokračujte tlačítkem “Start my free trial
    start.png

A to je vše. Tím máte vytvořené jak klíče, tak nastavenou primární platební metodu pro případ, že by došlo k vyššímu počtu zobrazení, než je zahrnuto ve výše zmíněných 200$.

Jak na zabezpečení vašeho API klíče?

Více, než kdy dříve je potřeba při zakládání klíčů a obecně využívání Google Cloud console dávat pozor na zabezpečení. Proč? Je tu hned několik důvodů:

  1. Odcizení klíče, které může vést k nárůstu počtu volání API rozhraní a následnému zvýšení poplatku za využívání API. Tento nárůst může být jednorázový i dlouhodobý a samozřejmě může narůst i do obrovských výšin.
  2. Chyba v aplikaci, která může také způsobit vysoký nárůst volání a tím způsobit značné škody. Nemusí jít ale vždy jen o chybu v aplikaci, kterou vytváříte, ale také o napojené aplikace, které se mohou zacyklit a odeslat doslova stovky tisíc či miliónů volání na API. V takových případech může dojit i ke škodám v řádech stovek tisíc korun.

Na co si dát tedy pozor a jak situaci vhodně podchytit? Restrikcemi. V rámci každého klíče i fakturačního účtu jako celku lze nastavit hned několik restrikcí a tím ochránit celý účet a předejít tak značným škodám. Jaké jsou:

  • Omezení maximálního rozpočtu
  • Omezení počtu volání - minuty
  • Omezení počtu volání - dny

Další tipy a doporučení můžete získat přímo v dokumentaci k API na stránkách Googlu.

Rozhodně doporučuji nezačít využívat API a neposkytovat nikomu API klíč bez předchozího nastavení těchto restrikcí. Díky nastaveným restrikcím můžete předejít velice nepříjemné situaci, kdy zjistíte, že je na vašem účtu nepřiměřeně velká útrata.

Kde restrikce nastavit?:

  • Na detailu konkrétního API klíče - Na detailu klíče máte hned 3 možnosti, co nastavit. Zejména tak omezit volání na určitou IP adresu (server) a nebo URL adresu daného webu, aby nemohli volání chodit z jiných míst.
  • Nastavit restrikce na volání konkrétní API - např. mezit volání na konkrétní volání služeb, které v aplikaci používáte. Např. Geolocation API.Snímek obrazovky 2024-02-11 v 17.01.58.png
  • V rámci fakturačního účtu v záložce "Billings & Alerts" - nastavíte omezení na rozpočet.

Na mém účtu je nepřiměřeně velká útrata, co mám dělat?

Bez nastavených restrikcí a omezení, které popisuji v předešlé části příspěvku se může stát, že vám nečekaně naroste měsíční útrata. Než si toho všimnete, tak se může jednat i o statisíce korun. Jak postupovat?

  • E-mailové notifikace - fakturační účet přiřazený k danému projektu, kde je vygenerovaný API klíč dostane e-mailovou notifikaci vždy, když dojde k neočekávané aktivitě. Problém je, že automatické e-maily Googlu spousta uživatelů nečte, přehlíží a nebo rovnou maže. V takovém případě se pravděpodobně k informaci, že došlo k překročení bezplatného limitu nebo zvláštní aktivity u projektu nedozvíte.
  • Měsíční vyúčtování - jednou za měsíc (obvykle v prvním týdnu navazujícího měsíce) chodí faktura za využití API rozhraní a počtu requestů. To je většinou ten moment, kdy se dozvíte o nepěkné situaci a také útratě, kterou jste v rámci API provedli.

Jak postupovat? Pokud víte, že se jedná o chybu nebo odcizení klíče, tak máte reálně jednu šanci, jak problém vyřešit s podporou Googlu a to následovně:

  1. V nápovědě účtu přejděte do částí Google Maps Platform Support.
  2. V této části je potřeba zvolit záložku "Billing" a vybrat "Resolve billing issue".
  3. Následně projdete krátkým "kvízem", kde se následně dostanete podle konkrétního problému až k live chatu s pracovníkem podpory.

Co dál? Je třeba popsat celý problém, prvně se budete bavit s pracovníkem fakturačního úseku, kterému popíšete problém. Ten Vás následně přepojí na technického pracovníka, který bude chtít pochopit problém, poradí s nastavením zabezpečení a pokud uvidí snahu a rychlé narovnání problému, předá následně ticket opět k fakturačnímu oddělení k dořešení. Pokud vše popíšete správně a napravíte chyby, tak je poměrně velká šance, jak uspět a v jednom případě vám fakturovanou částku prominou. Průběh komunikace se v průběhu z chatu přesune do e-mailu, kde řešení problému trvá cca 2-5 dní.

Vít Kašpar

Je spoluzakladatelem agentury. V oblasti webdesignu se pohybuje více než 14 let. Zkušenosti sbíral jako HTML kodér, UI designér i PHP programátor na malých i nadnárodních projektech. Aktuálně se věnuje UX designu a návrhům řešení pro naše klienty.

Další články