CreateIntentVersion
Creates a new version of an intent based on the $LATEST
version of the
intent. If the $LATEST
version of this intent hasn't changed since you last
updated it, Amazon Lex doesn't create a new version. It returns the last version you
created.
注記
You can update only the $LATEST
version of the intent. You can't update
the numbered versions that you create with the CreateIntentVersion
operation.
When you create a version of an intent, Amazon Lex sets the version to 1. Subsequent versions increment by 1. For more information, see バージョニング.
This operation requires permissions to perform the lex:CreateIntentVersion
action.
Request Syntax
POST /intents/
name
/versions HTTP/1.1 Content-type: application/json { "checksum": "string
" }
URI Request Parameters
The request requires the following URI parameters.
- name
-
The name of the intent that you want to create a new version of. The name is case sensitive.
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
^([A-Za-z]_?)+$
Request Body
The request accepts the following data in JSON format.
- checksum
-
Checksum of the
$LATEST
version of the intent that should be used to create the new version. If you specify a checksum and the$LATEST
version of the intent has a different checksum, Amazon Lex returns aPreconditionFailedException
exception and doesn't publish a new version. If you don't specify a checksum, Amazon Lex publishes the$LATEST
version.Type: String
Required: No
Response Syntax
HTTP/1.1 201 Content-type: application/json { "checksum": "string", "conclusionStatement": { "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "confirmationPrompt": { "maxAttempts": number, "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "createdDate": number, "description": "string", "dialogCodeHook": { "messageVersion": "string", "uri": "string" }, "followUpPrompt": { "prompt": { "maxAttempts": number, "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "rejectionStatement": { "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" } }, "fulfillmentActivity": { "codeHook": { "messageVersion": "string", "uri": "string" }, "type": "string" }, "lastUpdatedDate": number, "name": "string", "parentIntentSignature": "string", "rejectionStatement": { "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" }, "sampleUtterances": [ "string" ], "slots": [ { "description": "string", "name": "string", "priority": number, "responseCard": "string", "sampleUtterances": [ "string" ], "slotConstraint": "string", "slotType": "string", "slotTypeVersion": "string", "valueElicitationPrompt": { "maxAttempts": number, "messages": [ { "content": "string", "contentType": "string", "groupNumber": number } ], "responseCard": "string" } } ], "version": "string" }
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
- checksum
-
Checksum of the intent version created.
Type: String
- conclusionStatement
-
After the Lambda function specified in the
fulfillmentActivity
field fulfills the intent, Amazon Lex conveys this statement to the user.Type: Statement object
- confirmationPrompt
-
If defined, the prompt that Amazon Lex uses to confirm the user's intent before fulfilling it.
Type: Prompt object
- createdDate
-
The date that the intent was created.
Type: Timestamp
- description
-
A description of the intent.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 200.
- dialogCodeHook
-
If defined, Amazon Lex invokes this Lambda function for each user input.
Type: CodeHook object
- followUpPrompt
-
If defined, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled.
Type: FollowUpPrompt object
- fulfillmentActivity
-
Describes how the intent is fulfilled.
Type: FulfillmentActivity object
- lastUpdatedDate
-
The date that the intent was updated.
Type: Timestamp
- name
-
The name of the intent.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
^([A-Za-z]_?)+$
- parentIntentSignature
-
A unique identifier for a built-in intent.
Type: String
- rejectionStatement
-
If the user answers "no" to the question defined in
confirmationPrompt
, Amazon Lex responds with this statement to acknowledge that the intent was canceled.Type: Statement object
- sampleUtterances
-
An array of sample utterances configured for the intent.
Type: Array of strings
Array Members: Minimum number of 0 items. Maximum number of 1500 items.
Length Constraints: Minimum length of 1. Maximum length of 200.
- slots
-
An array of slot types that defines the information required to fulfill the intent.
Type: Array of Slot objects
Array Members: Minimum number of 0 items. Maximum number of 100 items.
- version
-
The version number assigned to the new version of the intent.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
\$LATEST|[0-9]+
Errors
- BadRequestException
-
The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and try again.
HTTP Status Code: 400
- ConflictException
-
There was a conflict processing the request. Try your request again.
HTTP Status Code: 409
- InternalFailureException
-
An internal Amazon Lex error occurred. Try your request again.
HTTP Status Code: 500
- LimitExceededException
-
The request exceeded a limit. Try your request again.
HTTP Status Code: 429
- NotFoundException
-
The resource specified in the request was not found. Check the resource and try again.
HTTP Status Code: 404
- PreconditionFailedException
-
The checksum of the resource that you are trying to change does not match the checksum in the request. Check the resource's checksum and try again.
HTTP Status Code: 412
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: