OAuth API

OAuth認証機能の利用手順

Zaifのアカウント情報を利用したサービス(以下クライアントサービス)を展開する業者(以下クライアント)がOAuth認証機能を利用できるようにするための手順を記述します。

1.サービス基本情報の登録

Zaifにログインし、『アカウント』→『連携アプリケーション基本設定』から「連携アプリケーションの情報を新しく作成する」ボタンを押下し、サービスの詳細な情報を設定してください。

_images/oauth_slideshow_1.png

項目名

必須

詳細

入力例

名称

Yes

クライアントが各設定を見分けるための名称です。

自動取引BOT設定

リダイレクトURI

No※1

認可クリア後、必要なパラメータを受け取るためのリダイレクトURL設定してください。設定することを強く推奨しています。

https://auto.bot.co.jp/zaif_oauth

サービス名称

Yes

サービスの名称を設定してください。

自動取引BOT

サービスイメージURL

No

サービスのイメージ画像のURLを設定してください。

https://auto.bot.co.jp/service_image.png

サービスURL

No

サービスのURLを設定してください。

https://auto.bot.co.jp/

サービス利用規約URL

No

サービスの利用規約のURLを設定してください。

https://auto.bot.co.jp/terms

サービスプライバシーポリシーURL

No

サービスのプライバシープリシーのURLを設定してください。

https://auto.bot.co.jp/policy

注釈

※1 未設定の場合、後述する認可画面リダイレクトパラメータに指定されるredirect_uriが利用されます。

2.Zaifアカウント認可画面へのリダイレクト

クライアントサービスのログイン画面等に、Zaifアカウント認可画面 (https://zaif.jp/oauth) へ必要なパラメータを追加してリダイレクトを行えるようにしてください。

項目名

必須

詳細

入力例

client_id

Yes

連携アプリケーション基本情報登録時に発行されるIDを指定してください。

a3823d2a30f24e39980ebe7943b55737

response_type

Yes

固定

code

scope

Yes

認可したい機能を半角空白(エンコード時は%20)で区切って指定してください、詳細は下記scope詳細をご確認ください。

info%20trade

state

Ye

リダイレクトするたびに一意の文字列を指定してください。

2a99cc45cef04c358dbc26db880f9d03

redirect_uri

No※1

発行されたcode(後述)を取得するためのリダイレクト先を指定してください。

http://your_domain/zaif_redirect

lang

No※2

表示言語を明示的に指定したい場合に指定してください。

en

注釈

※1未指定の場合はサービス基本情報登録時に指定したリダイレクトURLが使用されます。

※2未指定の場合ブラウザの言語設定を参照して自動で言語情報を切り替えます。

scope詳細

名称

詳細

補足

info

データ参照

trade

通貨のトレード

withdraw

口座への引き出し

すべてのクライアントが指定できるわけではありません。詳しくはサポートまでご連絡ください。

リダイレクトに成功すると、下記のような認証画面が表示されます。

_images/oauth_slideshow_2.png

3.リダイレクトされた情報の解析

サービス利用ユーザ(以下ユーザ)が認証に成功すると、指定したリダイレクトURLにリクエストが発行されるので、パラメータを解析し、認可処理を行ってください。

キー

詳細

code

Zaifが発行した一意の文字列です。後述のトークン発行時に利用します。

cb533e906a984b0e8ba4efae3af0c7cb

state

リダイレクト時に付与したstateパラメータと同値です。成りすまし対策として、必ず同値であるかチェックしてください。

2a99cc45cef04c358dbc26db880f9d03

4.トークン発行リクエスト

前述のcodeパラメータを使って、tokenが取得できるWeb APIを実行し、tokenを取得します。なお、戻り値はJSONになります。

  • エンドポイント:https://oauth.zaif.jp/oauth/v1/token

  • メソッド:POST


トークン発行APIパラメータ

パラメータ

必須

詳細

grant_type

Yes

固定

authorization_code

code

Yes

code

リダイレクトされたcode値を指定してください。

client_id

Yes

9r88i445cef04c358dbc26db880f9d03

アプリケーション基本情報登録時に発行されたクライアントIDを指定してください。

client_secret

Yes

2a99cc45cef04c358dbc26db880f9d03

アプリケーション基本情報登録時に発行されたクライアントシークレットを指定してください。

redirect_uri

No※1

http://your_domain/zaif_redirect

リダイレクトしたいURLを指定してください。

注釈

※1 認可画面リダイレクト時に指定している場合必ず同値を指定してください。

トークン発行API戻り値

キー

詳細

token_type

固定

bearer

state

リダイレクト時に付与したstateパラメータと同値です。

2a99cc45cef04c358dbc26db880f9d03

access_token

APIを利用する時に指定するトークンです。

bb12f3de5df2472290ff15331824a9cf

refresh_token

利用期限が切れたaccess tokenを再発行するために使用します。

ef972ad13e484e17abffbfd5dba51750

expires_in

access tokenの期限です。単位は秒です。

3600

5.API実行

今までHTTPヘッダにkey、signパラメータを付与して実行していた取引APIですが、取得したtokenを利用すればそれらは必要なくなります。 発行されたaccess tokenをtokenパラメータとしてリクエスト発行時にHTTPヘッダに付与し、APIを実行して下さい。

6.access tokenの期限が切れた場合

期限が切れたaccess tokenは利用できなくなります。下記tokenの再発行Web APIを利用して、token を再発行して下さい。

  • エンドポイント:https://oauth.zaif.jp/oauth/v1/refresh_token

  • メソッド:POST

トークン再発行APIパラメータ

パラメータ

必須

詳細

grant_type

Yes

固定

refresh_token

refresh_token

Yes

トークン発行API実行時に取得したrefresh tokenを指定してください。

ef972ad13e484e17abffbfd5dba51750

client_id

Yes

アプリケーション基本情報登録時に発行されたクライアントIDを指定してください。

9r88i445cef04c358dbc26db880f9d03

client_secret

Yes

アプリケーション基本情報登録時に発行されたクライアントシークレットを指定してください。

2a99cc45cef04c358dbc26db880f9d03

トークン再発行API戻り値

キー

詳細

token_type

固定

bearer

access_token

APIを利用する時に指定するトークンです。

bb12f3de5df2472290ff15331824a9cf

refresh_token

利用期限が切れたaccess tokenを再発行するために使用します。

ef972ad13e484e17abffbfd5dba51750

expires_in

access tokenの期限です。単位は秒です。

3600

補足

  • ユーザが認証したアプリケーションの情報を削除したい場合は、『アカウント』→『連携アプリケーション一覧』を選択し、削除したいアプリケーション情報の削除ボタンを押下してください。