Your Alexa Consoles
City Guide Tutorial

Build an Alexa Skill in 6 Steps

Step 1: Setting up Your Voice User Interface

There are two parts to an Alexa skill. The first part is the Voice User Interface (VUI). This is where we define how we will handle a user's voice input, and which code should be executed when specific commands are uttered. The second part is the actual code logic for our skill, and we will handle that in the next step of this step-by-step guide.

  1. Go to the Amazon Developer Portal. In the top-right corner of the screen, click the "Sign In" button.
    (If you don't already have an account, you will be able to create a new one for free.)

  2. Once you have signed in, click the Alexa button at the top of the screen.

  3. On the Alexa page, choose the "Get Started" button for the Alexa Skills Kit.

  4. Select "Add A New Skill." This will get you to the first page of your new Alexa skill.

  5. Fill out the Skill Information screen. Make sure to review the tips we provide below the screenshot.

    Skill Information Tips
    1. Skill Type For this skill, we are creating a skill using the Custom Interaction Model. This is the default choice.

    2. Language Choose the first language you want to support. You can add additional languages in the future, but we need to start with one. (This guide is using U.S. English to start.)

    3. Name This is the name that will be shown in the Alexa Skills Store, and the name your users will refer to.

    4. Invocation Name This is the name that your users will need to say to start your skill. We have provided some common issues developers encounter in the list below, but you should also review the entire Invocation Name Requirements.

      Invocation Name Requirements Examples of incorrect invocation names
      The skill invocation name must not infringe upon the intellectual property rights of an entity or person. korean air; septa check
      Invocation names should be more than one word (unless it is a brand or intellectual property), and must not be a name or place horoscope; trivia; guide; new york
      Two word invocation names are not allowed when one of the words is a definite article, indefinite article, or a preposition any poet; the bookie; the fool
      The invocation name must not contain any of the Alexa skill launch phrases and connecting words. Launch phrase examples include "launch," "ask," "tell," "load," and "begin." Connecting word examples include "to," "from," "by," "if," "and," "whether." trivia game for star wars; better with bacon
      The invocation name must not contain the wake words "Alexa," "Amazon," "Echo," or the words "skill" or "app." hackster initial skill; word skills
      The invocation name must be written in each language you choose to support. For example, the German version of your skill must have an invocation name written in German, while the English (US) version must have an invocation name written in English. kitchen stories (German skill)
    5. Audio Player For this skill, we won't be using any audio files, so you can select No for this option. If you would like to learn more about adding audio to your skills, please check out our Audio Player Guide.

  6. Click the Next button to move to the Interaction Model.

  7. Click on the Launch Skill Builder (Beta) button . This will launch the new Skill Builder Dashboard.

    Launch Skill Builder

  8. Click on the "Code Editor" item under Dashboard on the top left side of the skill builder.

  9. In the textfield provided, replace any existing code with the code provided in the Interaction Model, then click "Apply Changes" or "Save Model".

  10. Click on the "Dashboard" button.

  11. Add some more sample utterances for your newly generated intents. These are the things a user would say to make a specific intent happen. Here are a few examples:

    • I want some supper
    • Lunch time
    • Time for breakfast
    • I'm hungry

  12. Click on the Save Model button, and then click on the Build Model button.

  13. If your interaction model builds successfully, click on Configuration button to move on to Configuration. In our next step of this guide, we will be creating our Lambda function in the AWS developer console, but keep this browser tab open, because we will be returning here on Page #3: Connect VUI to Code.

    If you get an error from your interaction model, check through this list:

    • Did you copy & paste the provided code into the appropriate boxes?
    • Did you accidentally add any characters to the Interaction Model or Sample Utterances?