Home > Alexa > Alexa Skills Kit

Use the Skill Builder (Beta) to Define Intents, Slots, and Dialogs

Use the Skill Editor (Beta) to Define Intents, Slots, and Dialogs

With the Alexa Skills Kit, you can add new capabilities to Alexa by creating custom skills. When you create a custom skill, you implement the logic for the skill, and you also define the voice interface through which users interact with the skill. To define the voice interface, you map users’ spoken input to the intents your cloud-based service can handle.

To declare this mapping, you supply the following inputs:

  1. Intents: An intent represents an action that fulfills a user’s spoken request. Intents can optionally have arguments called slots.
  2. Sample utterances: A set of likely spoken phrases mapped to the intents. This should include as many representative phrases as possible.
  3. Custom slot types: A representative list of possible values for a slot. Custom slot types are used for lists of items that are not covered by one of Amazon’s built-in slot types.
  4. Dialog model (optional): A structure that identifies the steps for a multi-turn conversation between your skill and the user to collect all the information needed to fulfill each intent. This simplifies the code you need to write to ask the user for information.

This document explains how to create these components using the skill builder (beta), a visual interface to help you design your skill.

About Intents, Slots, and Dialogs

This section provides a brief overview of the components of an interaction model:

Intents and Slots

An intent represents an action that fulfills a user’s spoken request. Intents can optionally have arguments called slots. For example, a skill for planning a trip might define an intent named PlanMyTrip that has slots named fromCity, toCity, and travelDate. A user can then say:

User: Alexa, ask Plan My Trip to plan a trip from Seattle to Portland on Friday.

The Alexa service sends the Plan My Trip service a PlanMyTrip intent with the value “Seattle” in the fromCity slot, “Portland” in the toCity slot and the date for the next upcoming Friday travelDate slot. The service can then save this information and send back text to convert to speech.

You can use the skill builder to define your intents and slots. Alternatively you can create a JSON intent schema and copy it into the Interaction Model tab in the developer portal.

Slots are defined with different types. The travelDate slot in the above example uses Amazon’s built-in AMAZON.DATE type to convert words that indicate dates (such as “today” and “next friday”) into a date format, while both fromCity and toCity use the built-in AMAZON.US_CITY slot. If you extended this skill to ask the user what activities they plan to do on the trip, you might add a custom LIST_OF_ACTIVITIES slot type to reference a list of activities such as “hiking”, “shopping”, “skiing”, and so on.

Amazon provides built-in support for a large library of slot types. This includes:

All built-in types have the prefix AMAZON.

For more about designing skills and identifying your intents and slots, see Design Process.

Sample Utterances

The sample utterances specify the words and phrases users can say to invoke your intents. Each intent is mapped to several utterances. Slots are indicated within the utterances with curly brackets. For example, this utterance for PlanMyTrip includes the toCity slot:

i want to visit {toCity}

You can use the skill builder to create sample utterances for your intents. Alternatively, you can create a text mapping between the intents and utterances and copy it into the Interaction Model tab in the developer portal.

Multi-turn Conversations and the Dialog Model

In an Alexa skill, a dialog with the user is a conversation with multiple turns in which Alexa asks questions and the user responds with the answers. The conversation is tied to a specific intent representing the user’s overall request. The questions and answers are intended to gather and confirm values for all of the intent’s required slots. The conversation continues until all slots needed for the intent are filled and confirmed.

You can use the skill builder to define a dialog model. This structure identifies:

  • The slots that must be filled with valid values in order to fulfill the intent. These are considered required slots.
  • The prompts Alexa speaks to ask for required slot values and the utterances users can say in reply.
  • Whether any of the required slots must be also confirmed by the user before continuing.
  • Whether the entire intent must be confirmed by the user before continuing.
  • The prompts Alexa speaks to ask for slot and intent confirmations.

To use the dialog model in your skill, return the Dialog.Delegate directive. Alexa then determines the next step and uses the defined prompts to ask the user for information. This lets you delegate the conversation to Alexa, rather than writing your own code to ask the user for slot values and confirmations.

You can also manage the conversation manually, or use a combination of delegation and other options. See About Managing the Conversation with the User.

To create a dialog model, you must use the skill builder.

The skill builder (beta) provides visual tools to create the intents, slots, slot types, and dialog models for a skill.

The skill builder (beta) user interface
The skill builder (beta) user interface
Description

A.

The Dashboard appears when you start the skill builder (beta). It provides a summary of all the intents and slot types you have created so far.

B.

The left-hand navigation pane displays on all pages. From here, you can navigate to the *Dashboard, your **Intents, and your Slot Types. Use the ADD + links to create new intents or slot types from the navigation pane.

C.

Select an intent to edit its sample utterances, slots, and dialog information. The Intents list includes all the intents included in your skill’s interaction model.

Expand the intent to see all of its slots (intent slots). Select a slot to edit its type and dialog information.

D.

Select a slot type to edit its list of values. This displays all of the slot types you’ve added to your skill. This includes:

E.

Click Save Model and Build Model to save your work and build the interaction model. Save Model saves the data, regardless of whether it is valid for a build. Build Model validates, saves, and builds the interaction model.

F.

Return to the rest of the pages on the developer portal to configure, test, and publish your skill.

High-level Steps to Create the Interaction Model and Dialog Model

The skill builder (beta) is designed around defining each intent, its slots, its utterances, and (optionally) the prompts Alexa uses when conversing with the user to collect and confirm the slot values.

Once you know an intent you want to create for your skill, follow these high-level steps in the skill builder. See the sections below for details:

  1. Create the skill in the developer portal and then open the skill builder.
  2. Create an intent and write some initial utterances. An intent represents a specific user request (for example, PlanMyTrip intent for gathering information about a trip to save in a list).
  3. Review your initial utterances and identify the words or phrases that represent variable information. Create new intent slots for these words and replace the words with slot notation in the utterances.
  4. Choose or create the appropriate slot types for the slots you have identified.
  5. For each intent slot, determine whether the slot value is required in order to fulfill the request. Write the prompts and utterances Alexa uses in the conversation to elicit the slot.
  6. For each required slot, determine whether the user must explicitly confirm the slot value before your skill completes the request. Write the prompts Alexa should use to ask for confirmation.
  7. For the entire intent, decide whether the user must explicitly confirm the action before your skill completes the request. Write the prompts Alexa should use to ask for confirmation.
  8. When you are finished defining the intents, save and build the interaction model and dialog model.
  9. Continue creating your skill.

Launch the Skill Builder (Beta) for a Skill

Use the Skill Builder (Beta) with a New Skill

  1. Log on to the Alexa section of the developer portal. From the developer portal console page, click Alexa.
  2. In the Alexa Skills Kit box, click Get Started to open the Alexa Skills Kit page. This displays any skills you have already created.

  3. Create a new skill and fill in the required fields on the Skill Information page:
    • Skill Type (select Custom Interaction Model)
    • Language
    • Name
    • Invocation Name
  4. Click Save to save the new skill.
  5. Click Interaction Model.
  6. Click the Try the Skill Builder (Beta) button.

Once you have opened the skill builder for a particular skill, click Interaction Model in the developer portal to return.

Use the Skill Builder (Beta) with an Existing Skill

You can also edit an existing skill in the skill builder. Open the skill in the developer portal, go to the Interaction Model tab and click the Try the Skill Builder (Beta) button.

The intents, slot types, and sample utterances previously defined on the Interaction Model page are displayed in the skill builder. You can review and modify this information normally.

Once you have opened the skill builder for a particular skill, click Interaction Model in the developer portal to return.

Reverting to the Standard Interaction Model Page

If you change your mind about using the skill builder (beta), you can revert to the standard Interaction Model page and define your intent schema in JSON and your sample utterances in text.

The intents, sample utterances, and slot types you created in the skill builder are saved and available on the Interaction Model page. See the Interaction Model Reference for a reference to the intent schema JSON, custom slot type, and sample utterance formats. Before reverting, you should save and build any changes to these components by clicking Build Model.

To revert to the standard Interaction Model page, click Dashboard in the left-hand navigation, then click the Leave Beta Preview button at the bottom of the page.

Create an Intent, Utterances, and Slots

When you create a new custom intent, you provide a name and a list of utterances that users would say to invoke this intent. You can start by just writing out the full phrases and then identify the slots within the phrases later.

For example, for an intent to plan a trip (PlanMyTrip), you might write utterances like this:

i am going on a trip on friday
i want to visit portland
i want to travel from seattle to portland next friday
i'm driving from seattle to portland
i'm driving to portland to go hiking
...(several more)

For recommendations for writing good sample utterances, see Best Practices for Sample Utterances and Custom Slot Values.

To create a new custom intent:

  1. From the left-hand navigation, click ADD + next to Intents.
  2. Select the Create a new custom intent option.
  3. Enter the name of the new intent and click Create Intent. This adds a new intent and opens its detail page, displaying the intent’s sample utterances and slots.
  4. Enter a sample utterance in the edit box and click the plus sign or press Enter. Repeat this for a few representative utterances.

    Be sure to include utterances that include words and phrases that will vary when users say the intent. In the example above, this includes words and phrases like “friday,” “san francisco”, “seattle,” and “next thursday.”

  5. Identify the slots in the utterances as described below.
The Alexa Skills Kit includes a large library of built-in intents you can use instead of creating your own. You do not need to write the utterances for these intents thus simplifying development.

You can search the full built-in intent library from within the skill builder. Click ADD + next to Intents, then select the Use an existing intent from Alexa’s built-in library option. Select the check boxes for each built-in intent to add, then click Add Intent.

Identify the Slots for the Intent

Once you have written a few utterances, note the words or phrases that represent variable information. These will become the intent’s slots. For example, in the utterances identified earlier, the variables are highlighted in red.

i am going on a trip on friday
i want to visit portland
i want to travel from seattle to portland next friday
i'm driving from seattle to portland
i'm driving to portland to go hiking

Create a slot for each of these words or phrases and then replace the original word with the slot name in curly brackets ({ }):

  1. Select an intent from the left-hand navigation to open the detail page.
  2. In an utterance, highlight the word or phrase representing the slot value.
  3. In the drop-down that appears, enter a name for the slot in the edit box and click the plus sign.

    This creates a new slot for the intent and replaces the original value in the utterance with the slot name in curly brackets ({ }).

    For the example shown above, you would note that “seattle” represents the city the user wants to depart from, so you might call this slot fromCity. The utterance would now look like this:

    i want to travel from {fromCity} to portland next friday
  4. Repeat for all the remaining variable words.

    In the PlanMyTrip intent, you might end up with the slots like this:

    • fromCity
    • toCity
    • travelDate
    • travelMode
    • activity

Each slot you add is displayed in the Intent Slots pane on the right. When you highlight a word or phrase in an utterance, you can add a new slot or select an existing slot.

For example, the set of utterances shown earlier would now look like this:

i am going on a trip on {travelDate} 
i want to visit {toCity} 
I want to travel from {fromCity} to {toCity} {travelDate} 
I'm {travelMode} from {fromCity} to {toCity}
i'm {travelMode} to {toCity} to go {activity}

Assign Slot Types to Your Slots

Every slot has a slot type that determines how the user input is handled and passed on to your skill. You can assign slot types from the detail page for an intent or the slot detail page for the slot. When assigning slot types, you can:

  • Use a built-in slot type. The built-in types include types for converting data such as dates, and types that provide recognition for commonly-used lists of values, such as large cities. You can extend some of these types with additional values as well.
  • Create a custom slot type. In this case, you provide the slot type name and a list of custom values.

To assign slot types:

  1. Click an intent from the left-hand navigation to open the detail page for the intent.
  2. In the Intent Slots pane on the right, for one of the slots, under the slot name, click the Choose a slot type menu. You can also open the detail page for the slot: in the left-hand navigation, find the intent and its list of slots. Click the slot name.
  3. To use an existing custom slot type or one of the built-in types, select the type from the list.
  4. To create a new custom slot type, enter the name for the type in the edit box at the bottom of the list and click the plus sign or press Enter. Refer to Create and Edit Custom Slot Types for more about adding custom slot types and slot values.

Create and Edit Custom Slot Types

A custom slot type defines a list of representative values for the slot. Custom slot types are used for lists of items that are not covered by Amazon’s built-in set of types. When using a custom type, you define the type and its values, and specify the name of the type as part of the intent definition.

Continuing the PlanMyTrip intent example, you might define a custom slot type of travel activities to use with the activity slot type. The type could be named LIST_OF_ACTIVITIES and have these values:

bicycling
bike
biking
camp
camping
hike
hiking
race
run
shop
shopping
ski
skiing
surf
surfing
swim
swimming

This would support utterances such as “I’m visiting Portland to go hiking,” and “I’m visiting Portland to hike.”

The set of custom values can be anything supported by your skill’s handling of the slot as long as it can be spoken by a user, although words not found in a typical dictionary for the skill’s language may not be recognized.

Slot values are sent to your skill in written format. For example, both “fire h.d. 7” and “fire h.d. seven” would be sent to your skill as “Fire HD7”. For better recognition, acronyms and other phrases involving spoken letters should either be all caps (“HD”) or separated by periods (“h.d.”). Using lowercase for initialisms may lead to unreliable recognition since the spoken form may not correctly be detected. See examples.

Note that a custom slot type is not the equivalent of an enumeration. Values outside the list are still returned if recognized by the spoken language understanding system. Although input to a custom slot type is weighted towards the values in the list, it is not constrained to just the items on the list. Your code still needs to include validation and error checking when using slot values. See the “Handling Possible Input Errors” section of Handling Requests Sent by Alexa.

For recommendations for custom slot type values, see Custom Slot Type Values.

The same custom slot type can be used for multiple slots in the same skill.

Slot Types in the Skill Builder (Beta)

The Slot Types section in the left-hand navigation displays all of the slot types you’ve added to your skill. This includes:

Select a slot type to change its name or update the list of values. When you select a type, the Intent Slots pane on the right shows all of the slots currently using that type.

Slot type names: The name of a custom slot type can contain alphabetic characters and the underscore (“_”) only. The dot character (.) is allowed only for built-in types (such as AMAZON.US_CITY ).

Add or Edit a Custom Slot Type

To add a new custom slot type:

  1. In the left-hand navigation, click the ADD+ button next to Slot Types.
  2. Select the Create a new custom slot type option.
  3. Enter a name for the slot type and click Create Slot Type.
  4. Enter each value and click the plus or press Enter. For recommendations for slot type values, see Custom Slot Type Values.
  5. You can add slot value IDs and synonyms to a slot value after you save the value:
    • Click in the ID column for a value to edit its ID.
    • Click in the Synonyms column for a value to enter a synonym, then click the plus or press Enter to save it.

    For more about using IDs and synonyms for a slot type value, see Define Synonyms and IDs for Slot Type Values (Entity Resolution).

To edit slot type values:

  1. In the left-hand navigation, under Slot Types, select the slot type to edit.
  2. Enter each value and click the plus or press Enter. For recommendations for slot type values, see Best Practices for Sample Utterances and Custom Slot Type Values.
  3. Click in the ID column for a value to edit its ID.
  4. Click in the Synonyms column for a value to enter a synonym, then click the plus or press Enter to save it.

To change the name of a custom slot type:

  1. In the left-hand navigation, under Slot Types, select the slot type to edit.
  2. Click the pencil icon next to the slot type name. Edit the name and click the + or press Enter.

Synonyms and Unique Identifiers for Slot Type Values

Each value in a custom slot type can have a unique identifier and a set synonyms. This lets you tie multiple possible utterances together and get a common ID and value in the the IntentRequest, regardless of which value the user says. For example, for a MEDIA_TYPE slot intended to collect a particular type of media, a user might say “song”, “track”, or “single”. All three of these utterances can be tied to the single slot value “song” with the unique identifier SONG.

For more about how synonyms and IDs work, see Define Synonyms and IDs for Slot Type Values (Entity Resolution).

Extend a Built-in Slot Type with Additional Values

You can add your own custom values to a subset of the built-in list slot types. This appends the values you provide to the built-in values defined by Amazon. For example, AMAZON.US_CITY provides recognition for over 15,000 cities commonly used by speakers in the United States. If you need to collect additional cities – such as smaller towns that might not be included – you could add them to the list by extending the type. The slot would then recognize both the original set of values as well as the custom ones you added.

You can also define synonyms and identifiers for values you add to a built-in slot type. For details, see Entity Resolution for Built-in Slot Types.

Extending a built-in slot type only applies to the specific skill. For instance, if you extend AMAZON.US_FIRST_NAME with additional names for one skill, those changes do not apply to any other skills that also use AMAZON.US_FIRST_NAME.

To extend a slot type:

  1. In the left-hand navigation, click the ADD+ button next to Slot Types
  2. Select the Use existing slot type from Alexa’s built-in library option.
  3. Find the slot type you want to extend.
    • You can filter the slot types by name.
    • A subset of the List Type slot types can be extended. See the list of extensible types.
  4. Select the check boxes for the types you want to extend, then click Add Slot Types. This adds the type to your model.
  5. In the left-hand navigation, select the slot type you’ve added. Enter the values as you would for a custom slot type: enter each value and click the plus or press Enter.

    If the slot type does not display an edit box for entering values, this means the type cannot be extended. See the list of extensible types.

Define the Dialog to Collect and Confirm Required Information

To simplify your code for collecting and confirming slot values, create a dialog model. This identifies required slots and the prompts to collect and confirm the slot values. To use these prompts in a dialog with the user, respond to an incoming IntentRequest with the Dialog.Delegate directive. Alexa then determines the next step in the dialog and uses the appropriate prompts to ask the user for the information.

There are three components to the dialog model:

  • Required slots and prompts: A required slot represents information that your skill must have in order to fulfill the user’s request. For instance, the PlanMyTrip intent requires, at a minimum, the starting city (fromCity), destination city (toCity), and date (travelDate) to save trip details to a list. You can control the order in which Alexa asks for the slot values.
  • Slot confirmation prompts: You can optionally designate a required slot as requiring confirmation. This means that the user must also confirm the slot value with a yes/no response before proceeding. Use confirmation sparingly, as users may find it annoying to be asked for confirmation frequently.
  • Intent confirmation prompts: You can specify that the entire intent requires confirmation. This is common for skills that order products or make reservations. A confirmation prompt typically repeats back to the user all the information previously provided for the user to confirm. Again, use confirmations sparingly to avoid annoying users.

For more about dialog scenarios, see About Managing the Conversation with the User.

Identify Required Slots and Prompts

If a slot is required, your skill must get a valid value for it before you can complete the user’s request.

Define Alexa Prompts and User Utterances to collect these values. To use these prompts and utterances in a dialog with the user, return the Dialog.Delegate directive.

Section Description Examples

Alexa Prompts

Questions that Alexa speaks to ask the user for the slot value.

  • The prompts should be specific to collecting just this one slot.
  • If you provide more than one prompt, Alexa chooses one at random. This gives Alexa a more conversational, human style.
  • Write the prompts using a conversational style.
  • For general tips for prompts, see What Alexa Says

Note that SSML is not yet supported for these prompts, although you can use normal punctuation such as periods and question marks.

For the fromCity slot, you could have prompts like this:

What city are you leaving from?
Where are you starting your trip?
From where did you want to start your trip?

User Utterances

Utterances users can say to answer the questions provided in the prompts.

  • When Alexa asks the user to fill the slot, the service biases the speech models to listen for the response utterances you provide here. This occurs when you return either Dialog.Delegate or Dialog.ElicitSlot.
  • Make sure the utterances represent the most likely ways you expect users to answer the question.
  • Use the standard curly bracket ({ }) slot notation to identify the slot name.
  • You can include an utterance consisting of just a slot value with no surrounding text – again, use the curly bracket notation. Note that utterances consisting of just a slot value can be used only as a slot utterance. Do not use this utterance for the overall intent.

For the fromCity slot, you might have utterances like this:

{fromCity}
i'm leaving from {fromCity}
flying out of {fromCity}
traveling from {fromCity}
my trip starts in {fromCity}

The above examples would support a conversation like this for the fromCity slot:

User: Alexa, tell Plan My Trip that I’m going on a trip on Friday (This utterance includes a value for one required slot (travelDate), but is missing fromCity and toCity.)
Plan My Trip: What city are you leaving from? (One of the Alexa prompts defined for fromCity.)
User: I’m leaving from Seattle

To edit the prompts and utterances for a required slot:

  1. Open the slot detail page: in the left-hand navigation, find the intent and its list of slots, then click the slot name. If you are starting from the detail page for the intent, you can click the pencil icon for the slot in the Intent Slots pane on the right.

  2. Select Yes for Is the slot required to fulfill the intent.
  3. Fill in the Alexa Prompts and User Utterances sections.

Enable Confirmation for a Slot

If a slot requires confirmation, your skill needs to ask the user to confirm the slot value with “yes” or “no”.

Define a set of Alexa Prompts to get this confirmation from the user. To use these prompts in a dialog with the user, return the Dialog.Delegate directive.

Section Description Examples

Alexa Prompts

Questions that Alexa speaks to ask the user to confirm the slot value.

  • The prompts should be specific to confirming just this one slot. See intent confirmation if you need to do a final confirmation for the entire intent.
  • The prompts should be worded such that the user can respond with “yes” or “no”.
  • If you provide more than one prompt, Alexa chooses one at random. This gives Alexa a more conversational, human style.
  • Include the slot name in the prompt in curly brackets ({ }). When speaking the prompt, Alexa replaces this token with the value the user previously provided.

Note that SSML is not yet supported for these prompts, although you can use normal punctuation such as periods and question marks.

For the fromCity slot, you could have confirmation prompts like this:

You wanted to leave from {fromCity}, right?
I heard you want to leave from {fromCity}, right?
You said you're leaving {fromCity}, right?
Please verify that you want to start your trip in {fromCity}

The above examples would support a conversation like this for the fromCity slot:

User: Alexa, tell Plan My Trip that I want to travel from Seattle to Portland on Friday (This utterance includes values for all the required slots (fromCity, toCity and travelDate).)
Plan My Trip: You said you’re leaving from Seattle, right? (Confirmation prompt for fromCity slot value.)
User: Yes.
Dialog continues…

To enable confirmation for a required slot:

  1. Open the slot detail page: in the left-hand navigation, find the intent and its list of slots, then click the slot name. If you are starting from the detail page for the intent, you can click the pencil icon for the slot in the Intent Slots pane on the right.

  2. Select Yes for Does this slot require confirmation?.
  3. Fill in the Alexa Prompts section with your prompts.

Enable Confirmation for an Intent

If the entire intent requires confirmation, your skill needs to ask the user to confirm the action the intent will take with “yes” or “no”.

Define a set of Alexa Prompts to get this confirmation from the user. To use these prompts in a dialog with the user, return the Dialog.Delegate directive.

Section Description Examples

Alexa Prompts

Questions that Alexa speaks to ask the user to confirm the entire intent.

  • The prompts should be specific to confirming the entire intent.
  • The prompts should be worded such that the user can respond with “yes” or “no”.
  • If you provide more than one prompt, Alexa chooses one at random. This gives Alexa a more conversational, human style.
  • Include all of the required slots in the prompt in curly brackets ({ }). When speaking the prompt, Alexa replaces these tokens with the slot values previously provided.

Note that SSML is not yet supported for these prompts, although you can use normal punctuation such as periods and question marks.

For the PlanMyTrip intent, you might have confirmation prompts like this:

I'm saving your trip from {fromCity} to {toCity} on {travelDate}. Is that OK?
Please confirm that you want to travel from {fromCity} to {toCity} on {travelDate}.
Are you sure you want me to save a trip from {fromCity} to {toCity} on {travelDate}?

The above examples would support a conversation like this for the PlanMyTrip intent:

…previous interaction to invoke the intent and ask the user for fromCity, toCity, and travelDate.
Plan My Trip: I’m saving your trip from Seattle to Portland on April 21st. Is that OK? (Confirmation prompt for the intent)
User: Yes.

To enable confirmation for an intent:

  1. Open the intent detail page: in the main left-hand pane, click the name of the intent.
  2. Under Intent confirmation, select Yes for Does this intent require confirmation?.
  3. Fill in the Alexa Prompts for the intent.

Set the Intent Slot Order

You can control the order in which Alexa asks for each required slot value. This order is shown in the Intent Slots pane for an intent.

  1. Open the intent detail page: in the main left-hand pane, click the name of the intent.
  2. In the Intent Slots pane on the right, note the order of the slots. Drag the slots to change the order.

When you return the Dialog.Delegate directive, Alexa uses the slot order to determine the next step in the dialog.

Save and Build the Interaction Model and Dialog Model

As you create and edit your interaction model and dialog model, save your work with the Save Model button. This saves your data without also attempting to build the model.

When you are ready to test your interaction model, click Build Model to validate, save, and build your interaction model. Building the model can take several minutes. You can continue to make changes, but they won’t be reflected in the build. The skill builder displays a success message once the build completes.

You must successfully build the model before you can test it.

When you are ready to configure the rest of your skill, use the buttons in the upper right to move on to other sections of the developer portal.

View and Edit the JSON Code for the Interaction Model and Dialog Model

When using the skill builder, you can see your intent schema, sample utterances, and dialog model in JSON format. You can make changes directly to this code and apply them to your interaction model.

Click </>Code Editor to see the JSON version of your model. If you make any changes, be sure to click Apply Changes to apply the changes to your model.