Connect to the YouTube Analytics API with a custom OAuth client
Go to siteimport { axios } from "@pipedream/platform"
export default defineComponent({
props: {
youtube_analytics_api_custom_app: {
type: "app",
app: "youtube_analytics_api_custom_app",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://www.googleapis.com/oauth2/v1/userinfo`,
headers: {
Authorization: `Bearer ${this.youtube_analytics_api_custom_app.$auth.oauth_access_token}`,
},
})
},
})
YouTube (Analytics API) - Custom App uses OAuth authentication. When you connect your YouTube (Analytics API) - Custom App account, Pipedream will open a popup window where you can sign into YouTube (Analytics API) - Custom App and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any YouTube (Analytics API) - Custom App API.
Pipedream requests the following authorization scopes when you connect your account:
email
profile
https://www.googleapis.com/auth/yt-analytics-monetary.readonly
https://www.googleapis.com/auth/yt-analytics.readonly
GET
https://accounts.google.com/o/oauth2/v2/auth
?
client_id={{custom_fields.client_id}}
&
redirect_uri={{oauth.redirect_uri}}
&
state={{oauth.state}}
&
response_type=code
&
scope={{oauth.space_separated_scopes}}
&
prompt=consent
&
access_type=offline
POST
https://oauth2.googleapis.com/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{custom_fields.client_id}}
&
client_secret={{custom_fields.client_secret}}
&
redirect_uri={{oauth.redirect_uri}}
&
grant_type=authorization_code
&
code={{oauth.code}}
POST
https://oauth2.googleapis.com/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{custom_fields.client_id}}
&
client_secret={{custom_fields.client_secret}}
&
grant_type=refresh_token
&
refresh_token={{oauth.refresh_token}}