認証

OAuth2認証

Cryptohopperは、OAuth2を使用してAPIへの認証済みアクセスを提供します。

OAuth2の使い方

OAuth2の仕組みを理解することで、CryptohopperのAPIを使用するアプリケーションの作成とデバッグを支援できます。OAuthを使用するには、アプリケーションは以下の手順が必要です。

  • ユーザーアカウントに代わって実行するために、認証トークンを取得する。
  • 認証トークンをアクセストークンと交換する。
  • CryptohopperのAPIに送信するすべてのHTTPリクエストを認可する。

ユーザー認証メソッドを使うと、アプリはユーザーに代わって、まるでユーザー自身のように動作できます。

例:開発者が、取引ボットがプラットフォームを通じて特定の通貨を購入できるようにする機能を作成したい場合、購入エンドポイントを使用して、ユーザーに代わって取引を行う許可を得るため、ユーザー認証を使用する必要がある。

言い換えれば、署名付きリクエストは、アプリケーションの識別情報を、アプリケーションがAPIコールを行う最終ユーザーの許可された権限(ユーザーアクセストークンで表す)と同時に識別します。

ユーザー認証には、Cryptohopperアプリのアプリキーとシークレット、そして、ユーザーに代わって動作したいユーザーのアクセストークンとアクセシークレットが必要です。OAuthメソッドの詳細については、以下を参照ください。

OAuth2メソッド

authorize

authorizeエンドポイントを使用すると、ユーザーはCryptohopperにログインし、アプリケーションへのアクセスを許可できます。アクセス許可が成功した場合やエラーが発生した場合、ユーザーはリダイレクトURLにリダイレクトされます。リクエストにリダイレクトURLが指定されていない場合は、アプリケーション設定のリダイレクトURLが使用されます。リダイレクトURLのGETパラメータには、アクセストークンと交換できる認証トークンが含まれています。


エンドポイント:https://www.cryptohopper.com/oauth2/authorize

受け付けるHTTPメソッド:GET

返す値:リダイレクトURLのGETパラメータにcodestate

パラメータ:

  • client_id: アプリケーションのアプリキー。
  • response_type: レスポンスタイプに「code」を含める必要があります。
  • redirect_uri: OAuthプロセス後、ユーザーをリダイレクトするリダイレクトURL。
  • state: アプリケーション側でリクエストを認識するための追加パラメータ。リダイレクトURLに戻されます。
  • scope: コマで区切られたスコープのリスト(例:read,notifications,manage,trade)。

 

token

tokenエンドポイントは、認証トークン/コードを有効なアクセストークンと交換するために使用されます。


エンドポイント:https://www.cryptohopper.com/oauth2/token

受け付けるHTTPメソッド:POSTapplication/json形式)

返す値:access_tokenrefresh_tokenapplication/json形式)

パラメータ:

  • client_id: アプリケーションのアプリキー。
  • client_secret: アプリケーションのアプリシークレット。
  • grant_type: レスポンスタイプに「authorization_code」を含める必要があります。
  • redirect_uri: アプリケーションのリダイレクトURL。
  • code: 認証トークン/コード。

 


成功応答コード

アクセストークンのエンドポイントへのリクエストが成功すると、ユーザーは、GETパラメータとして認証トークンを含むリダイレクトURLにリダイレクトされます。

tokenエンドポイントへのリクエストが成功すると、200の応答コードが返され、APIコールの認証に使用できるアクセストークンが含まれます。

エラー応答コード

リダイレクトURLに返されるエラーは、返されたGETパラメータ「error=1」で検出できます。以下のエラーメッセージを確認ください。

  • アプリキーが無効です。
  • 署名が不正です。
  • アプリキーは空にすることはできません。
  • ユーザーがアプリにアクセスを許可していません。