import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
xero_payroll: {
type: "app",
app: "xero_payroll",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.xero.com/connections`,
headers: {
Authorization: `Bearer ${this.xero_payroll.$auth.oauth_access_token}`,
},
})
},
})
Xero Payroll (non-US) uses OAuth authentication. When you connect your Xero Payroll (non-US) account, Pipedream will open a popup window where you can sign into Xero Payroll (non-US) and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Xero Payroll (non-US) API.
Pipedream requests the following authorization scopes when you connect your account:
offline_accessopenidprofileemailaccounting.settings.readpayroll.employees.readpayroll.settings.readpayroll.payruns.readpayroll.payslip.readpayroll.timesheets.readGEThttps://login.xero.com/identity/connect/authorize?client_id={{oauth.client_id}}&redirect_uri={{oauth.redirect_uri}}&state={{oauth.state}}&response_type=code&scope={{oauth.space_separated_scopes}}POSThttps://identity.xero.com/connect/tokencontent-type: application/x-www-form-urlencodedaccept: application/jsonclient_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&redirect_uri={{oauth.redirect_uri}}&grant_type=authorization_code&code={{oauth.code}}POSThttps://identity.xero.com/connect/tokencontent-type: application/x-www-form-urlencodedaccept: application/jsonclient_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&grant_type=refresh_token&refresh_token={{oauth.refresh_token}}