Build an Alexa skill in six easy steps. Then publish your skill and earn perks like an Amazon Echo Dot or an Alexa dev shirt. Check back every month for new promotions.
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 on page #2 of this step-by-step guide.
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.)
Once you have signed in, click the Alexa button at the top of the screen.
On the Alexa page, choose the "Get Started" button for the Alexa Skills Kit.
Select "Add A New Skill." This will get you to the first page of your new Alexa skill.
Fill out the Skill Information screen. Make sure to review the tips we provide below the screenshot.
Skill Type For this skill, we are creating a skill using the Custom Interaction Model. This is the default choice.
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.)
Name This is the name that will be shown in the Alexa Skills Store, and the name your users will refer to.
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)|
Audio Player For this Fact 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.
Click the Next button to move to the Interaction Model.
Click on the Launch Skill Builder (Beta) button . This will launch the new Skill Builder Dashboard.
Click on the "Add+" button near Intents on the top left corner of the dashboard.
In the textbox provided, enter the new intent name: GetNewFactIntent., and click the Create Intent button.
Add 10-15 sample utterances for your intent. These are the things a user would say to make this intent happen. Here are a few examples:
Click on the Save Model button, and then click on the Build Model button.
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: