Actions on Google supports several ways of identifying users and obtaining user information.

Identifying users

Actions on Google supports two ways to identify users.

Account Linking

Account Linking lets users connect their Google accounts to existing accounts on your service. Accounts are linked with industry standard OAuth 2.0 flows and Actions on Google provides a consistent dialog to guide users through the linking process.

See Account Linking for more information.

Anonymous User Identity

You can anonymously identify users across conversations and devices, even if you don't have your own account system.

This is useful for storing basic state about the user (like preferences, or the number of times they have accessed your action) without the overhead of maintaining an authentication system. This works much like a web browser cookie except that it's consistent for the same user across devices.

However, like a cookie, users can reset this identifier, so don't store important user data keyed off this identifier, because once it's reset, that information is no longer accessible by the user.

See the getUser().user_id reference information in API.AI reference or Actions SDK reference.

Requesting user information

Some pieces of information are hard to obtain by parsing natural language (for example, postal addresses). You can programmatically obtain certain information about users (such as device location and person’s name) using a built-in dialog that the Google Assistant provides.

See Requesting user information for more information.