チュートリアル

Oauth2でアクセストークンをゲット

 

Oauth2 を使用して、まずアクセストークンを取得することから始めましょう。アクセストークンを使用すると、APIリクエストを実行できます。アクセストークンの取得は、2つの簡単なステップで簡単に行えます。まず、グラントトークンが必要になります。これは、次にアクセストークンと交換できます。

ステップ 1: グラントコードの取得

アクセストークンを取得する最初のステップは、グラントコードを取得することです。これは最終的にアクセストークンと交換できます。Oauth2 フローの認証 URL に正しいパラメーターを指定してアクセスすると、グラントコードを取得できます。以下に示す認証 URL のパラメーターを、正しい client_id、正しいリダイレクト URI、正しい scope に変更してください。この例では、リダイレクト URI として http://localhost/ を使用します。また、state パラメーターの値を指定します。これは、リクエストとコールバックの間で状態を維持するためにクライアントによって使用されます。認証サーバーは、ユーザーエージェントをクライアントにリダイレクトする際に、この値を含めます。

https://www.cryptohopper.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&state=SOME_STATE&response_type=code&scope=read,notifications,manage,trade&redirect_uri=http://localhost/

認証エンドポイントにアクセスすると、まだログインしていない場合は Cryptohopper へのログインを求められ、その後、アプリのアクセススコープを承認するよう求められます。「承認」をクリックすると、リダイレクト URI にリダイレクトされます。リダイレクト URI へのリクエストでは、グラントコードは GET パラメーターとしてリクエストに追加され、code という名前が付けられます。このコードは、次のステップでアクセストークンと交換するために必要になるため、保存してください。

ステップ 2: グラントコードをアクセストークンと交換する

グラントコードができたので、Oauth フローのトークンエンドポイントに JSON POST リクエストを行うことで、これをアクセストークンと交換できます。認証エンドポイントへの API 呼び出しは、JSON エンコードされた POSTリクエストである必要があります。コーディングの経験がない場合は、https://reqbin.com/のようなウェブサイトを使用できます。以下に、トークンエンドポイントの詳細を示します。JSONの例で、client_id と code パラメーターを変更してください。

API エンドポイント:

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

JSON:

{
"client_id": "アプリケーションのアプリキー。",
"client_secret": "アプリケーションのアプリシークレット。",
"grant_type": "authorization_code",
"redirect_uri": "リダイレクト URL",
"code": "最初のステップで受信したグラントトークン/コード。"
}

リクエストが成功すると、access_token が含まれる JSON レスポンスが返されます。このアクセストークンをコピーして、安全な場所に保存します。

JSON レスポンス:

{
"access_token": "返されたアクセストークン。",
"expires_in": "アクセストークンが有効となる秒数。",
"token_type": "Bearer",
"scope": "read,manage,trade",
"refresh_token": "返されたリフレッシュトークン。"
}

おめでとうございます!これで、API リクエストに使用できるアクセストークンを取得しました。Oauth2 による認証の詳細については、認証ページをご覧ください。