Alexa-hostedスキルAPI
Alexa-hostedスキルを使うと、AlexaがホストするAWSリソースを使ってスキルをすばやく強化することができます。またAlexa Skills Kit開発者コンソールのコードエディターを組み合わせて使うことで、AWS Lambdaのコードを編集したり変更をデプロイしたりできます。Alexa-hostedスキルの編集やデプロイに、Alexa Skills Kitコマンドラインインターフェース(ASK CLI)を使うこともできます。
Alexa-hostedスキルの詳細については、Alexa-hostedスキルを使用してスキルをエンドツーエンドで作成するを参照してください。
このAPIを使うと、Alexa-hostedスキルを含むリポジトリのURLを取得して、認証情報(ユーザー名とパスワード)を生成できます。この情報を使って、リポジトリにアクセスできます。リポジトリに直接アクセスするには、任意のGitクライアントを使用するか、コマンドラインからGitを使用してください。
Alexa-hostedスキルに関するメタデータを取得する
このAPIを使って、Alexa-hostedスキルが含まれるリポジトリのURLを含む、Alexa-hostedスキルに関する情報を取得します。リポジトリのURLを取得したら、リポジトリの認証情報を生成して、任意のGitクライアントを使用して直接リポジトリにアクセスするか、コマンドラインからGitを使用してアクセスします。
リクエスト
このAPIのエンドポイントは、https://api.amazonalexa.com
です。すべてのAPIリクエストにはAuthorization
ヘッダーが必要であり、その値にはLogin with Amazonから取得したアクセストークンが入ります。
HTTPメソッドとURIパス
GET /v1/skills/{skillId}/alexaHosted
リクエストのフィールド
フィールド | 説明 | 型 |
---|---|---|
skillId |
必須です。URIパスの一部です。Alexa-hostedスキルのIDです。 | 文字列 |
応答
リクエストが成功すると、HTTP 200 OK
が返されます。
応答本文の構造
{
"alexaHosted": {
"repository": {
"url": "string",
"type": "string"
},
"runtime": "string"
}
}
応答本文のフィールド
フィールド | 説明 | 型 |
---|---|---|
alexaHosted.repository.url |
Alexa-hostedスキルを含むリポジトリのURLです。このURLを使用して、リポジトリの認証情報を生成して、任意のGitクライアントを使用して直接リポジトリにアクセスするか、コマンドラインからGitを使用してアクセスします。 | 文字列 |
alexaHosted.repository.type |
リポジトリの種類です。有効な値はGIT のみです。 |
文字列 |
alexaHosted.runtime |
Alexa-hostedスキルのランタイムです。有効な値はnodejs8.10 のみです。 |
文字列 |
エラー応答
リクエストが失敗すると、以下のいずれかのエラーが返されます。
HTTP 400 Bad Request
HTTP 401 Unauthorized
HTTP 404 Not Found
HTTP 429 Too Many Requests
HTTP 500 Internal Server Error
HTTP 503 Service Unavailable
Alexa-hostedスキルのリポジトリ認証情報を生成する
このAPIを使うと、指定したAlexa-hostedスキルを含むリポジトリにアクセスするために使用できる認証情報(ユーザー名とパスワード)を生成できます。リポジトリに直接アクセスするには、任意のGitクライアントを使用するか、コマンドラインからGitを使用してください。
リクエスト
このAPIのエンドポイントは、https://api.amazonalexa.com
です。すべてのAPIリクエストにはAuthorization
ヘッダーが必要であり、その値にはLogin with Amazonから取得したアクセストークンが入ります。
HTTPメソッドとURIパス
POST /v1/skills/{skillId}/alexaHosted/repository/credentials/generate
リクエスト本文の構造
{
"repository": {
"url": "string",
"type": "string"
}
}
リクエストのフィールド
フィールド | 説明 | 型 |
---|---|---|
skillId |
必須です。URIパスの一部です。Alexa-hostedスキルのIDです。 | 文字列 |
repository.url |
必須です。リクエスト本文の一部です。Alexa-hostedスキルを含むリポジトリのURLです。この値を取得するには、まずAlexa-hostedスキルに関するメタデータを取得します。 | 文字列 |
repository.type |
必須です。リクエスト本文の一部です。リポジトリの種類です。有効な値はGIT のみです。 |
文字列 |
応答
リクエストが成功すると、HTTP 200 OK
が返されます。
応答本文の構造
{
"repositoryCredentials": {
"username": "string",
"password": "string",
"expiresAt": "2019-04-16T17:44:36.231Z"
}
}
応答本文のフィールド
フィールド | 説明 | 型 |
---|---|---|
username |
パスワードと組み合わせることでAlexa-hostedスキルのリポジトリにアクセスできるユーザー名です。 | 文字列 |
password |
ユーザー名と組み合わせることでAlexa-hostedスキルのリポジトリにアクセスできる、ユーザー名に対応するパスワードです。 | 文字列 |
expiresAt |
認証情報(ユーザー名とパスワード)の有効期限が切れる日付と時刻です。有効期限が切れたら、もう一度このAPIを呼び出して新しい認証情報を生成する必要があります。 | 文字列 |
エラー応答
リクエストが失敗すると、以下のいずれかのエラーが返されます。
HTTP 400 Bad Request
HTTP 401 Unauthorized
HTTP 404 Not Found
HTTP 429 Too Many Requests
HTTP 500 Internal Server Error
HTTP 503 Service Unavailable