開発者ガイドの概要

Amazon Ads APIの概要

アクセストークン

認可の概要で説明されているように、Amazon Ads APIに対する呼び出しが正常に実行されるには、広告主がクライアントアプリケーションに広告主のデータとサービスにアクセスするための認可を明示的に付与する必要があります。

この認可プロセスは、アクセストークンを使用するLogin with Amazon(LwA)サービスによって処理されます。Amazon Ads APIの呼び出しでは、アクセストークンは、特定のクライアントが広告主のデータやサービスにアクセスすることに対する特定の広告主の同意を表します。

以下の図では、クライアントアプリケーションが、認可コードを使用してLogin with Amazonサーバーからアクセストークンを取得します。

Amazon Ads APIのOAuth 2.0

アクセストークンの有効期間は60分です。この間、アクセストークンは、Amazon Ads APIを介して広告主のリソースにアクセスするための認証情報として機能します。

認可サーバー

アクセストークンは、次の3つ地域のLogin with Amazonホストのうち任意のホストから取得できます。

地域 認可URL
北米(NA) https://api.amazon.com/auth/o2/token
ヨーロッパ(EU) https://api.amazon.co.uk/auth/o2/token
極東(FE) https://api.amazon.co.jp/auth/o2/token

アクセストークンはグローバルです。上記のホストから取得したアクセストークンは、どの地域でもAmazon Ads APIの有効な認証情報です。

アクセストークンの取得

アクセストークンを取得するために、Login with Amazonクライアントアプリケーションは、クライアントIDクライアントシークレット、および以下のいずれかを提供します。

Login with AmazonアプリケーションのクライアントIDとクライアントシークレットを確認する詳しい手順については、オンボーディングのウォークスルーをご覧ください。

認可コードを使用したアクセストークンの取得

認可コードを使用してアクセストークンとリフレッシュトークンを取得するには、クライアントは以下のクエリパラメーターを使用してLogin with Amazonホストを呼び出します。

パラメーター 説明
grant_type authorization_codeを指定する必要があります。
code 認可グラントプロセスで取得した認可コード。このコードは5分後に期限が切れることに注意してください。
redirect_uri Login with Amazonアカウントの「許可されたリターンURL」フィールドのいずれかの値。
client_id Login with AmazonアカウントのクライアントID
client_secret Login with Amazonアカウントのクライアントシークレット

たとえば、cURLを使用してアクセストークンとリフレッシュトークンを取得する場合は、次のリクエストに値を代入してください。

curl  \
    -X POST \
    --data "grant_type=authorization_code&code=AUTH_CODE&redirect_uri=YOUR_RETURN_URL&client_id=YOUR_CLIENT_ID&client_secret=YOUR_SECRET_KEY" \
    https://api.amazon.com/auth/o2/token  

認可コードは5分後に期限が切れます。認可コードを1度使用すると、アクセストークンとリフレッシュトークンを取得できます。

リフレッシュトークンを使用したアクセストークンの生成

認可コードを使用してトークンを取得したら、いつでもリフレッシュトークンを使用して、新しいアクセストークンを取得できます。リフレッシュトークンを使用するには、クライアントで次のパラメーターを使用してLogin with Amazonホストを呼び出します。

パラメーター 説明
grant_type refresh_tokenを指定する必要があります。
refresh_token 成功したトークンリクエストから返されるrefresh_token値。
client_id Login with AmazonアカウントのクライアントID
client_secret Login with Amazonアカウントのクライアントシークレット

たとえば、cURLを使用して新しいアクセストークンを取得する場合は、次のリクエストに値を代入してください。

curl \
    -X POST \
    --data "grant_type=refresh_token&client_id=YOUR_CLIENT_ID&refresh_token=YOUR_REFRESH_TOKEN&client_secret=YOUR_CLIENT_SECRET" \
    https://api.amazon.com/auth/o2/token

リフレッシュトークンは、認可を付与したユーザーが認可を取り消すまで有効です。リフレッシュトークンを使用したリクエストが成功すると、同じリフレッシュトークンが新しいアクセストークンとともに返されます。

アクセストークンレスポンス

トークンリクエストが成功した場合のレスポンスは、次のスキーマのJSONオブジェクトです。

フィールド 説明
access_token アクセストークン。
refresh_token リフレッシュトークン。
token_type OAuth 2.0トークンのタイプ。必ずbearerに設定されています。
expires_in アクセストークンの期限が切れるまでの時間(秒単位)。

例:

{
    "access_token": "Atza|XXXXXXXXXXXX",
    "refresh_token": "Atzr|XXXXXXXXXXXX",
    "token_type": "bearer",
    "expires_in": 3600
}

アクセストークンの有効期間は60分であることに注意してください。新しいアクセストークンは、リフレッシュトークンを使用していつでも生成できます。リフレッシュトークンに有効期限はありません。

Amazon Ads APIのアクセストークンの使用

Amazon Ads APIの呼び出しを成功させるには、有効なアクセストークンをAuthorizationヘッダーに含める必要があります。トークンは、文字列 「Bearer」に追加して、1つの文字列として渡します。

たとえば、アクセストークンが「Atza|zZzZzZzZ」 の場合は、次のヘッダーになります。

Authorization: "Bearer Atza|zZzZzZzZ"

アクセストークンの概念

詳細はこちら

次のドキュメントで概念の詳細をご確認ください。

詳しいガイドに従ってAmazon Ads APIで認可を設定するには、オンボーディングのウォークスルーをご覧ください。