Google Assistant : How to get user email id from Google Assistant Webhook - webhooks

I'm developing a project, where the current user signed in details like the user email id is required for the webhook.
In Google assistant implementation guide, ref it is shown that the signature consists of user info like name, location and email, ref
JWT IO Signature Request
I'm following the same approach, i have my Google assistant signature from my webhook headers, in jwt.io site if i update the encoded signature, then the user info such as name, email and location details are not available.
How do we get user info?

Related

how to take mail id of user using the google assistant chatbot

I am new to build chat-bots. Here I have made a chat-bot using dialog flow and integrated with google assistant. Is their any way that we can get the mail id of the user interacting with the chat-bot so that we can send mail to their respective id.
Only with the user's permission to give it to you. You can request that they sign in using Google Sign In for Assistant. When they do so, their profile information is available. If their email address is part of their profile, it will be included.

How can i fetch logged in users email id in dialogflow?

How can I get logged in users email id in dialogflow and send it to webhook.
I am integrating it with google assistant.
You can get user's email by asking them to link their google account with your agent.
https://developers.google.com/actions/identity/google-sign-in

Google Action, Implicit Account linking DialogFlow webhook

We are planning to support voice action in our application to add user specific action. For example : If user says "Add milk" to google assistant, "milk" is going to added in application db on user account. For that, I have used Account linking(Implicit Flows) in Google Action as per this tutorial (https://developers.google.com/actions/identity/oauth2-implicit-flow).
When i test dialog follow agent, i have enable "Sign-In" required checkbox for all intent including welcome intent. So that, when i invoke my application it will ask the user to sign in to link account to google.
I got the link account message and It has successfully linked. It says "Great! Your account is now linked to Google" message.
Now, I have used webhook url to handle "add " intent. And intent is getting call our api as per the webhook. But when i print header in request, i couldn't see application Access Token, which is saved in Google. But as per the document (https://developers.google.com/actions/identity/oauth2-implicit-flow#handle_data_access_requests) it will be available in header. But i cannot see access token in api request.
Why is the Bearer access token missing in request?
That section gives generic information about the auth token. See the paragraph that says
The specific method of attaching an access token to a request depends on the Google service that's calling your API. See the service's developer documentation for details.
The access token is available in the User object in the accessToken field. You can get the User object using the conv.user object if you're using the actions-on-google library and in the User environment attribute if you're using the multivocal library.

Docusign API - Authorization Code Grant- Secretkey

For the Authorization Code Grant, is the Secret Key supposed to be mapped to
each individual user?
When an email is sent out, what would be the sender's email?
thanks,
J
Additional info for Larry:
This is awesome!. Stockflow is really actively monitored by Docusign! I'm using JWT.
I have a user configured.
I assume email body will be similar to following one.
My question is if secret key is used to identify application, the customer knows the email is sent from the application, but how does he know which employee using the application send the email?
Please see following email body: Test --------------> User name
maaaa#example.com ------->User's email (This indicates the user's email address sending document via docusign)
signer name,
Please DocuSign a.pdf
Thank You, Test
For Authorization Code grant, the application identifies itself via its client id (Integration Key) and its Secret.
The secret is associated with the application, not with the user.
When you say "email ... sent out" what email are you referring to?

Account Linking API.AI user email scope

I have AWS Cognito account linking setup with Actions on Google. I have requested the scope of email. I am using API.AI, how can I get the user's email? From what I've read, you get a userId that is basically an anonymous id. How can I get user details?
For getting user details like mail id etc, you would have to enable Account linking on your google home dialog flow console.
You would also have to provide an Oauth2 server to get the authorization done.
Refer to this : https://developers.google.com/actions/identity/account-linking
Once this is done, you will receive an auth_token every time your api.ai app is invoked. You will then have to use this token and retrieve the user details like mail id from Google API services.
Let me know if I need to add more details, in case its not clear.

Resources