Availability

Some built-in slot types show an availability indicator:

Available: The slot type fully available and not considered a preview.

Developer Preview: The slot type is offered as a developer preview and may improve and change as we receive feedback and iterate on the feature. Please provide your feedback in the Alexa Skills Kit forum.

If no availability is shown, the slot type is considered Available.

Numbers, Dates, and Times

This table summarizes the slot types that convert the user's utterance into data types such as numbers and dates. See the sections below for more details and examples.

Converts words that indicate time ("four in the morning", "two p m") into a time value ("04:00", "14:00").

AMAZON.DATE

Converts words that represent dates into a date format.

The date is provided to your service in ISO-8601 date format. Note that the date your service receives in the slot can vary depending on the specific phrase uttered by the user:

Utterances that map to a specific date (such as "today", "now", or "november twenty-fifth") convert to a complete date: 2015-11-25. Note that this defaults to dates on or after the current date (see below for more examples).

Utterances that map to just a specific week (such as "this week" or "next week"), convert a date indicating the week number: 2015-W49.

Utterances that map to the weekend for a specific week (such as "this weekend") convert to a date indicating the week number and weekend: 2015-W49-WE.

Utterances that map to a month, but not a specific day (such as "next month", or "september") convert to a date with just the year and month. Note that the format differs between English and other languages:

All English locales use the format YYYY-MM. For example: 2018-09.

All other languages (French, German, and Japanese) use the format YYYY-MM-XX. For example: 2018-09-XX.

Utterances that map to a year (such as "next year") convert to a date containing just the year. Note that the date format differs between English and other languages:

All English locales use the the format YYYY. For example: 2018.

All other languages (French, German, and Japanese) use the format YYYY-XX-XX. For example: 2018-XX-XX.

Utterances that map to a decade convert to a date indicating the decade: 201X.

Utterances that map to a season (such as "next winter") convert to a date with the year and a season indicator: winter: WI, spring: SP, summer: SU, fall: FA)

Resolving Years

If the user's utterance does not specify a year, Alexa defaults to dates on or after the current date. For example, the utterance "February first" returns the next "February first" date, so the year will depend on the day the user says the utterance:

If today is January 31, 2017, the slot returns 2017-02-01.If today is February 1, 2017, the slot returns 2017-02-01 (today's date).If today is February 2, 2017, the slot returns 2018-02-01 (the next instance of February first).

AMAZON.DURATION

Converts words that indicate durations into a numeric duration.

The duration is provided to your skill in a format based on the ISO-8601 duration format (PnYnMnDTnHnMnS). The P indicates that this is a duration. The n is the numeric value, and the capital letter following the n designates the specific date or time element. For example, P3D means 3 days. A T is used to indicate that the remaining values represent time elements rather than date elements.

AMAZON.FOUR_DIGIT_NUMBER

Provides recognition for special ways four-digit numbers are often spoken. This is useful for input such as PIN codes, validation codes or years that are often said as single or groups of digits. The user can speak the number in a variety of ways. The Alexa service sends your service the recognized digits.

AMAZON.TIME

Converts words that indicate time into time values.

Values that represent a specific time are provided to your skill in ISO-8601 time format. Midnight is represented as 00:00.

Note that this slot also supports time-related utterances that map to a time period such as "evening". This type of utterance returns a time period indicator instead of an ISO-8601 formatted time. For example, "evening" returns the value EV. The following time period indicators can be returned: night: NI, morning: MO, afternoon: AF, evening: EV.

Phrases

Phrase slot types allow for input from a user with fewer constraints on format and content. Make sure that your skill uses no more than one phrase slot per intent.

The following phrase slot type is supported.

Slot Type

Short Description

Examples

Supported Languages

AMAZON.SearchQuery

A search query like you might enter into a search engine, for example for searching a database.

Why is the sky blue
What is the capital of Maryland
Restaurants near me

English (Australia)
English (Canada)
English (India)
English (UK)
English (US)
French (FR)
German
Italian
Japanese
Spanish

When you expect some user input to follow a predictable pattern while other user input is more open-ended, your intent can use a phrase slot to capture the less predictable input while using custom or built-in slots to capture the more predictable input.

AMAZON.SearchQuery

As you think about what users are likely to ask, consider using a built-in or custom slot type to capture user input that is more predictable, and the AMAZON.SearchQuery slot type to capture less-predictable input that makes up the search query.

The following example shows an intent schema for SearchIntent, which uses the AMAZON.SearchQuery slot type and also includes a CityList slot that uses the AMAZON.US_CITY slot type.

Make sure that your skill uses no more than one AMAZON.SearchQuery slot per intent. The Amazon.SearchQuery slot type cannot be combined with another intent slot in sample utterances.

In addition, each sample utterance must include a carrier phrase. The exception is that you can omit the carrier phrase in slot samples. A carrier phrase is the word or words that are part of the utterance, but not the slot, such as "search for" or "find out".

{"intents":[{"name":"SearchIntent","slots":[{"name":"Query","type":"AMAZON.SearchQuery"},{"name":"CityList","type":"AMAZON.US_CITY"}],"samples":["search for {Query} near me","find out {Query}","search for {Query}","give me details about {CityList}"]}]}

See Interaction Model Schema for the complete intent schema compatible with the developer console and the Skill Management API.

List Types

These slot types each represent a list of items. You can extend some of these slot types with additional utterances by defining a custom slot type with the same name and adding the additional items as custom slot type values. For more examples of utterances and slot values, see the sections below.

Important: A built-in 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 the 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 Handling Possible Input Errors.

Provides recognition for local and world cities commonly used by speakers in Australia and New Zealand. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in Australia and New Zealand. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name.

For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in Canada. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in Canada. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in India. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in India. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name.

For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in the United Kingdom. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in the United Kingdom. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in France. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in France. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in Germany. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in Germany. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in Italy. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in Italy. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Provides recognition for local and world cities commonly used by speakers in Spain. This slot type recognizes common variations of city names. The city name sent to your service matches the value provided by the user. That is, the Alexa service does not attempt to convert from the variation to the official city name.

Thousands of popular first names commonly used by speakers in Spain. This slot type recognizes both formal names and nicknames. The name sent to your service matches the value spoken by the user. That is, the Alexa service does not attempt to convert from the nickname to the formal name. For first names that sound alike, but are spelled differently, the Alexa service typically sends your service a single common form.

Extend a Built-in Slot Type with Custom 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 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.

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

Extend a Slot Type

Before you can extend a built-in type, you need to add it to your skill. In the left-hand navigation, note the types under Slot Types. If the slot type to extend is not included, add it to your skill:

From the left-hand navigation, click Add next to Slot Types.

Select the Use an existing slot type from Alexa's built-in library option.

Find the built-in slot type you want to add. You can filter the slot types by name.

Click Add Slot Type for each built-in type to add.

Be sure to save your work as you make changes.

To extend a built-in slot type, add values to it just as you would a custom type. In the left-hand navigation, under Slot Types, select the slot type to edit. Enter each value and click the plus or press Enter.

The built-in intent library incorporates material from Schema.org, which is licensed under the Creative Commons Attribution-ShareAlike License (version 3.0) (the “License”). You may not use this file except in compliance with the License. You may obtain a copy of the License at http://creativecommons.org/licenses/by-sa/3.0/. For questions, please reach out to alexa-ontology-support@amazon.com.