ScaleLeap / amazon-mws-api-sdk

A fully typed TypeScript and Node.js Amazon MWS API Unofficial SDK
https://npm.im/@scaleleap/amazon-mws-api-sdk
MIT License
20 stars 12 forks source link
amazon-mws amazon-mws-libraries mws mws-api mws-sdk nodejs typescript

Amazon MWS API for Node.js

NPM License GitHub Workflow Status Codecov Snyk Semantic Release FOSSA Status

📦 @scaleleap/amazon-mws-api-sdk


A fully typed TypeScript and Node.js SDK library for Amazon MWS API

Download & Installation

npm i -s @scaleleap/amazon-mws-api-sdk

Click here for the full Documentation

Example


import {
  amazonMarketplaces,
  HttpClient,
  Sellers,
  Orders,
  MWS
} from '@scaleleap/amazon-mws-api-sdk'

const mwsOptions = {
  marketplace: amazonMarketplaces.US,
  awsAccessKeyId: '',
  mwsAuthToken: '',
  sellerId: '',
  secretKey: '',
}
// Using sections directly
const main = async () => {
  const http = new HttpClient(mwsOptions)
  /**
   * Get status for Sellers API
   */
  const sellers = new Sellers(http)
  const [serviceStatus] = await sellers.getServiceStatus()
  if (serviceStatus.Status === 'GREEN') {
    console.log(`Sellers API is up on ${serviceStatus.Timestamp}!`)
  }

  /**
   *  List Orders
   */
  const orders = new Orders(http)
  // or
  const [ordersList, requestMeta] = await orders.listOrders({
    MarketplaceId: [amazonMarketplaces.US.id],
    CreatedAfter: new Date(Date.now() - 100 * 24 * 60 * 60 * 1000)
  })

  ordersList.Orders.forEach((order) => {
    console.log(`Order ID is ${order.AmazonOrderId}`)
  })
}

// Using MWS client
const main = async () => {
  const http = new HttpClient(mwsOptions)
  const mws = new MWS(http)
  /**
   * Get status for Sellers API
   */
  const [serviceStatus] = await mws.sellers.getServiceStatus()
  if (serviceStatus.Status === 'GREEN') {
    console.log(`Sellers API is up on ${serviceStatus.Timestamp}!`)
  }

  /**
   *  List Orders
   */
  const [ordersList, requestMeta] = await mws.orders.listOrders({
    MarketplaceId: [amazonMarketplaces.US.id],
    CreatedAfter: new Date(Date.now() - 100 * 24 * 60 * 60 * 1000)
  })

  ordersList.Orders.forEach((order) => {
    console.log(`Order ID is ${order.AmazonOrderId}`)
  })
}

More examples in the /examples folder!

Contributing

Authors or Acknowledgments

License

This project is licensed under the MIT License.

FOSSA Status