notifications-api-v1
The Selling Partner API for Notifications lets you subscribe to notifications that are relevant to a selling partner's business. Using this API you can create a destination to receive notifications, subscribe to notifications, delete notification subscriptions, and more.
For more information, see the Notifications Use Case Guide.
![XO code style](https://badgen.net/badge/code%20style/XO/cyan)
Documentation
Learn more about this Selling Partner API by visiting the official documentation.
Also, see the generated documentation for this API client.
Installing
npm install @sp-api-sdk/notifications-api-v1
Getting Started
With grantless API
import {SellingPartnerApiAuth, AuthorizationScope} from '@sp-api-sdk/auth'
import {NotificationsApiClient} from '@sp-api-sdk/notifications-api-v1'
const auth = new SellingPartnerApiAuth({
clientId: process.env.LWA_CLIENT_ID,
clientSecret: process.env.LWA_CLIENT_SECRET,
scopes: [AuthorizationScope.NOTIFICATIONS],
accessKeyId: '',
secretAccessKey: '',
region: 'eu-west-1',
role: {
arn: 'arn:aws:iam::…',
}
})
const client = new NotificationsApiClient({
auth,
region: 'eu'
})
With access token
import {SellingPartnerApiAuth} from '@sp-api-sdk/auth'
import {NotificationsApiClient} from '@sp-api-sdk/notifications-api-v1'
const auth = new SellingPartnerApiAuth({
clientId: process.env.LWA_CLIENT_ID,
clientSecret: process.env.LWA_CLIENT_SECRET,
refreshToken: 'Atzr|…',
accessKeyId: '',
secretAccessKey: '',
region: 'eu-west-1',
role: {
arn: 'arn:aws:iam::…',
},
})
const client = new NotificationsApiClient({
auth,
region: 'eu',
})
Rate Limiting
In order to retry rate limited requests (HTTP 429), you can configure the API client as such:
const client = new NotificationsApiClient({
auth,
region: 'eu',
rateLimiting: {
retry: true,
onRetry: (retryInfo) => {
console.log(retryInfo)
},
},
})
The rate limits used for each route are specified in the API documentation.
Logging
You can enable logging for both SP-API requests and responses by configuring the logging.request
and logging.response
properties.
const client = new NotificationsApiClient({
auth,
region: 'eu',
logging: {
request: {
logger: console.debug
},
response: {
logger: console.debug
},
error: true,
},
})
Specifying true
will use the default options, specifying an object will allow you to override the default options.
This uses axios-logger under the hood.
By default, if enabled, the request
and response
loggers will use console.info
and the error
logger will use console.error
.
License
MIT
Miscellaneous
╚⊙ ⊙╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝