API – základy komunikace, autentizace

zpět na přehled API

Komunikace s API rozhraním probíhá pomocí HTTPS (tj. pouze šifrovaně), používá se metoda GET.

Některým metodám lze předávat vstupní parametry – děje se tak jejich vložením přímo do URL adresy požadavku (jako GET parametry).

Všechny metody vrací nějakou odpověď, a to ve formě JSON objektu. V každé odpovědi se nachází položka requestId, která daný požadavek jednoznačně identifikuje. Podle tohoto identifikátoru jsme schopni u nás v logu dohledat konkrétní komunikaci v případě, že nastane nějaký problém či dotaz.

API rozhraní se nachází na adrese https://api.wedos.as/partner/ + název konkrétní metody.

Autentizace

Při komunikaci s API je vždy nutné se autentizovat, tedy prokázat svou totožnost. K tomu je potřeba znát API klíč. Jedná se o obdobu hesla, avšak je určeno pouze pro API. Nejedná se o stejné heslo, které používáte k přihlášení do partnerské administrace.

API klíč se vám vygeneruje při aktivaci API rozhraní po přihlášení do partnerské administrace v sekci Účet, nastavení -> Nastavení API.

Autentizace se provádí přidáním 2 HTTP hlaviček do každého požadavku:

  • X-Auth-Id – ID API klíče
  • X-Auth-Key – API klíč

Příklad HTTPS požadavku

Zde je příklad požadavku na API včetně potřebných HTTP hlaviček. Jedná se o metodu ping, kterou si snadno vyzkoušíte komunikaci.

GET /partner/ping HTTP/1.1
Host: api.wedos.as
Accept: application/json
X-Auth-Id: IDKLICE
X-Auth-Key: VASKLIC

Příklad odpovědi

Výše uvedená metoda ping vám v případě úspěchu vrátí vaše ID (partnerId) a aktuální datum a čas.

{
    "stamp": 1495544024,
    "time": "2017-05-23 14:53:44",
    "partnerId": 300000,
    "requestId": "1495544024.0084.8420"
}

Veškerá data v odpovědi jsou v kódování UTF-8.

Chybové odpovědi

V případě chyby vrátí server HTTP kód odpovědi jiný než 200 a v těle odpovědi je upřesnění chyby – je uveden kód chyby a její popis.

Například při chybné autentizace (nesprávné uživatelské jméno nebo API klíč):

{
    "error": {
        "code": "C507",
        "error": "Authentication failed"
    },
    "requestId": "1495544185.1615.8422"
}

 


Máte-li jakýkoliv problém či dotaz ohledně provizního systému, využijte diskuzní fórum (veřejně viditelné), pro soukromou komunikaci použijte kontaktní formulář.