To build Conversational Actions, you create and deploy the following components:
- Actions project - The logical container for all of your Conversational Actions, web services, and web apps. It also defines project settings and resources that describe how to deploy your project to Actions on Google.
- Invocation model - Defines how users discover and start the Actions inside your project. You build your invocation model with intents and types.
- Conversation model - Defines what users can say to your Actions and how your Actions respond to users. You build your conversational model with intents, types, scenes, and prompts.
- Webhooks - Actions can trigger webhooks to delegate additional logic to your fulfillment services, like generating prompts, validating data, and more.
The following sections describe the tools that you'll use to build Actions.
The Actions API is a set of developer tools for building Actions for the Google Assistant. It consists of the following features:
An open, file-based representation of an Actions project - Build your invocation and conversation models with intents, types, scenes, and prompts. You can edit your Actions projects with your favorite text editor, check them into source control, build automated processes, and more.
A command-line interface (CLI) - The
gactionstool provides a CLI to bootstrap and automate development of your Actions. It lets you initialize standard Action project files, push updates to the Actions console, deploy Action projects, and more. The tool lets you perform many common workflows, such as importing existing projects or starting work on a feature branch using your favorite source control system.
The Actions API - The Actions API is the same API used by the
gactionstool. The Actions API provides a list of REST endpoints to manage your Actions, including for testing and building. The API lets you use JSON requests to perform many common workflows. When using the Actions API there are certain limits and best practices that you should consider.
Webhooks and a Node.js fulfillment library - Your Actions can delegate business logic to your web services with webhooks and a JSON based messaging format. We provide a Node.js fulfillment library that provides idiomatic interfaces for the Conversation Webhook. This library makes it easy to implement many common user flows. For example, some features include extracting parameters from a user query and generating a multimodal experience (voice only and voice and visuals) for Google Assistant.
Actions Builder gives you a powerful and easy-to-use, web-based IDE that's integrated into the Actions console. Since Actions Builder is built on the same technologies as the Actions API, you can use it on its own or together with the Actions API depending on your needs.
The Actions Builder UI is split into the following areas:
- The top menu provides access to the different areas of the Actions console, and you can access Actions Builder on the Develop tab.
- The left menu lets you access all the components to build Actions, like intents and scenes.
- The build area lets you build the component you're working on.
- The details area lets you configure more details about the component you're working on.