Jak API funguje
Koncový bod API
Všechny tvé požadavky API by měly být zasílány na následující API konec:
https://api.cryptohopper.com/v1/
Podpořené metody požadavků
GET Použij GET pro získání zdroje nebo série zdrojů (např. seznam všech tvých trading botů, tvé aktuální objednávky nebo seznam tvých posledních transakcí). Tato metoda je bezpečná a idempotentní.
POST Použij POST k vytvoření zdroje. Například: vlož novou kup/prodejní objednávku, vytvoř nového robota pro obchodování.
PATCH Použij PATCH k aktualizaci zdroje. Například: spusť nebo zastav svého tradingového robota, nebo aktualizuj své osobní údaje. Tímto způsobem stačí v těle požadavku poskytnout jen pole, která chceš změnit.
DELETE Použij DELETE, když chceš smazat zdroj.
Parametry požadavku
Existují čtyři typy parametrů, které používáme v našem API: cesta, řetězec dotazu, hlavička a parametry těla požadavku. Parametry těla požadavku jsou data odeslaná v těle JSON požadavku pro POST a PATCH požadavky. Parametry hlavičky jsou zjevně parametry, které je potřeba odeslat v hlavičce. Další informace o parametrech Cesty, Řetězce dotazu a Hlavičky najdeš níže.
Parametry hlavičky
Každý požadavek na naši API musí být ověřen odesláním těchto hodnot v hlavičce:
- access-token - Tvůj přístupový token obdržen s autentizací Oauth2
Parametry cesty
Jedná se o parametry, které jsou dodány v URI koncového bodu. Například koncový bod GET Hopper:
https://api.cryptohopper.com/v1/hopper/{hopper_id}
Chceš-li získat obchodního robota podle jeho unikátního ID, musíš nahradit jeho ID hodnotu v zástupném řetězci {hopper_id}. Například pro získání obchodního robota s ID 37 bys požádal o tuto URL:
https://api.cryptohopper.com/v1/hopper/37
Některé koncové body vyžadují více parametrů. Například pokud chceš získat konkrétní objednávku z předchozího Hoppera, musíš zavolat následující URL:
https://api.cryptohopper.com/v1//hopper/{hopperId}/order/{orderId}
A nahrazením parametrů Hopperem a ID objednávky dostaneš:
https://api.cryptohopper.com/v1//hopper/37/order/231
Pro detailní seznam parametrů požadovaných v každém bodě API se prosím podívejte do naší referenční příručky API.
Parametry dotazu
Používáme tyto parametry v GET požadavcích pro filtrování a/nebo stránkování dat. Tyto parametry nejsou uvedeny v cestě, ale jako sada hodnot oddělených znakem '&' v řetězci URL.
Například pro získání nákupních Bitcoin objednávek obchodního robota, bys mohl zavolat bod Hopper Order takto:
https://api.cryptohopper.com/v1/hopper/37/order/?order_type=buy&coin=btc
Podívej se na naši referenci API, kde vidíš, že v tomto případě parametr order_type může nabývat hodnot „buy“ nebo „sell“ a parametr coin může být jakýkoli malý krypto měnový kód.
Formát odpovědi
Všechny odpovědi jsou ve formátu JSON objektu. Protože MIME typ ve všech našich odpovědích bude application/json. Pro specifický JSON formát v těle každého požadavku a odpovědi se prosím odkažte na naši dokumentaci referenční příručky API.
HTTP kódy odpovědí
Používáme stavové kódy odpovědí definované normami RFC 2616 a RFC 6585..
200 - OK Úspěšná žádost. Klient dostane výsledek požadavku v těle a hlavičkách odpovědi.
201 – Vytvořeno Žádost byla přijata a nový zdroj byl vytvořen.
202 – Přijato Žádost byla přijata k zpracování, ale zpracování nebylo dokončeno.
204 – Bez obsahu Server úspěšně zpracoval požadavek, ale žádný obsah není vrácen.
304 – Neaktualizováno Zdroj nebyl modifikován od verze zadané v hlavičkách požadavku If-Modified-Since nebo If-None-Match. Není potřeba znovu odesílat zdroj, protože klient má stále dříve staženou kopii.
HTTP chybové kódy
400 – Bad Request Server neumí nebo nechce zpracovat požadavek kvůli zjevné chybě klienta. Tělo zprávy vrátí informace o chybě.
400 – Bad Request Server neumí/nechce zpracovat požadavek kvůli zjevné chybě klienta. Tělo zprávy vrátí informace o chybě.
401 – Unauthorized Žádost vyžaduje ověření uživatele a byla zamítnuta kvůli neplatným nebo chybějícím API klíčům.
403 – Forbidden Server pochopil požadavek, ale odmítá ho splnit, protože nemáš oprávnění k přístupu, neboť tvé pověření bylo zablokováno.
404 – Not found Žádaný zdroj se nenašel. Tato chyba může být způsobena dočasnou nebo trvalou podmínkou.
405 – Method Not Allowed Použitá metoda požadavku není podporována požadovaným koncovým bodem API.
405 – Method Not Allowed Použitá metoda požadavku není podporována požadovaným koncovým bodem API.
429 – Too Many Request Uživatel překročil limit požadavků API. Zkontroluj vrácený Retry-After hlavičku, abys věděl, kolik sekund musíš počkat, než provedeš nový požadavek. Pro aktuální limity požadavků se podívej do sekce o limitech.
500 – Internal Server Error Nastala chyba na našem serveru, která brání odpovědi na tvůj požadavek. Naši vývojáři dostanou týden bez kávy jako první varování...
503 – Service Unavailable Naše servery by mohly mít problém a nemohou vyhovět Vaší žádosti.
Chybové zprávy
Pokud API vrátí chybový kód, připojí v těle JSON objekt s popisem chyby. Chybová hláška by vypadala zhruba takto:
{
"status": 400,
"error": 1,
"message": "Missing required request parameters: [access_token]"
}
Limity
Náš API má limit rychlosti požadavků, abychom zajistili spravedlivý podíl našich šířkových zdrojů všem uživatelům. Aktuální limity jsou 2 požadavky za sekundu na uživatele, kromě umístění kupních objednávek. V tomto případě můžeš umístit maximálně jednu objednávku každých 8 sekund.
Pokud překročíš počet dostupných požadavků za sekundu, dostaneš chybový kód 429. Zkontroluj hlavičku Retry-After v odpovědi, která obsahuje počet sekund, které musíš počkat, než provedeš další požadavek.