Authenticatie

Oauth2-authenticatie

Cryptohopper gebruikt Oauth2 om gecertificeerde toegang tot de API te bieden.

Oauth2 gebruiken

Het begrijpen van hoe OAuth2 werkt kan je helpen bij het maken en debuggen van applicaties die gebruikmaken van Cryptohopper's API. Om OAuth te gebruiken, moet een applicatie:

  • Grant tokens verkrijgen om namens een gebruikersaccount op te treden.
  • Grant tokens omzetten in access tokens.
  • Alle HTTP-verzoeken die je naar Cryptohopper's API's stuurt, autoriseren.

De gebruikersauthenticatiemethode laat een app toe om namens de gebruiker op te treden, alsof het de gebruiker zelf is.

Voorbeeld: als een ontwikkelaar een functie wilde maken waarmee een handelrobot een bepaalde valuta via hun platform zou kopen gebruikmakend van de koop endpoint, dan zou de ontwikkelaar gebruikersauthenticatie moeten gebruiken om toestemming te krijgen van de gebruiker om namens hen te handelen.

Met andere woorden, een ondertekend verzoek identificeert de identiteit van een applicatie naast de toegestane bevoegdheden van de eindgebruiker, waarvoor de applicatie API-oproepen uitvoert, gerepresenteerd door de access token van de gebruiker.

Gebruikersauthenticatie vereist de app key en secret van je Cryptohopper-applicatie en de access token en access secret van de gebruiker namens wie je wilt handelen. Meer info over de OAuth-methoden hieronder:

OAuth2-methoden

authorize

Via de authorize endpoint kunnen gebruikers zich aanmelden bij Cryptohopper en toegang verlenen aan de applicatie. Na succesvolle machtiging of na fouten, wordt de gebruiker omgeleid naar de redirect URL. Als de redirect URL niet in het verzoek is opgegeven, wordt de redirect URL uit de applicatie-instellingen gebruikt. In de GET parameters op de redirect URL ontvang je de grant token die kan worden uitgewisseld voor een access_token.


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

Aanvaardt: GET

Retourneert: code, state in GET op de redirect url

Parameters:

  • client_id: De app key van je applicatie.
  • response_type: De response type moet de tekst bevatten: code.
  • redirect_uri: De redirect URL waar gebruikers naartoe worden omgeleid na het OAuth-proces.
  • state: Extra parameter om verzoeken aan applicatiezijde te herkennen. Wordt teruggegeven aan de redirect URL.
  • scope: Een komma-gescheiden lijst van scopes, bijvoorbeeld: read,notifications,manage,trade.

 

token

De token endpoint wordt gebruikt om een grant token/code om te zetten in een geldige access_token.


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

Aanvaardt: POST in application/json

Retourneert: access_token en refresh_token in application/json

Parameters:

  • client_id: De app key van je applicatie.
  • client_secret: De app secret van je applicatie.
  • grant_type: De grant type moet de tekst bevatten: authorization_code.
  • redirect_uri: De redirect URL van je applicatie.
  • code: De grant token/code.

 


Succesvolle antwoordcodes

Wanneer een verzoek naar de access_token endpoint succesvol is, wordt de gebruiker omgeleid naar de redirect URL met een grant token meegegeven als GET parameters.

Een succesvol verzoek naar de token endpoint heeft een 200 antwoordcode en bevat een access_token in de body, die kan worden gebruikt om API-oproepen te authenticeren.

Fout antwoordcodes

Fouten die aan de redirect URL worden geretourneerd zijn te herkennen aan de geretourneerde GET parameter: error=1. Hieronder vind je mogelijke foutmeldingen:

  • App key is ongeldig.
  • De handtekening is ongeldig.
  • App key mag niet leeg zijn.
  • Gebruiker heeft de app geen toestemming gegeven.