Action

Action represents a specific interaction App supports, it can be a single shot action, or a multi-step interaction.

JSON representation
{
  "name": string,
  "fulfillment": {
    object(Fulfillment)
  },
  "intent": {
    object(Intent)
  },
  "description": string,
  "signInRequired": boolean,
}
Fields
name

string

Name of the action. If a built-in action name is used (starts with actions.), intent and description are implied. They must be blank.

For built-in intents or custom intents, use a custom action name.

fulfillment

object(Fulfillment)

How to execute this action.

intent

object(Intent)

Intent that this action fulfills. Built-in intents start with actions..

description

string

English description what the action does. This is mainly used for Google to review the action or debugging purpose. This description will not be shown to users. It must be less than 100 ASCII letters.

signInRequired

boolean

Indicates whether sign-in is required for this action. Note this is valid only when App has AccountLinking specified inside Manifest.

Fulfillment

How to execute an action.

JSON representation
{
  "conversationName": string,
}
Fields
conversationName

string

Execute an action via a conversation fulfillment. This references the "name" field of Conversations in ActionPackage.conversations field.

Intent

Intent and its associated query patterns which are used to match user's queries. Used for initial triggering.

JSON representation
{
  "name": string,
  "parameters": [
    {
      object(Parameter)
    }
  ],
  "trigger": {
    object(Trigger)
  },
}
Fields
name

string

Indicates the name of this intent, e.g., BOOK_A_TABLE. Can be a built-in intent, starting with actions., in which case parameters and query patterns are implied and are therefore ignored.

parameters[]

object(Parameter)

The list of parameters within the queryPatterns. All of the parameters within queryPatterns must be given.

trigger

object(Trigger)

Triggering specification for this intent.

Parameter

A parameter used within query pattterns. This is a structured representation of the parameters in the queryPatterns (e.g. $Color:color).

JSON representation
{
  "name": string,
  "type": string,
}
Fields
name

string

Name of the parameter, e.g. color.

type

string

Type of the parameter. Can be a common type or custom type declared as part of the action package, e.g. Color.

Trigger

Specification for a trigger.

JSON representation
{
  "queryPatterns": [
    string
  ],
}
Fields
queryPatterns[]

string

List of patterns used to identify the specified intent. Query patterns must only refer to parameters declared in the parameters field.