Samples on GitHub

Use this page to to filter our samples by the Actions on Google features they support.

Click on the sample name to view and download the full samples on GitHub, then get started to build your own Actions.

Dialogflow

The following table lists our sample Actions projects that use Dialogflow. You can filter this table by the Actions on Google feature(s) you'd like to see used in the sample.

filter_list Filter by
Sample Description Features
Silly Name Maker This app, built entirely in Dialogflow, shows how to create simple intents and parse entity-based user input and re-use it in a speech response. Getting raw text, SSML, Fulfillment via webhook, System entities, Slot filling
Silly Name Maker w/ Webhook
(Node.js, Java)
This is the Silly Name Maker implemented with a webhook. The given webhook uses the Node.js client library to concatenate user entity input with and a response string. Intent arguments, Fulfillment via webhook
Facts about Google
(Node.js, Java)
This app introduces several advanced concepts from the Node.js client library and Dialogflow. This includes Additional Triggering Intents, which are used to introduce new actions to a Dialogflow app, as well as Dialogflow contexts, used to enforce directionality and maintain state in dialog. SSML, Fulfillment via webhook, Custom entities, Multiple actions (deep link/triggering intents), Dialogflow contexts, Setting context from webhook, In-dialog data persistence, Rich Response (i.e. cards, link outs, suggestion chips)
Name Psychic
(Node.js, Java)
This sample illustrates the Permission API for user information, requesting either name or location. Fulfillment via webhook, Helper Intent: "askForPermission"
Conversation Components
(Node.js, Java)
This sample exhibits all of the possible rich, visual elements of a conversation using Dialogflow. Fulfillment via webhook, Rich Response (i.e. cards, link outs, suggestion chips), List selection, Carousel selection, Browse Carousel selection, Media response
Number Genie
(Node.js, Java)
Number Genie (available on eligible Assistant devices - "Ok Google, talk to Number Genie") is a typical example of a quality app for Assistant. In this sample, you can find a well developed persona, sophisticated interactions, and examples of conversation repair. SSML, Fulfillment via webhook, System entities, Slot filling, Multiple actions (deep link/triggering intents), Dialogflow contexts, Setting context from webhook, In-dialog data persistence, Rich Response (i.e. cards, link outs, suggestion chips), Cross-dialog data persistence, VUI Design best practices, Localization
Transactions
(Node.js, Java)
This is a sandbox example of fulfilling the transaction flow. It includes confirming that a user can perform a transaction, getting a delivery address, and confirming that a transaction was successfully completed. Fulfillment via webhook, Transactions
SSML
(Node.js, Java)
This sample demonstrates the use of SSML including prosody and sound effects. SSML, Fulfillment via webhook
Helper Intents
(Node.js, Java)
This sample demonstrates the use of DialogFlow built-in helper intents, including askForPlace, askForConfirmation, and others. Fulfillment via webhook, Helper Intent: "askForConfirmation", Helper Intent: "askForDateTime", Helper Intent: "askForPermission", Helper Intent: "askForPlace", Helper Intent: "askForSignIn"
Updates
(Node.js, Java)
This sample shows an app that gives tips about developing apps for the Google Assistant using Actions on Google. It demonstrates using the Updates API to send notifications to the user. Multiple actions, Fulfillment via webhook, Custom entities, Rich Response (i.e. cards, link outs, suggestion chips), Cross-dialog data persistence, Cloud Firestore, Updates API
Digital Goods
(Node.js)
This sample demonstrates usage of the Digital Goods API to make digital purchases. Transactions, Digital Goods API
GDG Action
(Node.js)
This sample makes use of the Meetup API and Cloud Translation API to provide globally accessible information about Google Developer Groups SSML, Fulfillment via webhook, System entities, Slot filling, Custom entities, Multiple actions (deep link/triggering intents), Dialogflow contexts, In-dialog data persistence, Rich Response (i.e. cards, link outs, suggestion chips), VUI Design best practices, Localization
Interactive Canvas
(Node.js)
This sample demonstrates how to create a simple Interactive Canvas experience using Actions on Google for the Google Assistant. It uses the sendTextQuery API to trigger fulfillment from the UI. Fulfillment via webhook, Interactive Canvas
Snowman
(Node.js)
This sample demonstrates how to create a conversational gaming experience with Interactive Canvas using Actions on Google for the Google Assistant. Fulfillment via webhook, Interactive Canvas

Actions SDK

The following table lists our sample Actions projects that use the Actions SDK. You can filter this table by the Actions on Google feature(s) you'd like to see used in the sample.

filter_list Filter by
Sample Description Features
Say Number
(Node.js, Java)
This sample explores the basics of a single-action app for Assistant with our Node.js Client Library. It includes simple features like accessing user input and SSML manipulation. Getting raw text, SSML, Rich Response (i.e. cards, link outs, suggestion chips)
Conversation Components
(Node.js, Java)
This sample exhibits all of the possible rich, visual elements of a conversation using the Actions SDK. Fulfillment via webhook, Rich Response (i.e. cards, link outs, suggestion chips), List selection, Carousel selection, Browse Carousel selection, Media response
Updates
(Node.js, Java)
This sample shows an app that gives tips about developing apps for the Google Assistant using Actions on Google. It demonstrates using the Updates API to send notifications to the user. Multiple actions, Fulfillment via webhook, Rich Response (i.e. cards, link outs, suggestion chips), Cross-dialog data persistence, Cloud Firestore, Updates API

Smart Home

Want to enable users to control your IoT device with the Google Assistant? Check out our Smart Home sample. This sample uses virtual devices to highlight the functionality of the Smart Home APIs, showing how you can sync device state to Google's HomeGraph and execute user's device control commands.