あなたのAlexaコンソール
?
サポート

スキル操作(スキル管理API)、v0

スキル操作(スキル管理API)、v0

このドキュメントでは、スキルリソースに関連するすべてのAPI操作について説明します。すべてのリクエストにはAuthorizationヘッダーが必要であり、その値はLogin with Amazonから取得したアクセストークンでなければなりません。

ASK CLIコマンドリファレンスもスキル管理APIを使用しますが、コマンドラインインターフェースからのみ使用します。

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

スキル情報の取得

指定したスキルのスキルマニフェストを取得します。

リクエスト

GET /v0/skills/{skillId}
フィールド説明パラメーターの型
skillId一意のスキルIDです。パス

応答

HTTP/1.1 200 OK

本文

skillManifestオブジェクト(スキルマニフェストを参照してください)

スキルの作成

指定したvendorIdのスキル作成リクエストを送信します。非同期操作のため、サーバーがリクエストを処理するとエラーが発生する場合があります。このリクエストのステータスを追跡するには、Locationヘッダーを使用します。

リクエスト

POST /v0/skills

本文

本文にはvendorIdと、スキルマニフェストに記述されているmanifestオブジェクトが含まれます。以下に例を示します。

{
    "vendorId": "MT25O3ZVSAXZOAX",
    "skillManifest": {
        "publishingInformation": {
            "locales": {
                "en-US": {
                    "summary": "This is a sample Alexa skill.",
                    "examplePhrases": [
                        "Alexa, open sample skill.",
                        "Alexa, turn on kitchen lights.",
                        "Alexa, blink kitchen lights."
                    ],
                    "keywords": [
                        "Smart Home",
                        "Lights",
                        "Smart Devices"
                    ],
                    "name": "Sample custom skill name.",
                    "description": "This skill has basic and advanced smart devices control features."
                }
            },
            "isAvailableWorldwide": false,
            "testingInstructions": "1) Say 'Alexa, discover my devices' 2) Say 'Alexa, turn on sample lights'",
            "category": "SMART_HOME",
            "distributionCountries": [
                "US",
                "GB"
            ]
        },
        "apis": {
            "custom": {
                "endpoint": {
                    "uri": "arn:aws:lambda:us-east-1:032174894474:function:ask-custom-custome_cert"
                }
            }
        },
        "manifestVersion": "1.0",
        "privacyAndCompliance": {
            "allowsPurchases": false,
            "locales": {
                "en-US": {
                    "termsOfUseUrl": "http://www.termsofuse.sampleskill.com",
                    "privacyPolicyUrl": "http://www.myprivacypolicy.sampleskill.com"
                }
            },
            "isExportCompliant": true,
            "isChildDirected": false,
            "usesPersonalInfo": false
        }
    }
}

応答

Content-Type: application/json
HTTP/1.1 202 Accepted

ヘッダー

Location: <Returns a relative URL to track the status>

本文

{
  "skillId": "{skillId}"
}
フィールド説明パラメーターの型
skillId新たに作成したスキルの一意のIDです。応答ヘッダー
応答本文の要素
HTTP/1.1 400

クライアントエラーにより、サーバーがリクエストを処理できません。

HTTP/1.1 401 Unauthorized
HTTP/1.1 500 Internal Server Error

既存スキルの更新

指定されたスキルIDに関連付けられたスキルマニフェストを更新します。

リクエスト

PUT /v0/skills/{skillId}

本文

skillManifest オブジェクト(スキルマニフェストを参照してください)

パラメーターの説明

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

応答

HTTP/1.1 202 Accepted

ヘッダー

Location: <Returns a relative URL to track the status>
HTTP/1.1 400 Server cannot process the request due to a client error.
HTTP/1.1 401 Unauthorized
HTTP/1.1 404 Not Found
HTTP/1.1 500 Internal Server Error

スキルのステータスの取得

リクエスト

GET /v0/skills/{skillId}/status

パラメーターの説明

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

応答

HTTP/1.1 200 OK

モデルが正常にビルドされたかどうかの応答の本文です。スキルのステータスを確認します。

{
    "manifest": {
        "lastModified": {
            "time": "2017-09-05T05:36:41.530Z",
            "status": "SUCCESSFUL"
        }
    }
}

status値は、FAILEDIN_PROGRESSのいずれかになります。

HTTP/1.1 400 Server cannot process the request due to a client error.
HTTP/1.1 401 Unauthorized
HTTP/1.1 404 Not Found
HTTP/1.1 500 Internal Server Error

スキルリストの表示

指定したvendorId(必須パラメーター)のスキルのリストを表示します。オプションのmaxResultsnextTokenの値により、結果のページ分割を指定します。

リクエスト

GET /v0/skills?vendorId={vendorId}&maxResults={num}&nextToken={token}

パラメーターの説明

フィールド説明パラメーターの型
vendorId一意のベンダーIDです。文字列
maxResultsページごとに表示するスキルの最大数です。整数
nextToken暗号化されたトークンの値です。文字列

応答

HTTP/1.1 200 OK

応答本文でスキルのリストを表示します。

{
    "_links": {
            "next": {
                "href": "/v0/skills?vendorId=MA2384AJJ2NAJ&nextToken=eyJkIjoiVGFmRStsVy9YL1BWczZVaGZTMmt0WTFYajdOK3g1Z0xIS3B1aUxRUHpkQ0xtTmtxVkR6cDIxYk10cUpTTlRUU2phS3ZFK2VGclVlQmQ2NDBlK3ltUDdrRyt1UmVtazBhdmFUTlN5RVd5WXVLTjhhTzhyTERJd1p5VU9ZWXFFb1k5MnF1M3RlaUMrOStyQVY1Z1B0MVhNYkh3L0VycWZvL2k0VzhBNGFSWEwyaVRRVTl3NEJCQ0RlV1lrZ2FXMmlobGpMT2FiYitlNk1IVkVrNHBIak1PZz09IiwiaXYiOiJLN09peDd3TE5MUmxKWVFnYVEwU0R3PT0iLCJ2IjoxfQ=="
            },
            "self": {
                "href": "/v0/skills?vendorId=MA2384AJJ2NAJ"
            }
    },
    "isTruncated": true,
    "nextToken": "eyJkIjoiVGFmRStsVy9YL1BWczZVaGZTMmt0WTFYajdOK3g1Z0xIS3B1aUxRUHpkQ0xtTmtxVkR6cDIxYk10cUpTTlRUU2phS3ZFK2VGclVlQmQ2NDBlK3ltUDdrRyt1UmVtazBhdmFUTlN5RVd5WXVLTjhhTzhyTERJd1p5VU9ZWXFFb1k5MnF1M3RlaUMrOStyQVY1Z1B0MVhNYkh3L0VycWZvL2k0VzhBNGFSWEwyaVRRVTl3NEJCQ0RlV1lrZ2FXMmlobGpMT2FiYitlNk1IVkVrNHBIak1PZz09IiwiaXYiOiJLN09peDd3TE5MUmxKWVFnYVEwU0R3PT0iLCJ2IjoxfQ==",
    "skills": [
        {
            "lastUpdated": "2017-07-11T19:29:57.120Z",
            "nameByLocale": {
                "en-US": "example"
            },
            "stage": "development",
            "_links": {
                "self": {
                    "href": "/v0/skills/amzn1.ask.skill.6acdbdf8-8420-440e-823e-aaaaaaaabbbb"
                }
            },
            "skillId": "amzn1.ask.skill.6acdbdf8-8420-440e-823e-aaaaaaaabbbb"
        },
        {
            "lastUpdated": "2017-07-05T21:11:16.947Z",
            "nameByLocale": {
                "en-US": "example1"
            },
            "stage": "live",
            "_links": {
                "self": {
                    "href": "/v0/skills/amzn1.ask.skill.81ded88f-0d0a-4612-aaaaaaaabbbb"
                }
            },
            "skillId": "amzn1.ask.skill.81ded88f-0d0a-4612-aaaaaaaabbbb"
        }
    ]
}
HTTP/1.1 400 Server cannot process the request due to a client error.
HTTP/1.1 401 Unauthorized
HTTP/1.1 500 Internal Server Error

スキルの削除

スキルを削除します。

リクエスト

DELETE /v0/skills/{skillId}/

パラメーターの説明

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

応答

HTTP/1.1 204 NoContent
HTTP/1.1 400 Bad Request

本文:

{
    "message": "Cannot delete the skill because it has a cert/live stage. Please follow our documentation for next steps."
    "type": "BadRequest"
}
HTTP/1.1 500 Internal Service Error
{
    "message": // error message (String)
    "type": "InternalError"
}