Interaction Model Schema (Skill Management API), v0
Warning: You are viewing the SMAPI v0 API documentation. The current version of SMAPI is Version 1. Switch to v1 to view the latest documentation.
API Version Selector
The interaction model resource has the same structure as if you create an interaction model in the Amazon Developer Portal using the skill builder. You can create and modify the interaction model resource with ASK CLI commands or with Interaction Model API Operations .
See also: Alexa Skills Kit Command-Line Interface and Alexa Skill Management API Overview
Example data
{
"languageModel" : {
"invocationName" : "string" ,
"types" : [
{
"name" : "string" ,
"values" : [
"string"
]
}
],
"intents" : [
{
"name" : "string" ,
"slots" : [
{
"name" : "string" ,
"type" : "string" ,
"samples" : [
"string"
]
}
],
"samples" : [
"string"
]
}
]
},
"dialog" : {
"intents" : [
{
"name" : "string" ,
"slots" : [
{
"name" : "string" ,
"prompts" : {
"elicitation" : "string" ,
"confirmation" : "string"
},
"validations" : [
{
"type" : "string" ,
"prompt" : "string"
}
]
}
]
}
]
},
"prompts" : [
{
"id" : "string" ,
"variations" : [
{
"type" : "SSML" ,
"value" : "string"
}
]
}
]
}
Interaction Model
Field
Type
Description
Required?
languageModel
object
Conversational primitives for the skill
yes
dialog
object
Rules for conducting a multi-turn dialog with the user
no
prompts
array
Cues to the user on behalf of the skill for eliciting data or providing feedback
no
languageModel
Field
Type
Description
Required?
invocationName
string
Invocation name of the skill
yes
intents
array
Intents and their slots
yes
types
array
Custom slot types
no
languageModel_intents
Field
Type
Description
Required?
name
string
Name of the intent
yes
slots
array
List of slots within the intent
no
samples
array
Sample utterances for the intent
no
slots
Field
Type
Description
Required?
name
string
Name of the slot
yes
type
string
Type of the slot
yes
samples
array
Sample utterances for the slot
no
types
Field
Type
Description
Required?
name
string
Name of the custom slot type
yes
values
array
List of representative values for the slot.
yes
value
Field
Type
Description
Required?
id
string
Identifier for a value of a custom slot type
yes
name
object
Describes a value of a custom slot type
yes
values_name
Field
Type
Description
Required?
value
string
A value for a custom slot type
yes
values_synonyms
Field
Type
Description
Required?
value
string
A value for a custom slot type
yes
synonyms
array
List of potential synonyms for a value of a custom slot type
no
dialog
Field
Type
Description
Required?
intents
array
List of intents that have dialog rules associated with them.
yes
dialog_intents
Field
Type
Description
Required?
name
string
Name of the intent that has dialog rules
yes
slots
array
List of slots in this intent that have dialog rules
no
confirmationRequired
boolean
Describes whether confirmation of the intent is required
no
prompts
Map
Collection of prompts for this intent
no
dialog_intent_prompt_type
Field
Type
Description
Required?
confirmation
string
Enum value in the dialog_intents map to reference the confirmation prompt id
no
dialog_slots
Field
Type
Description
Required?
name
string
Name of the slot in the dialog intent
yes
type
string
Type of the slot in the dialog intent
yes
elicitationRequired
boolean
Describes whether elicitation of the slot is required
no
confirmationRequired
boolean
Describes whether confirmation of the slot is required
no
elicitation
string
Reference to a prompt-id to use if this slot value is missing
no
confirmation
string
Reference to a prompt-id to use to confirm the slots value
no
prompts
Map
Collection of prompts for this slot
no
dialog_slot_prompt_type
Field
Type
Description
Required?
elicitation
string
Enum value in the dialog_slots map to reference the elicitation prompt id
no
confirmation
string
Enum value in the dialog_slots map to reference the confirmation prompt id
no
prompts
Field
Type
Description
Required?
id
string
Identifier of the prompt
yes
variations
array
List of variations of the prompt. Each variation can be either a text string or a well-defined SSML string.
yes