Create and Manage Skills in the Alexa Developer Console


Use the Alexa developer console to create and manage Alexa skills. When you create a new skill, you choose the skill model that you want to build. The model determines the features that you can add and the customization that you can do. After you create your skill, you can edit, hide, and delete the skill.

To create and manage skills in Visual Studio Code (VS Code), see Get Started with the Alexa Skills Toolkit for VS Code. To create and manage skills on the command line, see Alexa Skills Kit Command Line Interface (ASK CLI) Overview.

Prerequisites

To create a new skill, gather the following information:

  • A name that identifies the skill. After you publish the skill, this name becomes the public name that customers see in the Alexa Skills Store. You can edit this name before you publish the skill.
  • The initial language to use. You can add support for additional languages later.
  • The voice interaction model. For more details, see About Voice Interaction Models.
  • The type of skill you want to implement. For more details, see Index of Skill Types.
  • The backend resource to host your skill code. You can choose one of the following options:
    • Amazon Web Services (AWS) Lambda, a service that lets you run code in the cloud without managing servers. Your AWS account gives you access to resources as part of the free tier of services. You can write Lambda functions in Node.js, Java, Python, C#, Go, Ruby, or PowerShell.
    • Web service that runs on any cloud hosting provider that you chose. The web service must accept requests over HTTPS. This option is available only for skills that use the custom voice interaction model.

About voice interaction models

The voice interaction model determines the requests (intents) the skill handles, such as plan a trip, get a fact, turn on a light, play video content. The model also defines the words (utterances) that the user says to invoke the requests, such as the following example utterances:

  • "Alexa, tell plan my trip I want to go to Seattle."
  • "Alexa ask cat facts for a fact."
  • "Alexa turn on the living room lights."
  • "Alexa play Manchester by the Sea."

For the custom voice interaction model, you define the intents and sample utterances. Then, you implement the skill code to handle each intent. For the pre-built model, the possible requests and utterances are pre-defined for you. You implement the skill code to handle the requests. For more details, see About Voice Interaction Models.

Available models

The following table summarizes the models that you can select in the Alexa developer console.

Model Description What you build
Custom

Create a custom voice user interface for the skill. This option gives you complete control over the skill experience.

You build a custom voice interaction model to define the intents and sample utterances.

For details about skills with a custom model, see Understanding Custom Skills.

Connected Vehicle
(pre-built model)

Create a skill that lets users control their vehicle remotely.

With a connected vehicle skill, users can ask Alexa to interact with the vehicle, such as turn the engine on or off, lock or unlock the doors, set the temperature, from outside their vehicle.

For details about skills with the connected-vehicle pre-built model, see Connected Vehicle Skills for Alexa.

Flash Briefing
(pre-built model)

Create a skill that provides content for the user's flash briefing feed.

You provide an RSS or JSON feed with content. Users invoke the skill by asking for their flash briefing.

For details about skills with the Flash Briefing model, see Understand the Flash Briefing Skill API.

Music
(pre-built model)

Create a skill that gives users control of your audio streaming service.

The music model enables users to select and control of music, radio, and podcast audio content streamed through an Alexa-enabled device.

For more details about skills with the music model, see Understand the Music, Radio, and Podcast Skill API.

Smart Home
(pre-built model)

Create a skill that controls smart home devices, such as cameras, lights, locks, thermostats, and smart TVs.

The smart home model defines the requests and words users say to control their devices, such as "Alexa, turn on the porch light." Your skill code implements the interface to the smart home devices.

For more details about skills with the smart home model, see Understand the Smart Home Skills.

Video
(pre-built model)

Create a skill that lets users find and consume video content.

The video model defines the requests and words the users say to control their video devices, such as "Alexa, play Manchester by the Sea." Your skill code implements the request to the video device.

For more details about skills with the video model, see Understand the Video Skill API.

Multiple models

You can select multiple models for a skill. For example, you can create a skill that uses the smart home model to respond to standard commands to turn the lights off or on, but also uses a custom model to manage a ringing doorbell.

When you configure a skill with multiple models, you must configure the settings for each model. For example, a skill that has both a custom and smart home model requires an endpoint for the custom skill service and an endpoint for the smart home service. For more details, see About Multi-capability Skills (MCS).

Create a new skill

After you decide the model that you want to build, you can create a new skill.

To create a new skill in the Alexa developer console

  1. Sign-in to the Alexa developer console.
  2. On the Skills tab, click Create Skill.
  3. On the Name, Locale page, enter the following information.
    1. For 1. Name your Skill, enter the name of your game.
      This name is the name customers will see when you publish the skill. You can edit this name later on the Distribution page.
    2. For 2. Choose a primary locale, choose the language and country for the primary location where you want to offer your skill. You can add additional languages later.
  4. To continue, click Next.
  5. On the Experience, Model, Hosting service page, enter the following information:
    1. For 1. Choose a type of experience, select the type of skill that you want to build.
      If you don't see the type that you want to build, select Other.
    2. For 2. Choose a model, select one of the recommended models.
      Available models include: Custom, Connected Vehicle, Flash Briefing, Meetings, Music, Smart Home, and Video.
      If you don't see the model that you want to build, select Remaining models.
    3. For 3. Hosting services, select one of the Alexa-hosted backend resources or Provision your own backend resources.
    4. If you selected Alexa-hosted in the previous step, for 4. Hosting region, select the hosting region closest to the majority of your users.
  6. To continue, click Next.
  7. If you chose the custom skill model, on the Templates page, select a template, and then at the top of the page click Next.
    Or, to import a skill from a public Git repository, click Import Skill. Public repositories include GitHub, GitLab, and Bitbucket.
  8. On the Review page, review your selections.
    To modify your selections, at the top of the page click Back. To create your skill, click Create Skill.
  9. The console creates and builds the skill. Wait for the Full Build Successful notification before you proceed with the next step.
  10. After the console creates your new skill, you can configure it on the Build page.
    For more details, see Build Skills in the Alexa Developer Console.

Edit an existing skill

You always edit the development version of your skill.

To edit an existing skill in the Alexa developer console

  1. Sign in to the Alexa developer console.
  2. From the skill list, under STATUS, locate the development version of your skill, and then, in the dropdown under ACTIONS, select Edit.
    In the list of skills, the development version displays after the live version.
    The status of the development version is In Dev.
  3. Make changes to the skill.
  4. For custom skills, to save your interaction model changes, click Save Model and then click Build.

Update your live custom skill

If you want to update slot values for a defined slot type or update sample utterances in an existing intent, you can make these changes, and then update your live skill instantly. For example, if you have a custom skill that has constantly changing slot values, such as the list of movie names in a movie booking skill or a list of ingredients in a recipe skill, you can add or update slot values for an existing slot type. If you notice missing sample utterances or an utterance that maps to the wrong intent, you can add or update sample utterances to improve the accuracy of the skill model.

To make live updates to a skill in the Alexa developer console

  1. Sign in to the Alexa developer console.
  2. From the skill list, under STATUS, locate the development version of your skill, and then, in the dropdown under ACTIONS, select Edit.
    In the list of skills, the development version displays after the live version.
    The development version has status In Dev.
  3. In the dropdown under ACTIONS, select Edit.
  4. On the Build page, update the slot values and utterances.
  5. Save the updates, and then click Build skill.
  6. Wait for the Build Completed notification before you proceed with the next step.
  7. To update your published skill, click Update live skill.
    The Update live skill button is also available on the Certification page.

Examples

The following example shows the Update live skill button on the Build page after a successful build of new or updated slot values.

Alexa Developer Console
Intent page with Update Live Skill option

The following example shows the Update live skill button on the Build page after a successful build of new or updated sample utterances.

Alexa Developer Console
Slot page with Update Live Skill option

The following example shows the Update live skill button on the Certification page after a successful build of new or updated slot values or sample utterances.

Alexa Developer Console
Submission with Update Live Skill option

Hide or remove a skill (skill suppression)

You can suppress a live skill so that users can no longer enable it. Skill suppression applies all locales. You can't suppress a skill in some locales and keep it available to users in others. ASK supports two types of skill suppression:

  • Hide – The skill remains active for users who previously enabled it. The skill is no longer available when users search or browse the Alexa Skills Store.
  • Remove – The skill is disabled for all users, including those users that previously enabled the skill. Users can't use or enable removed skills.

When you hide or remove a skill, the skill isn't deleted and you can still see it in the developer console. The skills list shows the suppressed and development versions. You can continue to make changes to the development version.

To re-publish the skill, update the development version, and then resubmit for certification. Resubmitting starts a new certification process.

To hide or remove a skill in the Alexa developer console

  1. Sign in to the Alex developer console.
  2. From the skill list, locate the live version of your skill, and then, in the dropdown under ACTIONS, select Hide or Remove.
  3. When prompted, select a reason for suppression, and then click Hide or Remove.

Suppression might take a few days to complete. You can see the updated status for the skill in the list of skills.

Delete your skill

Use the developer console to delete skills in the development stage. You can't delete skills in the live or certification stage.

To delete your development skill in the developer console

  1. Sign in to the Alexa developer console.
  2. From the skill list, under STATUS, locate the development version of your skill.
    The status of the development version is In Dev.
  3. In the dropdown under ACTIONS, select Delete.

Was this page helpful?

Last updated: Feb 08, 2024