import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
google_contacts: {
type: "app",
app: "google_contacts",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://people.googleapis.com/v1/people/me`,
headers: {
Authorization: `Bearer ${this.google_contacts.$auth.oauth_access_token}`,
},
params: {
personFields: `names,emailAddresses`,
},
})
},
})
Google People (Contacts) uses OAuth authentication. When you connect your Google People (Contacts) account, Pipedream will open a popup window where you can sign into Google People (Contacts) and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Google People (Contacts) API.
Pipedream requests the following authorization scopes when you connect your account:
email
profile
https://www.googleapis.com/auth/contacts.readonly
https://www.googleapis.com/auth/contacts
https://www.googleapis.com/auth/contacts.other.readonly
GET
https://accounts.google.com/o/oauth2/auth
?
client_id={{oauth.client_id}}
&
state={{oauth.state}}
&
redirect_uri={{oauth.redirect_uri}}
&
response_type=code
&
scope={{oauth.space_separated_scopes}}
&
access_type=offline
&
prompt=consent
POST
https://oauth2.googleapis.com/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
&
grant_type=authorization_code
&
code={{oauth.code}}
&
redirect_uri={{oauth.redirect_uri}}
POST
https://oauth2.googleapis.com/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
&
grant_type=refresh_token
&
refresh_token={{oauth.refresh_token}}