トークン取得APIリファレンス(アフィリエイトサイト向け)
概要
アフィリエイトサイト向け認証下APIにアクセスするため必要なトークンを提供するリクエストについての仕様書です。 トークン発行リクエストを行うためには、管理画面「ツール」 >「レポートAPI」画面にて、API認証キーを発行している必要があります。
有効期限
このAPIのトークンの有効期限は30分間です。期限が切れるとリクエスト時にエラーメッセージ「invalid_token
」が返却されますので、トークン取得APIに再度リクエストを行い、最新のトークンを取得し、指定してください。エラーメッセージについては「レスポンスヘッダー」の章を参照ください。
利用制限
このAPIでは30分間以内に9,000回を超える正常リクエストが行われた場合に30分間ロックされます。ロック中のリクエスト時にはエラーメッセージ「locked
」が返却されますので、時間を置いて再度リクエストしてください。エラーメッセージについては「レスポンスヘッダー」の章を参照ください。
リクエスト
エンドポイント
GET https://api.valuecommerce.com/auth/v1/affiliate/token/
リクエストヘッダー
リクエストヘッダーには下記を指定してください。
- Authorization: Bearer [署名]
- Accept: application/json
署名作成サンプル
[署名]部分には、管理画面の「ツール」 >「レポートAPI」
画面で発行した CLIENT_KEY
、CLIENT_SECRET
を"|
"(パイプ)で結合し、Base64エンコードした文字列を指定してください。改行文字は利用不可、1行で出力してください。
Ruby
$ ruby -r base64 -e "print Base64.strict_encode64('THIS_IS_TEST_CLIENT_KEY_STR|THIS_IS_TEST_CLIENT_SECRET_STR')"
VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==
PHP
$ php -r "echo base64_encode('THIS_IS_TEST_CLIENT_KEY_STR|THIS_IS_TEST_CLIENT_SECRET_STR');"
VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==
Node.js
$ node -e "process.stdout.write(new Buffer('THIS_IS_TEST_CLIENT_KEY_STR|THIS_IS_TEST_CLIENT_SECRET_STR').toString('base64'));"
VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==
bash
$ echo -n $(echo -n "THIS_IS_TEST_CLIENT_KEY_STR|THIS_IS_TEST_CLIENT_SECRET_STR" | base64 | sed -ne 'N;s/\n//p')
VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==
あるいは、以下のようにします。
$ echo -n "THIS_IS_TEST_CLIENT_KEY_STR|THIS_IS_TEST_CLIENT_SECRET_STR" | base64 | perl -pe 's/\n//g'
VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==
リクエストサンプル
$ curl https://api.valuecommerce.com/auth/v1/affiliate/token/?grant_type=client_credentials -H "Authorization: Bearer VEhJU19JU19URVNUX0NMSUVOVF9LRVlfU1RSfFRISVNfSVNfVEVTVF9DTElFTlRfU0VDUkVUX1NUUg==”
リクエストボディー
パラメーター名 | 説明 | 必須 | 許容文字列 | 許容バイト数 |
---|---|---|---|---|
callback(※1) | コールバック関数名 | × | 半角英数および記号【_-】 | 50バイト以下 |
grant_type | 要求内容 | ○ | client_credentials(固定) | 18バイト(固定) |
※1:JSONP返却を求める場合のみ指定してください。
レスポンス
レスポンスヘッダー
エラーメッセージ
error="XXX"error_description="XXX"
の表記で、発生したエラーメッセージを示します。正常レスポンス時にはこの項目は返却しません。各エラーメッセージの示す内容は以下のとおりです。
error | error_description | HTTP STATUS CODE | 意味 | 対応要求 |
---|---|---|---|---|
invalid_request | Authorization request header is in invalid format (or may not be encoded). | 401 | Authorizationヘッダー不正、指定されていない、Base64エンコードされていない場合 | Authorizationヘッダーの値、生成方法を確認してください。詳しくは「リクエストヘッダー」の章を参照ください |
invalid_credential | Inactive credential value. | 401 | Authorizationヘッダーが正常だが、アクティブなサイト署名情報とひもづかない不正値 | 管理画面で表示されているCLIENT_KEY/CLIENT_SECRETを再度ご確認ください。再生成されている可能性があります(このエラーメッセージはトークン取得APIに限り返却します) |
invalid_token | The current bearer token is invalid or already expired. Please get a new one. | 401 | トークンが不正値、または有効期限切れ | トークン取得APIにリクエストを行い、最新のトークンを取得し、指定してください(このエラーメッセージは認証下APIに限り返却します) |
locked | The endpoint has been locked due to the requests limit. Please try again later. | 403 | 期間内利用回数の上限を超え、ロック中のエンドポイントに対するアクセス | 時間をおいて再度リクエストしてください |
invalid_parameters | Some of request parameters are invalid. | 400 | いずれかのリクエストパラメーターが不正値 | 「リクエストボディー」の章をご確認ください |
not_found | - | 404 | 存在しないエンドポイントに対するアクセス | リクエストされたURLをご確認ください |
server_error | - | 500 | システムメンテナンス中 | 時間をおいて再度リクエストしてください |
レスポンスボディー
パラメーター名 | 説明 | 説明詳細 | 正常時返却 | 異常時返却 |
---|---|---|---|---|
error | エラー概要 | レスポンスヘッダー「error」と同一 | × | ○ |
error_description | エラー詳細 | レスポンスヘッダー「error_description」と同一 | × | ○ |
resultSet | 正常時レスポンスフィールドセット | 正常処理時のリクエスト・およびレスポンスに関する情報 | ○ | × |
responseInfo | レスポンス情報 | 正常処理時のレスポンスに関する情報 | ○ | × |
numberOfResult | 取得件数 | rowDataフィールド要素数 | ○ | × |
nextOffset | 次取得開始位置 | 次リクエスト時にoffsetに指定する値(一覧系のAPI時にのみ有効で取得内容が最終行である場合には-1を返却する) | ○ | × |
responseTime | レスポンス返却日時 | JST yyyy-mm-dd hh:ii:ss | ○ | × |
requestInfo | リクエスト情報 | 正常処理時のリクエスト要求に関する情報 | ○ | × |
query | クエリストリング | 受け付けたリクエスト要求のクエリストリング | ○ | × |
requestTime | リクエスト受付日時 | JST yyyy-mm-dd hh:ii:ss | ○ | × |
rowData | 詳細情報 | 正常処理時のリクエスト要求に対する詳細情報 | ○ | × |
bearer_token | Bearerトークン | 認証下API接続時に必要となるトークン | ○ | × |