Episode Intents


Introduction

An episode for TV, radio, video game, or other media which can be part of a series or season. These intents let users request actions related to episodes, such as starting playback of a particular episode or searching for a particular episode.

This document provides a quick reference to the Episode intents and corresponding slots. For details around how these intents are specified, see Understanding the Structure of the Built-in Intent Library.

Intent Signature

Use the intent signature as the intent name in your intent schema. This example shows a schema with two Episode intents:

{
    "intents": [
        {
            "name": "AMAZON.ExitAction<object@Episode>"
        }, 
        {
            "name": "AMAZON.WatchAction<object@Episode>"
        }
    ]
}

For more about the components of this signature, see Understanding the Structure of the Built-in Intent Library.

To see the full JSON format for intents, see Interaction Model Schema. You can also use the developer console user interface to add the intents and then see the JSON code in the JSON Editor.

Episode Intents

The following table summarizes the available Episode intents and the set of slots that may be included. For each intent, the sections below the table show:

  • A sample utterance that would invoke the intent.
  • The JSON you include in your intent schema if you want to use the intent.
  • An example of the IntentRequest sent to your skill for the provided sample utterance, illustrating the slots that may be included. For brevity, these samples leave out the full set of properties that are normally part of a complete IntentRequest.

    Note that if your interaction model includes multiple intents with similar utterances, your results may vary from these examples.

For definitions of the slots used in these intents, see Episode Slots.

Intent Signature Example Utterance Possible Slots
AMAZON.ExitAction<object@Episode> "exit this gilmore girls episode" object.type
object.isPartOfTVSeries.name
AMAZON.PlaybackAction<object@Episode> "play the latest episode of game of thrones" object.select
object.hasPart
object.partOfSeries.name
object.type
object.name
object.partOfSeries.type
object.quantity
object.partOfTVSeries.name
object.sort
AMAZON.SearchAction<object@Episode> "find the latest episode of big bang theory" object.partOfTVSeries.name
object.type
object.partOfSeason.type
object.isPartOf.seasonNumber
object.episode.type
object.sort
AMAZON.SearchAction<object@Episode[description]> "what was last night's episode about" object.datePublished
object.type
AMAZON.SuspendAction<object@Episode> "pause this episode" object.type
AMAZON.WatchAction<object@Episode> "watch the previous episode of orange is the new black" object.partOfTVSeries.name
object.type
object.select

ExitAction<object@Episode>

User: exit this gilmore girls episode

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.ExitAction<object@Episode>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.ExitAction<object@Episode>", 
            "slots": {
                "object.isPartOfTVSeries.name": {
                    "name": "object.isPartOfTVSeries.name", 
                    "value": "gilmore girls"
                }, 
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }
            }
        }
    }
}

PlaybackAction<object@Episode>

User: play the latest episode of game of thrones

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.PlaybackAction<object@Episode>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.PlaybackAction<object@Episode>", 
            "slots": {
                "object.sort": {
                    "name": "object.sort", 
                    "value": "latest"
                }, 
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }, 
                "object.partOfTVSeries.name": {
                    "name": "object.partOfTVSeries.name", 
                    "value": "game of thrones"
                }
            }
        }
    }
}

SearchAction<object@Episode>

User: find the latest episode of big bang theory

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.SearchAction<object@Episode>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.SearchAction<object@Episode>", 
            "slots": {
                "object.sort": {
                    "name": "object.sort", 
                    "value": "latest"
                }, 
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }, 
                "object.partOfTVSeries.name": {
                    "name": "object.partOfTVSeries.name", 
                    "value": "big bang theory"
                }
            }
        }
    }
}

SearchAction<object@Episode[description]>

User: what was last night's episode about

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.SearchAction<object@Episode[description]>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.SearchAction<object@Episode[description]>", 
            "slots": {
                "object.datePublished": {
                    "name": "object.datePublished", 
                    "value": "2016-11-21"
                }, 
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }
            }
        }
    }
}

SuspendAction<object@Episode>

User: pause this episode

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.SuspendAction<object@Episode>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.SuspendAction<object@Episode>", 
            "slots": {
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }
            }
        }
    }
}

WatchAction<object@Episode>

User: watch the previous episode of orange is the new black

Intent Schema:

{
    "intents": [
        {
            "name": "AMAZON.WatchAction<object@Episode>"
        }
    ]
}

Request:

{
    "request": {
        "type": "IntentRequest", 
        "locale": "en-US", 
        "intent": {
            "name": "AMAZON.WatchAction<object@Episode>", 
            "slots": {
                "object.select": {
                    "name": "object.select", 
                    "value": "previous"
                }, 
                "object.type": {
                    "name": "object.type", 
                    "value": "episode"
                }, 
                "object.partOfTVSeries.name": {
                    "name": "object.partOfTVSeries.name", 
                    "value": "orange is the new black"
                }
            }
        }
    }
}

Episode Slots

The Episode intents can return slot values to your skill. You do not include these slots in your intent schema – they are generated automatically from the intent signature.

Note that not all available slots are returned from every intent. See the table in Episode Intents to see which slots are applicable to each intent.

The following table shows the slots the Episode intents can return. For each slot, the table includes:

  • The slot name.
  • An example utterance for the slot.
  • The JSON that would be sent to your skill for the sample utterance.
  • If applicable, the name of the slot type used by the slot. You can see details about slot types in the Slot Type Reference.
Slot Name Utterance Slot Values

object.datePublished

"…what was last night's"

AMAZON.DATE

{
    "name": "object.datePublished", 
    "value": "2016-11-21"
}

object.episode.type

"… finale"

{
    "name": "object.episode.type", 
    "value": "finale"
}

object.hasPart

"… episodes"

AMAZON.TVSeries

{
    "name": "object.hasPart", 
    "value": "episodes"
}

object.isPartOf.seasonNumber

"… six"

AMAZON.NUMBER

{
    "name": "object.isPartOf.seasonNumber", 
    "value": "6"
}

object.isPartOfTVSeries.name

"…exit this gilmore girls"

AMAZON.TVSeries

{
    "name": "object.isPartOfTVSeries.name", 
    "value": "gilmore girls"
}

object.name

"… of homeland"

AMAZON.TVSeries

{
    "name": "object.name", 
    "value": "homeland"
}

object.partOfSeason.type

"…find the season"

{
    "name": "object.partOfSeason.type", 
    "value": "season"
}

object.partOfSeries.name

"… in the game of thrones"

AMAZON.TVSeries

{
    "name": "object.partOfSeries.name", 
    "value": "game of thrones"
}

object.partOfSeries.type

"… series"

{
    "name": "object.partOfSeries.type", 
    "value": "series"
}

object.partOfTVSeries.name

"… of orange is the new black"

AMAZON.TVSeries

{
    "name": "object.partOfTVSeries.name", 
    "value": "orange is the new black"
}

object.quantity

"… two"

AMAZON.NUMBER

{
    "name": "object.quantity", 
    "value": "2"
}

object.select

"… next"

{
    "name": "object.select", 
    "value": "next"
}

object.sort

"… i just added"

{
    "name": "object.sort", 
    "value": "just added"
}

object.type

"… episode"

{
    "name": "object.type", 
    "value": "episode"
}

Built-in Intent Library Documentation

Episode is used in the following built-in intent library category:

Navigate to all built-in intents in the Built-in Intent Library.

See all available slot types in the Slot Type Reference.

Learn more about using the built-in intent library:

Learn more about building your voice interface:

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 contact us.


Was this page helpful?

Last updated: Nov 28, 2023