@sp-api-sdk/solicitations-api-v1 1.7.5 → 1.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,6 +2,9 @@
2
2
 
3
3
  With the Solicitations API you can build applications that send non-critical solicitations to buyers. You can get a list of solicitation types that are available for an order that you specify, then call an operation that sends a solicitation to the buyer for that order. Buyers cannot respond to solicitations sent by this API, and these solicitations do not appear in the Messaging section of Seller Central or in the recipient's Message Center. The Solicitations API returns responses that are formed according to the <a href=https://tools.ietf.org/html/draft-kelly-json-hal-08>JSON Hypertext Application Language</a> (HAL) standard.
4
4
 
5
+ [![npm version](https://badgen.net/npm/v/@sp-api-sdk/solicitations-api-v1)](https://www.npmjs.com/package/@sp-api-sdk/solicitations-api-v1)
6
+ [![XO code style](https://badgen.net/badge/code%20style/XO/cyan)](https://github.com/xojs/xo)
7
+
5
8
  ## Documentation
6
9
 
7
10
  Learn more about this Selling Partner API by visiting the [official documentation](https://github.com/amzn/selling-partner-api-docs/tree/main/references/solicitations-api/solicitations.md).
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SolicitationsApiClient = exports.RATE_LIMITS = void 0;
3
+ exports.SolicitationsApiClient = exports.clientRateLimits = void 0;
4
4
  /* eslint-disable prefer-regex-literals */
5
5
  const common_1 = require("@sp-api-sdk/common");
6
6
  const api_model_1 = require("./api-model");
7
7
  const error_1 = require("./error");
8
- exports.RATE_LIMITS = [
8
+ exports.clientRateLimits = [
9
9
  {
10
10
  method: 'get',
11
11
  urlRegex: new RegExp('^/solicitations/v1/orders/[^/]*$'),
@@ -21,20 +21,23 @@ exports.RATE_LIMITS = [
21
21
  ];
22
22
  class SolicitationsApiClient extends api_model_1.SolicitationsApi {
23
23
  constructor(parameters) {
24
- const region = common_1.awsRegionByCode[parameters.region] ?? parameters.region;
24
+ const config = common_1.sellingPartnerRegions[parameters.region];
25
+ if (!config) {
26
+ throw new error_1.SolicitationsApiError(`Unknown region: ${parameters.region}`);
27
+ }
25
28
  const { rateLimiting, ...clientParameters } = parameters;
26
- const axiosParameters = { ...clientParameters, region };
29
+ const axiosParameters = {
30
+ ...clientParameters,
31
+ region: config.awsRegion,
32
+ };
27
33
  if (rateLimiting?.retry) {
28
- axiosParameters.rateLimits = exports.RATE_LIMITS;
34
+ axiosParameters.rateLimits = exports.clientRateLimits;
29
35
  axiosParameters.onRetry = rateLimiting.onRetry;
30
36
  }
31
37
  const axiosInstance = (0, common_1.createAxiosInstance)(axiosParameters);
32
38
  const configuration = new api_model_1.Configuration();
33
39
  const environment = parameters.sandbox ? 'sandbox' : 'production';
34
- const endpoint = common_1.endpoints[environment][region];
35
- if (!endpoint) {
36
- throw new error_1.SolicitationsApiError(`Unknown region : ${region}`);
37
- }
40
+ const endpoint = config.endpoints[environment];
38
41
  super(configuration, endpoint, axiosInstance);
39
42
  }
40
43
  }
@@ -1,8 +1,8 @@
1
1
  /* eslint-disable prefer-regex-literals */
2
- import { endpoints, awsRegionByCode, createAxiosInstance } from '@sp-api-sdk/common';
2
+ import { sellingPartnerRegions, createAxiosInstance } from '@sp-api-sdk/common';
3
3
  import { Configuration, SolicitationsApi } from './api-model';
4
4
  import { SolicitationsApiError } from './error';
5
- export const RATE_LIMITS = [
5
+ export const clientRateLimits = [
6
6
  {
7
7
  method: 'get',
8
8
  urlRegex: new RegExp('^/solicitations/v1/orders/[^/]*$'),
@@ -18,20 +18,23 @@ export const RATE_LIMITS = [
18
18
  ];
19
19
  export class SolicitationsApiClient extends SolicitationsApi {
20
20
  constructor(parameters) {
21
- const region = awsRegionByCode[parameters.region] ?? parameters.region;
21
+ const config = sellingPartnerRegions[parameters.region];
22
+ if (!config) {
23
+ throw new SolicitationsApiError(`Unknown region: ${parameters.region}`);
24
+ }
22
25
  const { rateLimiting, ...clientParameters } = parameters;
23
- const axiosParameters = { ...clientParameters, region };
26
+ const axiosParameters = {
27
+ ...clientParameters,
28
+ region: config.awsRegion,
29
+ };
24
30
  if (rateLimiting?.retry) {
25
- axiosParameters.rateLimits = RATE_LIMITS;
31
+ axiosParameters.rateLimits = clientRateLimits;
26
32
  axiosParameters.onRetry = rateLimiting.onRetry;
27
33
  }
28
34
  const axiosInstance = createAxiosInstance(axiosParameters);
29
35
  const configuration = new Configuration();
30
36
  const environment = parameters.sandbox ? 'sandbox' : 'production';
31
- const endpoint = endpoints[environment][region];
32
- if (!endpoint) {
33
- throw new SolicitationsApiError(`Unknown region : ${region}`);
34
- }
37
+ const endpoint = config.endpoints[environment];
35
38
  super(configuration, endpoint, axiosInstance);
36
39
  }
37
40
  }
@@ -1,7 +1,8 @@
1
- import type { ClientConfiguration, RateLimit, OnRetryHandler } from '@sp-api-sdk/common';
1
+ import type { ClientConfiguration, SellingPartnerRegion, RateLimit, OnRetryHandler } from '@sp-api-sdk/common';
2
2
  import { SolicitationsApi } from './api-model';
3
- export declare const RATE_LIMITS: RateLimit[];
3
+ export declare const clientRateLimits: RateLimit[];
4
4
  export interface ClientParameters extends Omit<ClientConfiguration, 'rateLimits' | 'onRetry'> {
5
+ region: SellingPartnerRegion;
5
6
  rateLimiting?: {
6
7
  retry: boolean;
7
8
  onRetry?: OnRetryHandler;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@sp-api-sdk/solicitations-api-v1",
3
3
  "author": "Vincent Mesquita <vincent.mesquita@bizon.solutions>",
4
4
  "description": "With the Solicitations API you can build applications that send non-critical solicitations to buyers. You can get a list of solicitation types that are available for an order that you specify, then call an operation that sends a solicitation to the buyer for that order. Buyers cannot respond to solicitations sent by this API, and these solicitations do not appear in the Messaging section of Seller Central or in the recipient's Message Center. The Solicitations API returns responses that are formed according to the JSON Hypertext Application Language (HAL) standard.",
5
- "version": "1.7.5",
5
+ "version": "1.7.6",
6
6
  "main": "dist/cjs/index.js",
7
7
  "module": "dist/es/index.js",
8
8
  "types": "dist/types/index.d.ts",
@@ -25,8 +25,8 @@
25
25
  "test": "NODE_ENV='test' yarn jest"
26
26
  },
27
27
  "dependencies": {
28
- "@sp-api-sdk/auth": "^1.9.5",
29
- "@sp-api-sdk/common": "^1.7.7",
28
+ "@sp-api-sdk/auth": "^1.9.6",
29
+ "@sp-api-sdk/common": "^1.7.8",
30
30
  "axios": "^0.24.0"
31
31
  },
32
32
  "repository": {
@@ -48,5 +48,5 @@
48
48
  "sp sdk",
49
49
  "solicitations api"
50
50
  ],
51
- "gitHead": "e8c21d7d481263e8a6663ee11f6708d4dc6968b6"
51
+ "gitHead": "f21b5cb511abd110bf1f07843558719993f36187"
52
52
  }