Autentizace

Ověřování OAuth2

Cryptohopper používá Oauth2 pro poskytnutí autorizovaného přístupu k jeho API.

Použití OAuth2

Pochopení fungování OAuth2 ti pomůže při vytváření a lazení aplikací, které využívají API Cryptohoppera. Pro použití OAuth musí aplikace:

  • Získat grant tokeny pro jednání v zastoupení uživatelského účtu.
  • Zaměnit grant tokeny za access tokeny.
  • Autorizovat všechna HTTP požadavky, které odesíláš na API Cryptohoppera.

Metoda ověřování uživatele umožňuje aplikaci jednat jménem uživatele, jako by to byl ten uživatel.

Příklad: Pokud by vývojář chtěl vytvořit funkci, která by umožnila tradingovému robotovi koupit určitou měnu na jejich platformě pomocí endpointu pro nákup, musel by použít ověření uživatele, aby získal povolení od uživatele k obchodování v jeho zastoupení.

Jinými slovy podepsaný požadavek identifikuje identitu aplikace, ale také oprávnění koncového uživatele, pro něhož aplikace volá API, reprezentovaný uživatelovým access tokenem.

Pro ověření uživatele je nutný klíč a tajné heslo aplikace Cryptohopper a access token a access secret uživatele, v jehož zastoupení se má jednat. Další informace o metodách OAuth níže:

Metody OAuth2

authorize

Pomocí endpointu authorize se uživatelé mohou přihlásit na Cryptohopper a udělit aplikaci přístup. Po úspěšném udělení přístupu nebo po chybách bude uživatel přesměrován na redirect URL. Pokud redirect URL není v požadavku specifikována, použije se redirect URL z konfigurace aplikace. V GET parametrech na redirect URL obdržíš grant token, který lze vyměnit za access_token.


Endpoint: https://www.cryptohopper.com/oauth2/authorize

Přijímá: GET

Vrátí: code, state v GET na redirect url

Parametry:

  • client_id: Klíč tvé aplikace.
  • response_type: Typ odpovědi by měl obsahovat text: code.
  • redirect_uri: Redirect URL, kam budou uživatelé přesměrováni po procesu OAuth.
  • state: Dodatečný parametr pro rozpoznání požadavků na straně aplikace. Bude vrácen na redirect URL.
  • scope: Čárkami oddělený seznam rozsahů, např.: read,notifications,manage,trade.

 

token

Endpoint token slouží k výměně grant tokenu/kódu za platný access_token.


Endpoint: https://www.cryptohopper.com/oauth2/token

Přijímá: POST v application/json

Vrátí: access_token a refresh_token v application/json

Parametry:

  • client_id: Klíč tvé aplikace.
  • client_secret: Tajné heslo tvé aplikace.
  • grant_type: Typ grantu by měl obsahovat text: authorization_code.
  • redirect_uri: Redirect URL tvé aplikace.
  • code: Grant token/kód.

 


Stav úspěšné odpovědi

Pokud je požadavek na endpoint access_token úspěšný, uživatel bude přesměrován na redirect URL s grant tokenem přidaným jako GET parametry.

Úspěšný požadavek na endpoint token bude mít kód odpovědi 200 a bude obsahovat access_token v těle, který lze použít k ověření volání API.

Chybové kódy odpovědi

Chyby vrácené na redirect URL jsou rozpoznávatelné podle vráceného GET parametru: error=1. Níže nalezneš možné chybové zprávy:

  • Klíč aplikace je neplatný.
  • Podpis je neplatný.
  • Klíč aplikace nemůže být prázdný.
  • Uživatel neudělil aplikaci povolení.