API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see

We welcome your feedback on this new version of the documentation. Send your comments to


import ""

type PutIntentInput struct { Checksum *string `locationName:"checksum" type:"string"` ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` CreateVersion *bool `locationName:"createVersion" type:"boolean"` Description *string `locationName:"description" type:"string"` DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` Slots []*Slot `locationName:"slots" type:"list"` }


Type: *string

Identifies a specific revision of the $LATEST version.

When you create a new intent, leave the checksum field blank. If you specify a checksum you get a BadRequestException exception.

When you want to update a intent, set the checksum field to the checksum of the most recent revision of the $LATEST version. If you don't specify the checksum field, or if the checksum does not match the $LATEST version, you get a PreconditionFailedException exception.


A collection of messages that convey information to the user. At runtime, Amazon Lex selects the message to convey.


Obtains information from the user. To define a prompt, provide one or more messages and specify the number of attempts to get information from the user. If you provide more than one message, Amazon Lex chooses one of the messages to use to prompt the user. For more information, see how-it-works.


Type: *bool


Type: *string

A description of the intent.


Specifies a Lambda function that verifies requests to a bot or fulfills the user's request to a bot..


A prompt for additional activity after an intent is fulfilled. For example, after the OrderPizza intent is fulfilled, you might prompt the user to find out whether the user wants to order drinks.


Describes how the intent is fulfilled after the user provides all of the information required for the intent. You can provide a Lambda function to process the intent, or you can return the intent information to the client application. We recommend that you use a Lambda function so that the relevant logic lives in the Cloud and limit the client-side code primarily to presentation. If you need to update the logic, you only update the Lambda function; you don't need to upgrade your client application.

Consider the following examples:

  • In a pizza ordering application, after the user provides all of the information for placing an order, you use a Lambda function to place an order with a pizzeria.

  • In a gaming application, when a user says "pick up a rock," this information must go back to the client application so that it can perform the operation and update the graphics. In this case, you want Amazon Lex to return the intent data to the client.


Type: *string

The name of the intent. The name is not case sensitive.

The name can't match a built-in intent name, or a built-in intent name with "AMAZON." removed. For example, because there is a built-in intent called AMAZON.HelpIntent, you can't create a custom intent called HelpIntent.

For a list of built-in intents, see Standard Built-in Intents ( in the Alexa Skills Kit.

Name is a required field


Type: *string

A unique identifier for the built-in intent to base this intent on. To find the signature for an intent, see Standard Built-in Intents ( in the Alexa Skills Kit.


A collection of messages that convey information to the user. At runtime, Amazon Lex selects the message to convey.


Type: []*string

An array of utterances (strings) that a user might say to signal the intent. For example, "I want {PizzaSize} pizza", "Order {Quantity} {PizzaSize} pizzas".

In each utterance, a slot name is enclosed in curly braces.


Identifies the version of a specific slot.



func (s PutIntentInput) GoString() string

GoString returns the string representation


func (s *PutIntentInput) SetChecksum(v string) *PutIntentInput

SetChecksum sets the Checksum field's value.


func (s *PutIntentInput) SetConclusionStatement(v *Statement) *PutIntentInput

SetConclusionStatement sets the ConclusionStatement field's value.


func (s *PutIntentInput) SetConfirmationPrompt(v *Prompt) *PutIntentInput

SetConfirmationPrompt sets the ConfirmationPrompt field's value.


func (s *PutIntentInput) SetCreateVersion(v bool) *PutIntentInput

SetCreateVersion sets the CreateVersion field's value.


func (s *PutIntentInput) SetDescription(v string) *PutIntentInput

SetDescription sets the Description field's value.


func (s *PutIntentInput) SetDialogCodeHook(v *CodeHook) *PutIntentInput

SetDialogCodeHook sets the DialogCodeHook field's value.


func (s *PutIntentInput) SetFollowUpPrompt(v *FollowUpPrompt) *PutIntentInput

SetFollowUpPrompt sets the FollowUpPrompt field's value.


func (s *PutIntentInput) SetFulfillmentActivity(v *FulfillmentActivity) *PutIntentInput

SetFulfillmentActivity sets the FulfillmentActivity field's value.


func (s *PutIntentInput) SetName(v string) *PutIntentInput

SetName sets the Name field's value.


func (s *PutIntentInput) SetParentIntentSignature(v string) *PutIntentInput

SetParentIntentSignature sets the ParentIntentSignature field's value.


func (s *PutIntentInput) SetRejectionStatement(v *Statement) *PutIntentInput

SetRejectionStatement sets the RejectionStatement field's value.


func (s *PutIntentInput) SetSampleUtterances(v []*string) *PutIntentInput

SetSampleUtterances sets the SampleUtterances field's value.


func (s *PutIntentInput) SetSlots(v []*Slot) *PutIntentInput

SetSlots sets the Slots field's value.


func (s PutIntentInput) String() string

String returns the string representation


func (s *PutIntentInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

On this page: