import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
lightspeed_x: {
type: "app",
app: "lightspeed_x",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://${this.lightspeed_x.$auth.subdomain}.retail.lightspeed.app/api/2.0/user`,
headers: {
Authorization: `Bearer ${this.lightspeed_x.$auth.oauth_access_token}`,
},
})
},
})
Lightspeed X uses OAuth authentication. When you connect your Lightspeed X account, Pipedream will open a popup window where you can sign into Lightspeed X and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Lightspeed X API.
Pipedream requests the following authorization scopes when you connect your account:
GET
https://secure.retail.lightspeed.app/connect
?
client_id={{oauth.client_id}}
&
redirect_uri={{oauth.redirect_uri}}
&
state={{oauth.state}}
&
response_type=code
POST
https://{{custom_fields.subdomain}}.retail.lightspeed.app/api/1.0/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
&
redirect_uri={{oauth.redirect_uri}}
&
grant_type=authorization_code
&
code={{oauth.code}}
POST
https://{{custom_fields.subdomain}}.retail.lightspeed.app/api/1.0/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}}