shipping-api-v2
The Amazon Shipping API is designed to support outbound shipping use cases both for orders originating on Amazon-owned marketplaces as well as external channels/marketplaces. With these APIs, you can request shipping rates, create shipments, cancel shipments, and track shipments.
Learn more about this Selling Partner API by visiting the official documentation.
Also, see the generated documentation for this API client.
npm install @sp-api-sdk/shipping-api-v2
import {SellingPartnerApiAuth} from '@sp-api-sdk/auth'
import {ShippingApiClient} from '@sp-api-sdk/shipping-api-v2'
const auth = new SellingPartnerApiAuth({
clientId: process.env.LWA_CLIENT_ID,
clientSecret: process.env.LWA_CLIENT_SECRET,
refreshToken: 'Atzr|…',
})
const client = new ShippingApiClient({
auth,
region: 'eu',
})
In order to retry rate limited requests (HTTP 429), you can configure the API client as such:
const client = new ShippingApiClient({
auth,
region: 'eu',
rateLimiting: {
retry: true,
// Optionally specify a callback that will be called on every retry.
onRetry: (retryInfo) => {
console.log(retryInfo)
},
},
})
The rate limits used for each route are specified in the API documentation.
You can enable logging for both SP-API requests and responses by configuring the logging.request
and logging.response
properties.
const client = new ShippingApiClient({
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
.
MIT
╚⊙ ⊙╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝
╚═(███)═╝