アカウントのリンクのスキーマ



アカウントリンクのスキーマ

accountLinkingRequest構造体は、開発者コンソールのビルド>アカウントリンクセクションに表示されるアカウントリンク情報をJSONで表したものです。

アカウントリンクの情報は、ask apiコマンドのcreate-account-linkingget-account-linkingのサブコマンドを使って作成、取得できます。

関連トピック: Alexa Skills KitコマンドラインインターフェースとAlexaスキル管理APIの概要

アカウントリンクのリクエスト

フィールド 説明
skipOnEnablement ユーザーがアカウントリンクフローを開始せずにスキルを有効にする場合は、trueに設定します。ユーザーがスキルを有効にする際に通常のアカウントリンクフローを必要とする場合は、falseに設定します。ユーザーがアカウントをリンクせずにスキルを有効にするを参照してください。  
type OAuth Authorization grant種別を指定します。AUTH_CODEまたはIMPLICITを使用します。注: スマートホームスキルでは必ずAUTH_CODEを使用してください。 文字列
authorizationUrl 認証画面のURI 文字列
domains ログインページがコンテンツを取得する追加のドメインのリストです。最大15個のドメインを指定できます。 文字列の配列
clientId ログインページがスキルからのリクエストを認識するために使用する識別子です。 文字列
scopes user_idなどユーザーアカウントに必要なアクセス権限を識別します。 このフィールドはスマートホームスキルでは必須です。最大15個のスコープを指定できます。 文字列の配列
accessTokenUrl 認可トークンをリクエストするためのURIです。typeAUTH_CODEが指定されている場合にのみ必須です。 文字列
reciprocalAccessTokenUrl このURIは、Alexaアクセストークンと交換できる認可コードを使用して呼び出されます。 文字列
clientSecret アクセストークンURIを使ってAlexaサービスの認証を行うための認証情報です。clientIdと組み合わせて、Alexaからのリクエストを識別するのに使用されます。 文字列
accessTokenScheme HTTP_BASICREQUEST_BODY_CREDENTIALSなど、使用する認証の種類です。AUTH_CODEが指定されている場合にのみ必須です。 文字列
defaultTokenExpirationInSeconds 任意です。アクセストークンの有効期間を秒単位で指定します。OAuthクライアントがexpires_inを返さない場合にこの値を使用します。OAuthクライアントがexpires_inを返す場合は、OAuthクライアントによって指定された値が使用されます。typeAUTH_CODEの場合にのみ適用されます。 整数

アカウントリンクリクエストのサンプル

{
  "accountLinkingRequest": {
    "skipOnEnablement": "true",
    "type": "AUTH_CODE",
    "authorizationUrl": "string",
    "domains": [
      "string"
    ],
    "clientId": "string",
    "scopes": [
      "string"
    ],
    "accessTokenUrl": "string",
    "reciprocalAccessTokenUrl": "string",
    "clientSecret": "string",
    "accessTokenScheme": "HTTP_BASIC",
    "defaultTokenExpirationInSeconds": 3600
  }
}

ユーザーアカウントの認証後にリダイレクトされるURL

リダイレクトURLとは、ユーザー認証後にリダイレクトされるURLのことです。このリダイレクトURLは、redirect_uriフィールドで参照されます。

redirect_uriフィールドは既定の定数値を含むため、アカウントリンクスキーマの一部ではありません。そのため、ユーザー入力から解析することはできません。

すべてのスマートホームスキルや一部のカスタムスキルで使用されるAuthorization code grantの場合、redirect_uri値の形式は以下のとおりです。

{baseUrl}/api/skill/link/{vendorId}

一部のカスタムスキルで使用されるImplicit grantの場合、redirect_uri値の形式は以下のとおりです。

{baseURL}/spa/skill/account-linking-status.html?vendorId={vendorId}

有効なHTTPSリダイレクトエンドポイントのリストには、以下のようなURLが含まれます。これらは、baseUrlに指定可能な値です。

  • https://pitangui.amazon.com
  • https://layla.amazon.com
  • https://alexa.amazon.co.jp

Authorization code grantとImplicit grantの違いの詳細については、カスタムスキルのAuthorization grant種別を参照してください。

アカウントリンクの概要については、アカウントリンクとはを参照してください。