Skill Rollback

You use this API revert your skill to a previous live version without having to resubmit the skill for manual recertification. This process helps you move between development cycles. For example, you might choose to rollback a skill if your new skill version introduced a bug or any other unintended behaviors.

For more details about how Skill Rollback operates, see Rollback a Skill. You can Rollback a skill with the developer console or the Alexa Skills Kit (ASK) Command Line Interface (CLI).

Submit a target skill for rollback

Submit a target skill version to rollback to. Only one rollback or publish operation can occur at a time for a given skillId. Your skill must meet the rollback eligibility requirements.

Request

The endpoint of the API is https://api.amazonalexa.com. Each API request must have an Authorization header whose value is the access token retrieved from Login with Amazon.

POST /v1/skills/{skillId}/rollbacks

Request parameters

Field Description Parameter Type Required?
skillId The unique identifier of the skill. Path Yes

Request body structure

The following example shows the structure of the response body.

{
  targetVersion : "{{STRING}}"  
}

Request parameters

Field Description Parameter Type Required?
targetVersion The targeted skill version you are rolling back to. String Yes

Get rollback status of a skill

Get the rollback status of a skill given an associated rollbackRequestId.

Request

The endpoint of the API is https://api.amazonalexa.com. Each API request must have an Authorization header whose value is the access token retrieved from Login with Amazon.

GET /v1/skills/{skillId}/rollbacks/{rollbackRequestId}

Request parameters

Field Description Parameter Type Required?
skillId The unique identifier of the skill. Object Yes
rollbackRequestId The unique identifier for a rollback workflow. String Yes

Response

201 Created
{
  "rollbackRequestId": "93990bd2-afc9-48a8-94d6-862ce5db5ca5"
}

Response body structure

The following example illustrates the structure of the response body.

{
  "id": "727cb65c-ef40-4c02-873f-262f4b60a0bf",
  "status": "IN_PROGRESS",
  "submissionTime": "Sat Jun 27 01:24:01 UTC 2020",
  "targetVersion": "1"
  "errors" : [
         {
             "code": ""
             "validationDetails" : {}
             "message": ""
         }
   ]   
}

Response fields

Field Description Parameter Type
targetVersion The targeted skill version you are rolling back to. String
submissionTime The date and time for a submitted version. String
id The unique identifier of the rollback request. String
status Status of a rollback request. String
errors An object containing information about rollback errors. List
errors.code List of standardized error codes. List
errors.validationDetails Details about error validation. List
errors.message Details about the error. String

Error codes

Error Code Description
2XX Success. The skill rollback operation started.
4XX Validation error. An error occurred before the rollback operation started.
5XX System error. An error occurred before the rollback operation started.
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 409 Conflict with the target resource
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error
HTTP/1.1 503 Service Unavailable