スキルのベータテストAPI
スキルのベータテストAPIは非同期のAPIです。スキルの本番リリース前に、限定的なユーザーを対象にスキルのベータテストを設定するために使用できます。また、このAPIは、既存のスキルに加えた変更をテストするためにも使用できます。その場合、現在公開中のスキルを一般公開したままテストを行えます。スキルをテストしてフィードバックを提供するよう、友達、家族、ソーシャルネットワークの連絡先を始め、メールアドレスを知っている他のユーザーを招待できます。1つのテストにつき最大500人に招待を送信できます。テスターの追加と削除やテストの終了はいつでも行えます。テストサイクル中は常にスキルのフィードバックを得ることができ、本番リリースの前にスキルを修正できるので、コストを削減できます。スキルのベータテストは、優れたスキルを作成するのに役立ちます。
このAPIのエンドポイントは、https://api.amazonalexa.comです。すべてのAPIリクエストにはAuthorization
ヘッダーが必要であり、その値はLogin with Amazonから取得したアクセストークンでなければなりません。
- ベータテストを作成する
- ベータテストを取得する
- ベータテストを更新する
- ベータテストを開始する
- ベータテストを終了する
- ベータテストのテスターリストを取得する
- ベータテストにテスターを追加する
- ベータテストからテスターを削除する
- テスターにリマインダーを送信する
- テスターにフィードバックをリクエストする
- 結果のページ分割とフィルタリング
APIには、ベータテストの設定と管理に関連するものと、ベータテスターの管理に関連するものがあります。
ベータテストを作成する
ベータテストを作成します。
リクエスト
POST /skills/{skillId}/betaTest
リクエスト本文
feedbackEmail
は、ベータテスターがフィードバックを送信できる宛先のEメールアドレスです。
{
"feedbackEmail": "string"
}
応答
201 Successです。「Location」ヘッダーのリソースを追跡するURLが戻されます。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
409 | ターゲットリソースの現在の状態との競合が原因でリクエストを完了できませんでした。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストを取得する
指定したスキルIDのベータテストに関する詳細を取得します。
リクエスト
GET /skills/{skillId}/betaTest
応答
200 Successです。
以下のように、ベータテストに関する情報を含むベータテストマニフェストが返されます。
{
"expiryDate": "2018-09-26T07:14:13.378Z",
"status": "IN_DRAFT",
"feedbackEmail": "string",
"invitationUrl": "string",
"invitesRemaining": 0
}
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストを更新する
ベータテストの詳細を更新します。現時点では、フィードバックEメールのみを更新できます。
リクエスト
PUT /skills/{skillId}/betaTest
リクエスト本文
feedbackEmail
の新しい値を含みます。ベータテスターがフィードバックを送信できる宛先のEメールアドレスです。
{
"feedbackEmail": "string"
}
応答
204 Successです。コンテンツはありません。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストを開始する
スキルIDを指定してベータテストを開始します。テスト期間のカウントが開始されます。ベータテストを継続できる期間は90日間です。ただし、90日間を過ぎたら、新規にテストを作成できます。
リクエスト
POST /skills/{skillId}/betaTest/start
応答
202 Acceptです。「Location」ヘッダーのリソースを追跡するURLが戻されます。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
409 | ターゲットリソースの現在の状態との競合が原因でリクエストを完了できませんでした。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストを終了する
スキルIDを指定してベータテストを終了します。デフォルトでは、90日を経過するとベータテストは終了します。このAPIを使うと、それより前に終了できます。
リクエスト
POST /skills/{skillId}/betaTest/end
応答
202 Acceptです。「Location」ヘッダーのリソースを追跡するURLが戻されます。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
409 | ターゲットリソースの現在の状態との競合が原因でリクエストを完了できませんでした。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストのテスターリストを取得する
特定のベータテストに参加しているテスターのリストを取得します。関連トピック: 結果のページ分割とフィルタリング
リクエスト
GET /skills/{skillId}/betaTest/testers
応答
200 Successです。
以下のように、テスターのリストが戻されます。この場合、1人のテスターのみが表示されていますが、他のテスターも配列に含まれる可能性があります。ベータテストでは、最大500人までテスターを含めることができます。
{
"testers": [
{
"emailId": "string",
"associationDate": "2018-09-26T07:32:37.589Z",
"isReminderAllowed": true,
"invitationStatus": "ACCEPTED"
}
],
"isTruncated": true,
"nextToken": "string"
}
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストにテスターを追加する
既存のベータテストがある場合、500人の制限を超えない範囲でテスターを追加できます。
リクエスト
POST /skills/{skillId}/betaTest/testers/add
リクエスト本文
emailId
値の配列を含みます。それぞれの値にはテスターのEメールアドレスが入ります。
{
"testers": [
{
"emailId": "string"
}
]
}
応答
204 Successです。コンテンツはありません。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
ベータテストからテスターを削除する
テスターを既存のベータテストから削除します。
リクエスト
POST /skills/{skillId}/betaTest/testers/remove
リクエスト本文
emailId
値の配列を含みます。それぞれの値にはテスターのEメールアドレスが入ります。
{
"testers": [
{
"emailId": "string"
}
]
}
応答
204 Successです。コンテンツはありません。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
テスターにリマインダーを送信する
指定したAlexaスキルについて、ベータテストに参加しているテスターにリマインダーを送信します。システムは、各テスターに招待のEメールを送信し、承諾されると参加資格を追加します。
リクエスト
POST /skills/{skillId}/betaTest/testers/sendReminder
リクエスト本文
{
"testers": [
{
"emailId": "string"
}
]
}
応答
204 Successです。コンテンツはありません。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
409 | ターゲットリソースの現在の状態との競合が原因でリクエストを完了できませんでした。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
テスターにフィードバックをリクエストする
指定したAlexaスキルについて、ベータテストに参加しているテスターにフィードバックをリクエストします。システムがテスターに通知Eメールを送信し、これらのEメールでフィードバックをリクエストします。
リクエスト
POST /skills/{skillId}/betaTest/testers/requestFeedback
リクエスト本文
{
"testers": [
{
"emailId": "string"
}
]
}
応答
204 Successです。コンテンツはありません。
エラー
コード | 説明 |
---|---|
400 | 不正なリクエストです。 |
401 | 認可トークンが無効または期限切れか、リソースに対するアクセス権限がありません。 |
404 | リクエストされたリソースが見つかりません。 |
409 | ターゲットリソースの現在の状態との競合が原因でリクエストを完了できませんでした。 |
429 | 許可されているリクエスト制限を超えています。制限の条件には、APIごと、ClientIdごと、CustomerIdごとのリクエストの合計数があります。 |
500 | 内部サーバーエラーです。 |
結果のページ分割とフィルタリング
リストを戻すAPI呼び出しについては、オプションでmaxResults
を指定して1回で表示する結果の数を制御できます。また、nextToken
を指定して、後続のAPI呼び出しで次に表示される結果のセットを取得することもできます。このサンプルリクエストでは読みやすくするために改行を入れていますが、実際には改行を入れずにつなげてください。リストを戻す一部のAPI呼び出しでは、フィルタリングを行う他のパラメーターも使用できます。
GET /v1/skills/AAA-xxxx-yyyy/betaTest/testers?
nextToken=VWB111111111
&maxResults=5
パラメーター | 説明 |
---|---|
nextToken | 文字列です。後続のAPI呼び出しでnextToken 値を使い、maxResults 件の結果が表示された後の次の値を取得できます。このトークンの有効期限は24時間です。
|
maxResults | 整数です。1回のAPI呼び出しで表示する結果の最大数です。デフォルトは100で、1~500までの範囲で指定できます。`nextToken`値を使って、後続のAPI呼び出しで残りの結果を取得できます。 |