スキルの認定と公開



スキルの認定と公開

 

Alexaスキルの認定および公開を管理するには、スキル管理API(SMAPI)の次のAPI操作を使用します。

SMAPIのエンドポイントは、https://api.amazonalexa.comです。すべてのAPIリクエストにはAuthorizationヘッダーが必要であり、その値にはLogin with Amazonから取得したアクセストークンが入ります。

スキルを認定および公開のために申請する

スキルを認定してもらって公開できるよう申請します。

リクエスト

POST /v1/skills/{skillId}/submit

パラメーター

フィールド 説明 パラメーターの型 必須
skillId 一意のスキルIDです。 パス

応答

HTTP/1.1 202 Accepted

ヘッダー

Location: "<申請ステータスを追跡するための相対パス>"

例外

HTTP/1.1 401 Unauthorized
HTTP/1.1 403 Forbidden
HTTP/1.1 404 Not Found
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error
HTTP/1.1 503 Service Unavailable

スキルの認定審査のリストを取得する

スキルのすべての完了済み、または進行中の認定審査のリストを取得します。

リクエスト

GET /v1/skills/{skillId}/certifications

パラメーター

フィールド 説明 パラメーターの型 必須
skillId 一意のスキルIDです。 パス
nextToken 結果が省略されている応答を受け取った後、認定審査の詳細を取得するには、このパラメーターを使用します。受け取った省略された応答からnextTokenの値に設定します。 Query
maxResults 応答で返す項目の最大数です。このパラメーターを含めない場合は、デフォルトの最大値は50です。このパラメーターを含める場合は、応答には指定した値よりも小さい数の項目しかない場合もありますが、これを超える数の項目は含まれません。50を超える値を指定することはできません。 Query

応答

HTTP/1.1 200 OK

応答本文の構造(JSON)

{
  "_links": {
    "self": {
      "href": "string"
    },
    "next": {
      "href": "string"
    }
  },
  "isTruncated": false,
  "nextToken": "string",
  "totalCount": 1,
  "items": [
    {
      "id": "string",
      "status": "IN_PROGRESS",
      "skillSubmissionTimestamp": "2019-01-06T05:26:02.430Z",
      "reviewTrackingInfo": {
        "estimatedCompletionTimestamp": "2019-01-06T05:26:02.430Z",
        "actualCompletionTimestamp": "2019-01-06T05:26:02.430Z",
        "lastUpdated": "2019-01-06T05:26:02.430Z"
      }
    }
  ]
}

応答本文の要素

フィールド 説明 パラメーターの型
_links APIナビゲーションのリンクです。このフィールドの構造は、JSON Hypertext Application Languageの仕様(英語)で定義されています。 _links object (spec)
isTruncated 応答で返された項目よりも多くの項目がリストに存在するかどうかを示すフラグです。この値がtrueであれば、この応答のリストは省略されます。さらに多くの項目を取得するには、nextTokenフィールドの値を、次のリクエストのnextTokenパラメーターに渡します。 文字列
nextToken isTruncatedがtrueの場合、この要素は存在し、次のリクエストのnextTokenパラメーターに使用する値が含まれます。 文字列
totalCount リクエストを満たす項目の総数です。この数字は、この応答で返される項目の数よりも多い場合があります。 整数
itemsオブジェクト
フィールド 説明 パラメーターの型
id 認定審査項目の一意のIDです。 文字列
status 認定審査のステータスです。ステータスは、IN_PROGRESSSUCCEEDEDFAILEDCANCELLEDのいずれかになります。 文字列
skillSubmissionTimestamp スキルが認定に申請された日時です。 日時とタイムスタンプはISO 8601形式です。
reviewTrackingInfoオブジェクト
フィールド 説明 パラメーターの型
estimatedCompletionTimestamp 認定審査が完了する予定の日時です。 日時とタイムスタンプはISO 8601形式です。
actualCompletionTimestamp 認定審査が完了した日時です。 日時とタイムスタンプはISO 8601形式です。
lastUpdated reviewTrackingInfoの値を直近で更新した日時です。 日時とタイムスタンプはISO 8601形式です。

例外

HTTP/1.1 400 Bad Request
HTTP/1.1 401 Unauthorized
HTTP/1.1 404 Not Found
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error

特定の認定審査についての詳細を取得する

スキルの特定の認定審査についての詳細を取得します。

進行中の認定審査に対するリクエストは、常に応答を返しますが、以前の認定に対するリクエストの場合はその限りではありません。以前の認定についての詳細が取得できない場合は、ユーザーはHTTP 404 Not Found応答を受け取ります。

リクエスト

GET /v1/skills/{skillId}/certifications/{certificationId}

リクエストヘッダー

ローカライズされた応答を受け取る場合は、オプションでAccept-Languageヘッダーを送信することができます。ヘッダーの値をen-USまたはja-JPに設定できます。

パラメーター

フィールド 説明 パラメーターの型 必須
skillId 一意のスキルIDです。 パス
certificationId 取得する認定審査項目の一意のIDです。直近の認定審査項目を取得するには、~mostRecentの値を使用します。直近でない認定審査項目を取得するには、スキルの認定審査のリストを取得して、取得したい認定審査項目のIDを使用します。 パス

応答

HTTP/1.1 200 OK

応答本文の構造(JSON)

{
  "id": "string",
  "status": "IN_PROGRESS",
  "skillSubmissionTimestamp": "2019-01-06T21:54:09.730Z",
  "reviewTrackingInfo": {
    "estimatedCompletionTimestamp": "2019-01-06T21:54:09.730Z",
    "actualCompletionTimestamp": "2019-01-06T21:54:09.730Z",
    "lastUpdated": "2019-01-06T21:54:09.730Z",
    "estimationUpdates": [
      {
        "originalEstimatedCompletionTimestamp": "2019-01-06T21:54:09.730Z",
        "revisedEstimatedCompletionTimestamp": "2019-01-06T21:54:09.730Z",
        "reason": "string"
      }
    ]
  },
  "result": {
    "distributionInfo": {
      "publishedCountries": [
        "string"
      ],
      "publicationFailures": [
        {
          "reason": "string",
          "countries": [
            "string"
          ]
        }
      ]
    }
  }
}

応答本文の要素

フィールド 説明 パラメーターの型
id 認定審査項目の一意のIDです。 文字列
status 認定審査のステータスです。ステータスは、IN_PROGRESSSUCCEEDEDFAILEDCANCELLEDのいずれかになります。 文字列
skillSubmissionTimestamp スキルが認定に申請された日時です。 日時とタイムスタンプはISO 8601形式です。
reviewTrackingInfoオブジェクト
フィールド 説明 パラメーターの型
estimatedCompletionTimestamp 認定審査が完了する予定の日時です。 日時とタイムスタンプはISO 8601形式です。
actualCompletionTimestamp 認定審査が完了した日時です。 日時とタイムスタンプはISO 8601形式です。
lastUpdated reviewTrackingInfoの値を直近で更新した日時です。 日時とタイムスタンプはISO 8601形式です。
estimationUpdates object
フィールド 説明 パラメーターの型
originalEstimatedCompletionTimestamp 当初の認定審査が完了する予定の日時です。 日時とタイムスタンプはISO 8601形式です。
revisedEstimatedCompletionTimestamp 更新後の認定審査が完了する予定の日時です。 日時とタイムスタンプはISO 8601形式です。
reason 当初の予定が更新された理由です。 文字列
distributionInfoオブジェクト
フィールド 説明 パラメーターの型
publishedCountries 認定審査が完了すると、スキルが公開された国の一覧を含みます。ISO 3166-1 alpha-2に従って、各国は2文字の国コードで指定されます。 文字列のリスト
publicationFailures 認定審査が完了すると、スキルが公開さていない国と公開されなかった理由の一覧を含みます。ISO 3166-1 alpha-2に従って、各国は2文字の国コードで指定されます。 reasoncountriesの値(文字列)の一覧

例外

HTTP/1.1 401 Unauthorized
HTTP/1.1 404 Not Found
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error

スキルの認定申請を取り消す

認定プロセス中のスキルを取り消します。

リクエスト

POST /v1/skills/{skillId}/withdraw

本文

{
  "reason" : "OTHER",
  "message" : "TEST SKILL"
}

パラメーター

フィールド 説明 パラメーターの型 必須
skillId 一意のスキルIDです。 パス
reason 取り消しの理由を示す列挙型は次のいずれかになります: TEST_SKILLMORE_FEATURESDISCOVERED_ISSUENOT_RECEIVED_CERTIFICATION_FEEDBACKNOT_INTEND_TO_PUBLISHOTHER リクエスト本文の要素
message reasonにOTHERを指定した場合、スキルを取り消す理由を示す文字列です。 リクエスト本文の要素 OTHERの場合は◯。それ以外は×。

応答

HTTP/1.1 204 No Content

例外

HTTP/1.1 400 Bad Request
HTTP/1.1 401 Unauthorized
HTTP/1.1 403 Forbidden
HTTP/1.1 404 Not Found
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error
HTTP/1.1 503 Service Unavailable

公開中のスキルを非表示、または停止する

公開したスキルを非公開(非表示または停止)にするには、この操作を行います。

スキルを非公開にする場合、スキルを非表示、または停止にするかどうかを選択します。

操作が成功したことを示す応答を受け取った後、非公開が完了するまでに数日かかる場合があります。

非公開にした後で再公開するには、認定に再申請します

リクエスト

POST /v1/skills/{skillId}/unpublish

本文

{
  "type": "string",
  "reason": "string"
}

パラメーター

フィールド 説明 パラメーターの型 必須
skillId 非公開にするスキルの一意のIDです。 パス
type スキルを非表示にするか、停止するかを指定します。有効な値はHIDEおよびREMOVEです。詳細については、スキルを非表示または停止するを参照してください。 リクエスト本文の要素
reason スキルを非公開にする理由です。以下のいずれかの理由を選択します:
  • 呼び出し名の変更
  • スキルの開発を中止するため
  • 誤ってスキルを公開したため
  • 技術的な問題
  • その他
リクエスト本文の要素

応答

HTTP/1.1 202 Accepted

本文

{
  "message": "string"
}

パラメーター

フィールド 説明 パラメーターの型
message 応答で返されたメッセージです。 応答本文の要素

例外

HTTP/1.1 400 Bad Request
HTTP/1.1 401 Unauthorized
HTTP/1.1 403 Forbidden
HTTP/1.1 404 Not Found
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error
HTTP/1.1 503 Service Unavailable