import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
polar: {
type: "app",
app: "polar",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.polar.sh/v1/oauth2/userinfo`,
headers: {
Authorization: `Bearer ${this.polar.$auth.oauth_access_token}`,
},
})
},
})
Polar uses OAuth authentication. When you connect your Polar account, Pipedream will open a popup window where you can sign into Polar and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Polar API.
Pipedream requests the following authorization scopes when you connect your account:
openid
email
profile
user:read
GET
https://polar.sh/oauth2/authorize
?
client_id={{oauth.client_id}}
&
redirect_uri={{oauth.redirect_uri}}
&
response_type=code
&
scope={{oauth.space_separated_scopes}}
POST
https://api.polar.sh/v1/oauth2/token
accept: application/json
redirect_uri={{oauth.redirect_uri}}
&
grant_type=authorization_code
&
code={{oauth.code}}
&
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
POST
https://api.polar.sh/v1/oauth2/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}}