スキル内課金で使用するASK CLIのリファレンス



スキル内課金で使用するASK CLIのリファレンス

ASK CLIには、スキル内商品を操作する複数のコマンドがあります。

概要

スキル内商品を操作する場合、次のタイプのコマンドから選択できます。

  • 高レベルコマンド:1つのコマンドで複数のアクションを実行するため、スキル内商品の操作が簡単になります。これらのコマンドは、デプロイステータスを変更して、スキルコンフィギュレーションファイルを更新します。

  • 低レベルコマンド :スキル内商品を詳細に管理するために使用します。低レベルコマンドは、デプロイステータスやスキルコンフィギュレーションファイルを変更しません。

ASK CLIの一般的な構文は次のとおりです。

$ ask <コマンド> <サブコマンド> [オプション]

ASK CLIを使用して商品を管理する場合、スキルファイルのローカルコピーに変更を加えます。更新したスキルと商品を開発者アカウントにデプロイすると、変更が有効になります。

スキル内商品の高レベルタスクおよび低レベルタスクと、そのコマンドを以下に示します。

タスク コマンドまたはサブコマンド
スキルに新しいスキル内商品を作成します add isp
スキルからスキル内商品を削除します remove isp
スキル内商品を開発者アカウントにデプロイします deploy
商品のステータスを取得します status
商品IDを使用してスキル内商品ファイルまたは概要を取得します get-isp
商品JSONファイルを使用して新しい商品を作成します create-isp
商品JSONファイルを指定して既存の商品を更新します update-isp
指定した商品を指定したスキルに関連付けます associate-isp
指定した商品と指定したスキルの関連付けを解除します disassociate-isp
指定した商品IDの商品を削除します delete-isp
指定されたベンダーIDに関連付けられた商品のリストを取得します list-isp-for-vendor
指定されたスキルIDに関連付けられた商品のリストを取得します list-isp-for-skill
指定された商品に関連付けられたスキルを取得します list-skills-for-isp
スキル内商品の購入をリセットします reset-isp-entitlement

スキルを操作するコマンドについては、ASK CLIコマンドリファレンスを参照してください

商品でASK CLIを使用する手順については、ASK CLIを使用したスキル内商品の作成と編集を参照してください。

高レベルコマンド

以下は、スキル内商品に対して複数の操作を実行する高レベルコマンドです。

add isp

git addと同様に、addコマンドはスキル内商品にAddとマークし、デプロイ時にスキルに追加または関連付けられるようにします。商品のステータスはstatusコマンドを使用して確認できます。

add ispコマンドの形式:

$ ask add isp [-i| --isp-id <ispId>] [-n| --isp-name <ispName>] [-f| --file <filePath>] [-p| --profile <profile>]

スキル内商品を現在のスキルプロジェクトに追加するには3つの方法があります。

  • テンプレートを使用して追加: ask add isp スキル内商品を追加するデフォルトであり、推奨している方法です。商品タイプを選択するプロンプトが出された後、商品テンプレートを選択します。また、名前を入力するプロンプトが出されます。この名前はスキルのreferenceNameを指定します。スペースを含めることはできません。指定された名前でデフォルトのファイル名も置き換えられます。テンプレートは、skillProjectPath/isps/productTypeフォルダのtemplate_name/input_name.jsonに保存されます。
  • ファイルを使用して追加: ask add isp --file <filePath> 既存のスキル内商品ファイルへの相対パスまたは絶対パスを指定します。–fileオプションは、指定されたファイルをAddステータスのスキルコンフィギュレーションに追加し、スキルと共に開発者アカウントにデプロイできるようにします。
  • 商品IDを使用して追加: ask add isp --isp-id <ispId> 現在のスキルに関連付けられていない既存の(デプロイ済み)商品の商品IDを指定します。これによりスキル内商品がスキルコンフィギュレーションファイルに追加され、開発者アカウントにデプロイするときにスキルに関連付けられます。

オプション:

--file、-f <filePath>

任意です。指定されたパスにあるスキル内商品をスキルプロジェクトに追加します。このコマンドは、ファイルパスが正しい形式のJSONファイルを指定しているどうかを検証します。スキル内商品がRemoveとマークされている場合、このコマンドを使用して削除を停止できます。

--isp-id、-i <ispId>

任意です。指定された商品IDの既存のスキル内商品をスキルプロジェクトに追加します。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。ASK CLIによってスキル内商品が現在のスキルに関連付けられ、デプロイ時に商品ファイルがダウンロードされます。スキル内商品がRemoveとマークされている場合、このコマンドを使用して削除を停止できます。

--isp-name、-n <ispName>

任意です。テンプレートを使用してスキル内商品を作成するときに、スキル内商品に割り当てる名前です。「–isp-name」を省略すると、ASK CLIはスキル内商品名を指定するようプロンプトを出します。

--profile、-p

任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。


remove isp

スキル内商品とスキルの関連付けを解除し、JSONファイルをスキルプロジェクトから削除します。スキルの公開バージョンで商品が購入可能になったことがない場合に限り、開発ステージのスキルから商品にこのコマンドを使用できます。

remove ispコマンドの形式:

$ ask remove isp [-i| --isp-id <ispId>] [-f| --file <filePath>] [-p| --profile <profile>]

現在のスキルプロジェクトからスキル内商品を削除するオプションは2つあります。

-ファイルを使用して削除 ask remove isp --file <filePath> スキル内商品が既に現在のスキルプロジェクトに追加または関連付けられており、それをスキルプロジェクトから削除する場合に使用します。スキルは開発者アカウントにデプロイされるときに更新されます。

-商品IDを使用して削除: ask remove isp --isp-id <ispId> 現在のスキルから関連付けを解除する既存の(デプロイ済み)商品の商品IDを指定します。スキルは開発者アカウントにデプロイされるときに更新されます。

オプション:

--file、-f <filePath>

任意です。 商品のJSONファイルへのファイルパスです。絶対または相対パスで指定できます。パスが正しい形式のJSONファイルを指定しているかどうか、およびファイルが現在のスキルプロジェクトに既に追加または関連付けられているかどうかを確認する検証が行われます。スキル内商品が既に現在のスキルに関連付けられている場合、CLIはスキルとの関連付けを解除し、スキルをデプロイする際に商品ファイルを削除します。スキル内商品のステータスがAddまたはAssociateの場合、操作を取り消すためにこのコマンドを使用できます。

--isp-id、-i <ispId>

任意です。既存の商品の商品IDが削除されます。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。ASK CLIによってスキル内商品と現在のスキルの関連付け解除され、スキルのデプロイ時に商品ファイルが削除されます。スキル内商品のステータスがAddの場合、このコマンドはadd操作を取り消すために使用できます。

--profile、-p

任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。


deploy

商品が関連付けられたスキルをデプロイすることで、商品をデプロイします。スキルのデプロイの詳細については、CLIコマンドリファレンスを参照してください。スキルをデプロイすると、商品が追加、削除、更新されます。statusコマンドを使用して商品のステータスをチェックします。商品が現在のスキルに正常にデプロイされると、商品のステータスがUpdateになります。


status

高レベルコマンド(Add、Remove)で操作された商品のデプロイステータスを、次のコマンドを使用して取得できます。

$ ask status --isp

このコマンドは、この現在のスキルのスキル内商品のデプロイステータスを表示します。以下が表示されます。

  • スキルコンフィギュレーションファイル(.ask/config)に無効な商品設定がある場合は、エラーメッセージが表示されます
  • 購入可能および購入不可の商品およびそのデプロイステータス
  • CurrentSkillProjectDirectory/isps内の追跡されていない商品ファイル

商品のステータスは次のいずれかになります。

  • Add:商品が新規であることを意味し、デプロイ中に現在のスキルに関連付けられます。商品が作成され正常にデプロイされると、商品はUpdateとマークされます。スキルの関連付けに失敗すると、Associateとマークされ、CLIは次回のデプロイでスキルの関連付けを試みます。
  • Remove:CLIはデプロイ中に商品とスキルの関連付けを解除します。削除操作が成功すると、商品は.ask/configおよびispsフォルダから削除されます。それ以外の場合はステータスは変わりません。
  • Associate:CLIはデプロイ中に商品をスキルに関連付けます。
  • Update:商品が以前にこのスキルにデプロイされていることを意味し、次回のデプロイ中に、CLIによってispsフォルダ内のファイルを使用して商品が更新されます。

statusの出力の例を次に示します。

デプロイする購入可能なスキル内商品:
    (現在のスキルにスキル内商品を追加する場合は「ask add isp --file <filePath>/--isp-id <id>」を使用します)
    (現在のスキルからスキル内商品を削除する場合は「ask remove isp --file <filePath>/--isp-id <id>」を使用します)

デプロイステータス | ID                                   | ファイル
Add          | N/A                                     | isps/entitlement/pack1.json
Associate     | amzn1.adg.product.0dc13545-bb0c-4134-b6 | isps/entitlement/pack2.json
Update         | amzn1.adg.product.92fef67c-2da3-4799-a0 | isps/subscription/all_access_pack.json
Remove        | amzn1.adg.product.615016b3-eb06-4ed3-920| isps/entitlement/space_pack.json
Update        | amzn1.adg.product.80fe96ae-627d-43c8-69 | isps/consumable/five_hint_pack.json

低レベルコマンド

前述の高レベルコマンドに加えて、スキルプロジェクトとは別個にスキル内商品を照会および管理できるコマンドにアクセスできます。これらのコマンドは、デプロイステータスやスキルコンフィギュレーションファイルを変更しません。

ask apiコマンドの形式:

$ ask api <subcommand>

タスク サブコマンド
商品IDを使用してスキル内商品ファイルまたは概要を取得します get-isp
商品JSONファイルを使用して新しい商品を作成します create-isp
商品JSONファイルを指定して既存の商品を更新します update-isp
指定した商品を指定したスキルに関連付けます associate-isp
指定した商品と指定したスキルの関連付けを解除します disassociate-isp
指定した商品IDの商品を削除します delete-isp
指定されたベンダーIDに関連付けられた商品のリストを取得します list-isp-for-vendor
指定されたスキルIDに関連付けられた商品のリストを取得します list-isp-for-skill
指定された商品に関連付けられたスキルを取得します list-skills-for-isp
スキル内商品の購入をリセットします reset-isp-entitlement

get-isp

指定された商品IDの商品ファイルを取得します。

get-ispコマンドの形式:

$ ask api get-isp <-i|--isp-id <isp-id>> <-g|--stage <stage> [--summary] [-p|--profile <profile>] [--debug]

オプション:

--isp-id | -i
必須です。スキル内商品のIDです。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。
--stage | -g
必須です。スキル内商品のステージです。developmentまたはliveのいずれかです。
--summary
任意です。商品ではなく商品の概要を返します。
--profile | -p
任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。
--debug
任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


create-isp

指定されたJSON商品ファイルを使用して新しいスキル内商品を作成します。

create-ispコマンドの形式:

$ ask api create-isp <-f|--file <fileName>> [-p|--profile <profile>] [--debug]

オプション:

--file | -f

必須です。JSON形式の商品ファイルへのファイルパスです。絶対または相対パスで指定できます。

--profile | -p

任意です。商品作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


update-isp

指定された商品IDのスキル内商品を更新します。開発ステージのスキル内商品のみを更新できます。

update-ispコマンドの形式:

$ ask api update-isp <-i|--isp-id <isp-id>> <-f|--file <fileName>> [-g|--stage <stage>] [-p|--profile <profile>] [-e|--etag <ETag>] [--debug]

オプション:

--isp-id | -i
必須です。商品の商品IDが更新されます。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。
--file | -f
必須です。JSON形式の商品ファイルへのファイルパスです。絶対または相対パスで指定できます。
--stage | -g
任意です。スキル内商品のステージです。developmentにする必要があります。
--profile | -p
任意です。商品作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。
--etag | -e
任意です。ETagはリソースのバージョンに対して一意の識別子です。商品の更新でETagが指定されると、サーバーはバージョンが変更されない場合にのみリソースを更新します。
--debug
任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


associate-isp

スキル内商品をスキルに関連付けます。

associate-ispコマンドの形式:

$ ask api associate-isp <-i|--isp-id <isp-id>> <-s|--skill-id <skill-id>> [-p|--profile <profile>] [--debug]

オプション:

--isp-id | -i

必須です。スキルに関連付ける商品IDです。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。

--skill-id | -s

必須です。商品が関連付けられるスキルのIDです。IDはamzn1.ask.skill.12345678-1234-1234-123456789123の形式である必要があります。

--profile | -p

任意です。商品作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug
任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


disassociate-isp

スキル内商品とスキル間の関連付けを削除します。

スキルの公開バージョンで商品が購入可能になったことがない場合に限り、開発ステージのスキルから商品にこのコマンドを使用できます。

disassociate-ispコマンドの形式:

$ ask api disassociate-isp <-i|--isp-id <isp-id>> <-s|--skill-id <skill-id>> [-p|--profile <profile>] [--debug]

オプション:

--isp-id | -i

必須です。スキルへの関連付けを解除する商品IDです。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。

--skill-id | -s

必須です。商品の関連付けを解除するスキルのIDです。IDはamzn1.ask.skill.12345678-1234-1234-123456789123の形式である必要があります。

--profile | -p

任意です。商品作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


delete-isp

スキル内商品を削除します。

スキルの公開バージョンで商品が購入可能になったことがない場合に限り、開発ステージのスキルから商品にこのコマンドを使用できます。

delete-ispコマンドの形式:` $ ask api delete-isp <-i|--isp-id <isp-id>> [-p|--profile <profile>] [-g|--stage [stage]] [-e|--etag <ETag>] [--debug]

オプション:

--isp-id | -i

必須です。削除する商品IDです。IDはamzn1.adg.product.12345678-1234-1234-123456789123の形式である必要があります。

--profile | -p

任意です。スキル内商品を作成するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--stage | -g

任意です。スキル内商品のステージです。developmentにする必要があります。

--etag | -e

任意です。ETagはリソースのバージョンに対して一意の識別子です。商品の更新でETagが指定されると、サーバーはバージョンが変更されない場合にのみリソースを更新します。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


list-isp-for-vendor

指定されたベンダーIDに関連付けられた商品一覧表示します。

list-isp-for-vendorコマンドの形式:

$ ask api list-isp-for-vendor <--vendor-id <vendorId>> [-p|--profile <profile>] [-r|--reference-name <referenceName>] [-i|--isp-id-list <ispIdList>] [-t|--type <type>] [-g|--stage <stage>] [-u|--status <status>] [--isAssociatedWithSkill <isAssociatedWithSkill>] [--max-items <maxItems>] [--starting-token <startingToken>] [--debug]

オプション:

--vendor-id

必須です。スキル内商品が作成されるベンダーIDです。

--profile | -p

任意です。スキル内商品を作成するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--reference-name | -r

任意です。スキル内商品を参照名でフィルタリングします。

--type | -t

任意です。返された商品を型別にフィルタリングします。ENTITLEMENTまたはSUBSCRIPTIONのいずれかです。

--stage | -g

任意です。スキル内商品のステージです。developmentまたはliveのいずれかです。

--status | -u

任意です。返された商品をAddやUpdateなどのステータスでフィルタリングします。

--isAssociatedWithSkill| -k

任意です。スキル内商品がスキルに関連付けられているかどうかでスキル内商品をフィルタリングします。有効な値はASSOCIATED_WITH_SKILLまたはNOT_ASSOCIATED_WITH_SKILLのいずれかです。

--max-items <maxItems>

任意です。コマンドの出力で返されるアイテムの合計数です。該当するアイテムの合計数が指定された値より多い場合は、コマンドの出力でnextTokenが提供されます。ページ分割を再開するには、後続のコマンドのstarting-token引数でnextToken値を指定します。

--starting-token

任意です。ページ分割を開始するかどうかを指定するトークンです。切り分けられた前回の応答からのnext-tokenです。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


list-isp-for-skill

スキルに関連付けられたスキル内商品のリストを取得します。

list-isp-for-skillコマンドの形式:

$ ask api list-isp-for-skill <-s|--skill-id <skill-id> <-g|--stage <stage> [-p|--profile <profile>] [--debug]

オプション:

--skill-id | -s

必須です。スキル内商品を取得するスキルのIDです。IDはamzn1.ask.skill.12345678-1234-1234-123456789123の形式である必要があります。

--stage | -g

必須です。スキル内商品のステージです。developmentまたはliveのいずれかです。

--profile | -p

任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


list-skills-for-isp

スキル内商品に関連付けられたスキルのリストを取得します。

list-skills-for-ispコマンドの形式:

$ ask api list-skills-for-isp <-i|--isp-id <isp-id>> <-g|--stage <stage> [-p|--profile <profile>] [--debug]

オプション:

--isp-id | -i

必須です。スキル内商品のIDです。

--stage | -g

必須です。スキル内商品のステージです。

--profile | -p

任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る


reset-isp-entitlement

プロファイルで購入済みと表示されているスキル内商品(買い切り型、サブスクリプション型、消費型)をリセットします。この機能は、スキル内商品が開発ステージにある場合にテスト目的で使用します。スキルに関連付けられている開発者アカウントで商品を購入する場合、複数回商品を購入し、reset-isp-entitlement APIを使用して購入をリセットできます。開発者アカウントはこの購入に対して課金されません。

このコマンドにより、指定された商品が次のように更新されます。

  • entitledNOT_ENTITLEDにリセット
  • purchasablePURCHASABLEにリセット
  • activeEntitlementCountが0にリセット

reset-isp-entitlementコマンドの形式:

$ ask api reset-isp-entitlement <-i|--isp-id <isp-id>> <-g|--stage <stage>> [-p|--profile <profile>] [--debug]

オプション:

--isp-id | -i

必須です。スキル内商品のIDです。

--stage | -g

必須です。スキル内商品のステージです。developmentにする必要があります。

--profile | -p

任意です。スキル作成時に使用するプロファイルです。指定しない場合は、デフォルトのプロファイルが使用されます。

--debug

任意です。標準エラー出力にデバッグメッセージを追加します。

低レベルコマンドに戻る