スキル内課金のスキーマ



スキル内課金のスキーマ

このトピックでは、スキル内商品のスキーマのサンプルおよびスキーマの各部分の説明を提供します。

サブスクリプション型スキーマ

以下はサブスクリプション型商品のスキーマの例です。

{
  "version": "1.0",
  "type": "SUBSCRIPTION",
  "referenceName": "treasure_finders_plus",
  "subscriptionInformation": {
    "subscriptionPaymentFrequency": "MONTHLY",
    "subscriptionTrialPeriodDays": 7
  },
  "publishingInformation": {
    "locales": {
      "ja-JP": {
        "name": "宝探しプラス",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "新しい会員専用アドベンチャーが毎月1つと、10個以上のリリース済みアドベンチャーです。",
        "description": "会員専用の新しいアドベンチャーに毎月アクセスしましょう。リリース済み会員専用アドベンチャーのコレクションも10個以上で今後ますます増えていきます。クリスタルキャッチャー、光の石、ほの暗い水辺、洞窟に潜むもの、下へ下へなどをお楽しみください。",
        "examplePhrases": [
          "アレクサ、宝探しプラスを開いて",
          "アレクサ、宝探しプラスで遊びたい"
        ],
        "keywords": [
          "ゲーム"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE}では、現在リリースされているすべてのアドベンチャーにアクセスできるほか、毎月新しいものが1つ追加されます。",
          "boughtCardDescription": "{PREMIUM_CONTENT_TITLE}をお楽しみください。 購入したものについての詳細は、アドベンチャーのリストについて聞いてください.."
        }
      },
      "en-US": {
        "name": "Treasure Finders Plus",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "1 new members-only adventure each month + over 10 previously released adventures.",
        "description": "Get access to a new adventure each month for members only, along with a growing collection of over 10 previously released members-only adventures.Includes Crystal Catchers, The Light Stone, The Dark Pool, The Cave Fish, Long Way Down and more.",
        "examplePhrases": [
          "Alexa, open treasure finders plus",
          "Alexa, play with treasure finders plus"
        ],
        "keywords": [
          "Games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} includes access to all of our current adventures and a new one each month.",
          "boughtCardDescription": "Enjoy {PREMIUM_CONTENT_TITLE}! Ask for a list of adventures to explore your purchase.."
        }
      },
      "en-GB": {
        "name": "Treasure Finders Plus",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "1 new members-only adventure each month + over 10 previously released adventures.",
        "description": "Get access to a new adventure each month for members only, along with a growing collection of over 10 previously released members-only adventures.Includes Crystal Catchers, The Light Stone, The Dark Pool, The Cave Fish, Long Way Down and more.",
        "examplePhrases": [
          "Alexa, open treasure finders plus",
          "Alexa, play with treasure finders plus"
        ],
        "keywords": [
          "Games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} includes access to all of our current adventures and a new one each month.",
          "boughtCardDescription": "Enjoy {PREMIUM_CONTENT_TITLE}! Ask for a list of adventures to explore your purchase.."
        }
      }
    },
    "distributionCountries": [
      "JP", "IE", "BE", "BG", "CY", "CZ", "DK", "EE", "FI", "GB", "GG", "GI", "GR", "HR", "HU", "LT", "LV", "MT", "NL", "NO", "PL", "PT", "RO", "SE", "SI", "SK", "UA", "US"
    ],
    "pricing": {
      "amazon.co.jp": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 99,
          "currency": "JPY"
        }
      },
      "amazon.com": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "USD"
        }
      },
      "amazon.co.uk": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "GBP"
        }
      }
    },
    "taxInformation": {
      "category": "SOFTWARE"
    }
  },
  "privacyAndCompliance": {
    "locales": {
      "ja-JP": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-US": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-GB": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      }
    }
  },
  "testingInstructions": "サンプルのテスト手順です。",
  "purchasableState": "PURCHASABLE"
}

買い切り型スキーマ

以下は買い切り型商品のスキーマの例です。

{
  "version": "1.0",
  "type": "ENTITLEMENT",
  "referenceName": "cave_quest",
  "publishingInformation": {
    "locales": {
      "ja-JP": {
        "name": "洞窟探検",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "  コレクションに5つの新しい冒険を",
        "description": "洞窟探検拡張パックには、コレクションに追加できる5つの新登場のアドベンチャーが含まれています。エメラルドとその仲間たちと一緒に、もっと深く暗い洞窟を探検して、最大30個のユニークな宝物を集めましょう。購入が完了すると、アドベンチャーは自動的にプレイできるようになります。また、何回でもプレイできます。",
        "examplePhrases": [
          "アレクサ、洞窟探検をプレイしたい",
          "アレクサ、洞窟探検を買って"
        ],
        "keywords": [
          "Games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE}には、エメラルドと仲間たちの新しい冒険が5つ含まれています。",
          "boughtCardDescription": "アレクサに洞窟探検をプレイしたいと言って、{PREMIUM_CONTENT_TITLE}をお楽しみください。"
        }
      },
      "en-US": {
        "name": "Cave Quest",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "5 new adventures for your collection",
        "description": "The Cave Quest expansion pack includes 5 brand new adventures for your collection.Venture into even deeper and darker caves with Emerald and her friends, and collect up to 30 unique treasures.Adventures will automatically be playable once you've completed your purchase, and you can play them as often as you'd like.",
        "examplePhrases": [
          "Alexa, play cave quest",
          "Alexa, buy cave quest"
        ],
        "keywords": [
          "Games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} includes 5 new adventures with Emerald and her friends.",
          "boughtCardDescription": "Enjoy {PREMIUM_CONTENT_TITLE} by asking Alexa to play cave quest."
        }
      },
      "en-GB": {
        "name": "Cave Quest",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "5 new adventures for your collection",
        "description": "The Cave Quest expansion pack includes 5 brand new adventures for your collection.Venture into even deeper and darker caves with Emerald and her friends, and collect up to 30 unique treasures.Adventures will automatically be playable once you've completed your purchase, and you can play them as often as you'd like.",
        "examplePhrases": [
          "Alexa, play cave quest",
          "Alexa, buy cave quest"
        ],
        "keywords": [
          "Games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} includes 5 new adventures with Emerald and her friends.",
          "boughtCardDescription": "Enjoy {PREMIUM_CONTENT_TITLE} by asking Alexa to play cave quest."
        }
      }
    },
    "distributionCountries": [
      "JP", "IE", "BE", "BG", "CY", "CZ", "DK", "EE", "FI", "GB", "GG", "GI", "GR", "HR", "HU", "LT", "LV", "MT", "NL", "NO", "PL", "PT", "RO", "SE", "SI", "SK", "UA", "US"
    ],
    "pricing": {
      "amazon.co.jp": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 99,
          "currency": "JPY"
        }
      },
      "amazon.com": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "USD"
        }
      },
      "amazon.co.uk": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "GBP"
        }
      }
    },
    "taxInformation": {
      "category": "SOFTWARE"
    }
  },
  "privacyAndCompliance": {
    "locales": {
      "ja-JP": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-US": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-GB": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      }
    }
  },
  "testingInstructions": "新しい冒険があるかどうかアレクサにたずねてください",
  "purchasableState": "PURCHASABLE"
}

消費型スキーマ

以下は消費型商品のスキーマの例です。

{
  "version": "1.0",
  "type": "CONSUMABLE",
  "referenceName": "five_hint_pack",
  "publishingInformation": {
    "locales": {
      "ja-JP": {
        "name": "ヒント5パック",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "問題に行き詰ったときに使用できる5個のヒントです。",
        "description": "ヒント5個パックは、問題に答えられないときにいつでも使用できる5回分のヒントです。ヒントはゲームのどのタイミングでも使用できます。",
        "examplePhrases": [
          "アレクサ、ヒントを買って",
          "アレクサ、ヒントをちょうだい"
        ],
        "keywords": [
          "ゲーム"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE}は、いつでも使える5回分のヒントです。",
          "boughtCardDescription": "答えがわからないときはいつでも、アレクサにヒントを使ってと言うことで、{PREMIUM_CONTENT_TITLE}のヒントを使用できます。"
        }
      },
      "en-US": {
        "name": "Five-hint pack",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "Five hints you can use if you get stuck on a question.",
        "description": "The five-hint pack gives you five hints you can use any time you can't answer a question.You can use your hints at any point in the game.",
        "examplePhrases": [
          "Alexa, buy hints",
          "Alexa, give me a hint"
        ],
        "keywords": [
          "games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} provides you with five hints you can use at any time.",
          "boughtCardDescription": "Use your hints in the {PREMIUM_CONTENT_TITLE} when you don't know an answer by asking Alexa to use a hint."
        }
      },
      "en-GB": {
        "name": "Five-hint pack",
        "smallIconUri": "small-icon-uri",
        "largeIconUri": "large-icon-uri",
        "summary": "Five hints you can use if you get stuck on a question.",
        "description": "The five-hint pack gives you five hints you can use any time you can't answer a question.You can use your hints at any point in the game.",
        "examplePhrases": [
          "Alexa, buy hints",
          "Alexa, give me a hint"
        ],
        "keywords": [
          "games"
        ],
        "customProductPrompts": {
          "purchasePromptDescription": "{PREMIUM_CONTENT_TITLE} provides you with five hints you can use at any time.",
          "boughtCardDescription": "Use your hints in the {PREMIUM_CONTENT_TITLE} when you don't know an answer by asking Alexa to use a hint."
        }
      }
    },
    "distributionCountries": [
      "JP", "IE", "BE", "BG", "CY", "CZ", "DK", "EE", "FI", "GB", "GG", "GI", "GR", "HR", "HU", "LT", "LV", "MT", "NL", "NO", "PL", "PT", "RO", "SE", "SI", "SK", "UA", "US"
    ],
    "pricing": {
      "amazon.co.jp": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 99,
          "currency": "JPY"
        }
      },
      "amazon.com": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "USD"
        }
      },
      "amazon.co.uk": {
        "releaseDate": "2018-12-28T01:25Z",
        "defaultPriceListing": {
          "price": 0.99,
          "currency": "GBP"
        }
      }
    },
    "taxInformation": {
      "category": "SOFTWARE"
    }
  },
  "privacyAndCompliance": {
    "locales": {
      "ja-JP": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-US": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      },
      "en-GB": {
        "privacyPolicyUrl": "url-to-privacy-policy"
      }
    }
  },
  "testingInstructions": "ゲームを開始します。問題が出されたら、アレクサにヒントを頼んでください。",
  "purchasableState": "PURCHASABLE"
}

商品スキーマの各部分

以下に、スキル内商品のスキーマの各部分を説明します。

Productオブジェクト

商品には以下のフィールドが含まれています。

フィールド 説明
version バージョンを表示します。 文字列です。有効値: 1.0
type スキル内商品の型です。 文字列です。有効値: CONSUMABLEENTITLEMENTSUBSCRIPTION
referenceName スキル内商品の正式名です。コード内で商品を参照する場合にこの名前を使用します。 3文字から50文字の文字列です。スペースは含めません。
publishingInformation 商品がエンドユーザーに提示される方法に関するロケール別の情報を含むオブジェクトです。 publishingInformationオブジェクト
privacyAndCompliance ロケール別のプライバシーポリシーのURLを指定するオブジェクトです。 privacyAndComplianceオブジェクト
testingInstructions テストアカウントの認証情報などのテスト手順です。 1~4,000文字(両端の値を含む)の文字列です。
purchasableState 商品が購入可能かどうかを示します。購入できない商品に関する詳細については、後で説明する無効化された商品を参照してください。 文字列の列挙値です。 PURCHASABLEまたはNOT_PURCHASABLEのいずれかです。
subscriptionInformaton サブスクリプション型でのみ必須です。サブスクリプション型の請求頻度および試用期間を説明します。 SubscriptionInformationオブジェクト
無効化された商品

purchasableStateNOT_PURCHASABLEの場合、商品は無効であるとみなされます。公開中のスキルでは、ユーザーはこの商品を購入できなくなります。ただし、既に購入済みのユーザーは引き続き商品にアクセスする権利があるため、スキルでこれらのユーザーのサポートを継続する必要があります。サブスクリプション型の場合は、既存のユーザーはサブスクリプションの残りの期間は引き続き商品にアクセスできます。無効化されたサブスクリプションは自動的に更新されません。

SubscriptionInformationオブジェクト

サブスクリプション型でのみ必須です。サブスクリプション型の請求頻度および試用期間を説明します。

フィールド 説明
subscriptionPaymentFrequency サブスクリプション型でのみ必須です。サブスクリプションの請求頻度を示します。 文字列です。有効値: MONTHLY、YEARLY
subscriptionTrialPeriodDays サブスクリプション型でのみ必須です。試用期間を日数で示します。 0~31までの整数(両端の値を含む)です。

スキル内商品のPublishingInformationオブジェクト

publishingInformationオブジェクトには以下のフィールドが含まれています。

フィールド 説明
locales サポートされる各ロケールに固有の情報を提供するlocaleオブジェクトのマップです。 localeオブジェクトのマップを含むオブジェクトです。
distributionCountries 配信する国や地域の文字列を指定する、ISO 3166-1 alpha-2形式のリストです。 文字列のリストです。有効な値については、スキル内商品をサポートしている国と地域を参照してください。
pricing 商品の価格に関する詳細を含みます。 pricingオブジェクト
taxInformation 商品の税に関する情報を提供します。 オブジェクト
taxInformation.category 商品の税金のカテゴリーです。 文字列です。有効値: INFORMATION_SERVICES、NEWSPAPERS、PERIODICALS、SOFTWARE、STREAMING_RADIO、VIDEO。これらのカテゴリーの意味について詳しくは、税金のカテゴリーフィールド(開発者コンソール)を参照してください。

公開情報のロケール

publishingInformationオブジェクトには、localeオブジェクトのマップが含まれており、そのロケールに固有の公開情報が説明されています。各ロケールは2文字の言語コード、ハイフン、それに続く2文字の国コード、またはリージョンコードで識別されます。

フィールド 説明

<locale>

2文字の言語コード、ハイフン、それに続く2文字の国コードまたはリージョンコードです。

文字列です。有効な値は、 en-USen-GBde-DEja-JPes-USes-ESfr-FRit-ITです。

<locale>.name

このロケールでの商品の名前です。この名前は購入確認プロンプト、Alexaアプリの購入カード、メールの領収書で使用されます。

2~50文字(両端の値を含む)の文字列です。

<locale>.summary

商品の簡単な説明です。

1~160文字(両端の値を含む)の文字列です。

<locale>.description

商品の機能や使用するための前提条件を説明した詳細な説明です。

1~4,000文字(両端の値を含む)の文字列です。

<locale>.smallIconUri

108 x 108 pxの透過済みPNGファイルのURIです。スキル内商品を表します。画像は表示する際に丸く切り取られるため、四辺に75pxのパディングを取ることをお勧めします。スキルに関連付けられた小さいアイコンを再利用することも、スキル内商品を表すユーザー定義の画像を指定することもできます。この値は、パブリックにアクセス可能なURL、またはスキルパッケージの形式を使用する場合には、スキルパッケージのskill.jsonファイルへの相対パス(file://assets/images/isp1/en-US_smallIcon.pngなど)です。

適切な形式のURI文字列

<locale>.largeIconUri

512 x 512 pxの透過済みPNGファイルのURIです。スキル内商品を表します。画像は表示する際に丸く切り取られるため、四辺に75pxのパディングを取ることをお勧めします。スキルに関連付けられた大きいアイコンを再利用することも、スキル内商品を表すユーザー定義の画像を指定することもできます。この値は、パブリックにアクセス可能なURL、またはスキルパッケージの形式を使用する場合には、スキルパッケージのskill.jsonファイルへの相対パス(file://assets/images/isp1/en-US_largeIcon.pngなど)です。

適切な形式のURI文字列

<locale>.examplePhrases

ユーザーが商品についてどのように依頼するかを示したサンプルフレーズのリストです。これらのフレーズは音声モデルでサポートされている必要があります。

1~3個の項目を含む文字列リストです。リスト内の各文字列は2~200文字(両端の値を含む)です。

<locale>.keywords

商品の提供を説明するキーワードとなるフレーズです。

1~30個の項目を含む文字列リストです。リスト内の各文字列は1~150文字(両端の値を含む)です。

<locale>.customProductPrompts

このロケール向けのこの商品のプロンプトと説明を含むオブジェクトです。

customProductPromptsオブジェクト

customProductPromptsオブジェクト

customProductPromptsオブジェクトには、ユーザーが購入を行った際に商品の説明を提供する2つのフィールドがあります。これらを指定されたロケールの言語に設定する必要があります。

フィールド 説明
purchasePromptDescription ユーザーがサブスクリプションを購入またはキャンセルするときに聞く商品の説明です。purchasePromptDescriptionは以下を満たす必要があります。
  • 商品名を含めます。nameフィールドのトークンには「{PREMIUM_CONTENT_TITLE}」を使用します。プロンプトのこれ以外の部分には「{」や「}」を使用しないでください。
  • この商品のセールスポイントを含めます。
  • できるだけ簡潔にしてください。
  • 価格情報は含めないでください。価格は購入フローでAmazonによって自動的に付け加えられます。
  • ユーザーが前のステップで既に聞いたものと同じフレーズは繰り返さないようにします。

オプションでプレースホルダー{PREMIUM_CONTENT_TITLE}を含む、1~160文字の文字列です。
boughtCardDescriptionAlexaアプリのスキルカードに表示される商品の説明です。オプションでプレースホルダー{PREMIUM_CONTENT_TITLE}を含む、1~160文字(両端の値を含む)の文字列です。

pricingオブジェクト

pricingオブジェクトには、marketplaceオブジェクトのマップが含まれています。これにはそのマーケットプレイス価格に関する詳細が含まれています。

フィールド 説明

<marketplace>

商品が提供される場所を説明します。

文字列です。有効な値は、amazon.comamazon.co.jpamazon.deamazon.esamazon.fr、およびamazon.itです。

<marketplace>.releaseDate

商品の提供開始時間を示すUTC形式の未来の日付です。指定された日付にかかわらず、スキルが公開されるとこの日付は変更できないことに注意してください。

ISO 8601形式の日付と時刻です。例: yyyy-MM-dd'T'HH:mm'Z' or yyyy-MM-dd

<marketplace>.defaultPriceListing

このマーケットプレイスの商品に割り当てられたデフォルトの標準価格と通貨です。

オブジェクト

defaultPriceListing.price

商品の標準価格です。

数字(long型)です。価格値の最大値および最小値については、スキル内商品の価格範囲を参照してください。

defaultPriceListing.currency

指定された標準価格の通貨を示すISO 4217の3文字のアルファベットコードです。

文字列です。使用できる通貨については、スキル内商品の価格範囲を参照してください。

商品スキーマの各部分に戻る

privacyAndComplianceオブジェクト

privacyAndComplianceオブジェクトには、localeオブジェクトのマップが含まれています。これには、そのロケールに固有のプライバシーに関する情報が含まれています。各ロケールは2文字の言語コード、ハイフン、それに続く2文字の国コード、またはリージョンコードで識別されます。publishingInformation objectで識別される各ロケールには、このマップのエントリと、そのロケールの有効なprivacyPolicyUrlが含まれている必要があります。

フィールド 説明

<locale>

2文字の言語コード、ハイフン、それに続く2文字の国コード、またはリージョンコードを含む言語タグです。

文字列です。有効な値は、 en-USen-GBde-DEja-JPes-USes-ESfr-FRit-ITです。

<locale>.privacyPolicyUrl

このロケールのプライバシーポリシーへのURLです。

適切な形式のURL文字列

商品スキーマの各部分に戻る