Skip to content
Sample skill which demonstrates the new Alexa Presentation Language (APL). The skill functionality itself helps customers make all sorts of fascinating sauces from basic condiments and spices found in a common kitchen.
JavaScript PowerShell Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.
.ask initial commit Feb 15, 2019
instructions [ FIX ] fixed typos to meet new spec doc Nov 22, 2019
lambda/custom fixed it-IT recipes Oct 25, 2019
models added it-IT locale Oct 25, 2019
.gitignore corrected typos in pt-BR translations Oct 23, 2019 initial commit Feb 15, 2019 initial commit Feb 15, 2019
NOTICE initial commit Feb 15, 2019 refactor: i18n support - apl1.1 Oct 9, 2019

Sample Skill - Sauce Boss

Welcome! You too can be a "sauce boss" with the help of the sauce boss skill! OK, just kidding, maybe. This sample skill use a how-to or recipe use case to demonstrate the Alexa Presentation Language (APL). Ask for a sauce and you'll be provided with an image and recipe description for the sauce of your choice.


Note: The AWS Account is optional because you can create this sample as an Alexa Hosted skill. The Echo Show is optional because you can see the display in the simulator.

Brief Steps

Note: The below steps assume you have general familiarity with how to use the Alexa Developer Console. If you've never created a skill before, check out the fact skill tutorial to get the feel for it.

Note: if you're using the ASK CLI, the fastest way to try this skill out is to issue these commands:

ask new --url --skill-name sauce-boss
cd sauce-boss
ask deploy
  1. From the Alexa Developer Console create a new skill.
    1. Name the skill whatever you want, but we recommend Sauce Boss!
    2. Choose the language model you want to use, as long as as it is English (US) which corresponds to en-US. The skill is i18n-ready. (Hint, hint...)
    3. Choose the Custom interaction model.
    4. Choose Alexa-Hosted (Node.js).
  2. It may take a minute, but when your skill is ready, go to the JSON Editor section and replace all the contents with the interaction model from here that matches the locale you chose in the previous step. Click Save Model.
  3. Click on Interfaces and enable Alexa Presentation Language. (Auto Delegation should already be enabled.)
  4. Save that change and build your model.
  5. Click on the Code tab and update the following files with the contents from this repo:
    • index.js with this index.js (Pro tip: click the Raw button to make it easier to copy)
    • package.json with this package.json
  6. Add the following files in folder named lambda with noted content:
    • aplUtils.js from the file aplUtils.js (Utilities for APL Support: Directives - Commands - Datasources)
    • localisation.js from the file localisation.js (Voice & Display prompts - all locales)
    • recipes.js from the file recipes.js (Sauces Name & instructions - all locales)
    • recipeUtils.js from the file recipeUtils.js (Utilities to manage recipes)
  7. Create a folder named documents (for APL Templates).
  8. In the documents folder, create these files with the noted content:
  9. Save and Deploy the function
  10. Click on the Test tab, enable the skill and check it out. Phrases you can try include:
    • open sauce boss (or whatever invocation name you used)
    • show me the recipe for tartar sauce


This library is licensed under the Amazon Software License.

You can’t perform that action at this time.