Custom Conversational Actions

The Actions on Google platform allows you to build custom conversational Actions by using the Actions console web tool and the Conversation HTTP/JSON Webhook API.

You can define custom intents that users can trigger through invocation phrases to get a response from your fulfillment service, for example, when they want to look up information, get a personalized recommendation, or perform transactions involving digital payments.

Start building Try the samples

Key features and capabilities

The Actions on Google platform supports these key features and capabilities for building custom conversational Actions.

Actions console

A web-based tool that Google provides to simplify your Actions development; you can create, maintain, test, and publish your Actions using the console. You define and manage a collection of user intents and their associated fulfillment in an Actions project; Google maintains your Actions project in a cloud backend.

The Actions console is integrated with Dialogflow (previously known as Api.ai), a powerful conversation development tool that uses AI and natural language processing to parse user input and extract the parameters that your fulfillment needs.

Fulfillment client libraries

To easily build handlers for user intents and implement recommended conversational strategies in your Action, you can use one of our Actions on Google fulfillment client libraries in the programming language of your choice.

The Java/Kotlin client library and the Node.js client library allow you flexibly create and deploy webhook code that's suited to your particular fulfillment hosting environment.

Rich visual cards and audio playback On Google Assistant-enabled devices that have the prerequisite surface capabilities, you can present conversational responses using rich visual user interface components, such as cards with text and images, lists, and suggestion chips.

Your custom conversational responses can also include audio for playback, as well as text-to-speech (TTS) output that you can enhance using SSML and effects from our sound library.

Account linking You can connect your users' Google accounts with user accounts in your authentication system. Account linking for Actions on Google uses Google Sign-In, Google's secure authentication system, and optionally, OAuth 2.0, the industry-standard protocol for authorization.
Transactions Transactions let you build Actions that handle purchases (for example, ordering a package or buying a digital subscription). You can integrate these types of transactions in your Actions: physical goods transactions with Google Pay (Google-managed payments) or with merchant-managed payments, or digital goods transactions.

To learn more about these and additional features, we encourage you to browse the guides listed in the left-navigation.

Understand how it works

Unlike with traditional mobile and desktop apps, which use computer-centric paradigms, users interact with Actions for the Assistant through natural-sounding, back and forth conversation.

Smart speaker example
Figure 1: Example of using an Action on a smart speaker

When you build an Action for the Assistant, you design your conversations for a variety of surfaces, such as a voice-centric conversation for voice-activated speakers or a visual conversation on a surface that the Assistant supports. This lets users get things done quickly through either voice or visual affordances.

Users can invoke your Actions from surfaces such as these:

  • Wear OS devices
  • Assistant-enabled headphones
  • Chromebooks
  • Android TV
  • Android phones and tablets
  • Smart displays and speakers
  • iPhones

Your Actions run entirely in the cloud, even when users talk to them on their phone, smart home device, or watch. The user’s device sends the user’s utterance to the Assistant, which routes it to your fulfillment service via HTTPS POST requests.

Your fulfillment figures out a relevant response and sends that back to the Assistant, which ultimately returns it to the user.

Data flow from user to fulfilment via the Assistant and vice versa
Figure 2: How the Google Assistant sends the user's request to a fulfillment service.

Implementation path

1 Design the Action Conversation design defines the interactions between a user and your Action. To get started with designing your conversational flows, see the Design overview.

To implement the recommended conversational strategies, you can refer to these guides:

2 Develop the Action After you've mapped out the conversational flows, you can create an Actions project, define your Actions, and build the corresponding fulfillment. To learn how to perform these steps using the Actions on Google integration with Dialogflow, see the Dialogflow tutorial.

You can enhance and extend your Action's capabilities, using platform features such as:

To test your Action before publishing it, you can use the Actions simulator.

3 Publish the Action Publishing is the general process that makes your Actions available to users. To publish an Action, you prepare the Actions project draft for release and then submit it to Google for review. To learn more, see the publishing guide.

You can generate a URL that will link directly to the specific Action, on a per-Action basis. To learn more about this feature, see the Action links guide.

The Actions console supports release environments so that you can give a limited set of users access to test a new Action, or newer version of your existing Action, before deploying it to the public. This is described in the Alpha and Beta release environments guide.

To learn how to promote and market your Actions on the web and mobile directory, see the Actions directory guide.

4 Grow your user base and user engagement

To leverage your existing web and mobile app user base, you can connect your other properties (such as websites and Android apps) to your Actions project. This is described in the Brand verification guide.

You can localize your Actions for the Google Assistant to provide customized experiences for different languages and locales that users can set on their devices. In addition, you can restrict access to your Actions based on regions, or the physical location of your users. To learn how to do this, see Build Localized Actions

You can use the Actions console to track analytics such as your Action's usage, health, and discovery. To learn about this, see the Analytics and Health guide.

Next steps

Follow the Build Actions for the Google Assistant (Level 1) codelab for detailed step-by-step instructions to begin building your custom conversational Action.

Explore these additional resources for building custom conversational Actions: