@sp-api-sdk/vendor-orders-api-v1 1.7.0 → 1.7.4
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,15 @@
|
|
|
2
2
|
|
|
3
3
|
The Selling Partner API for Retail Procurement Orders provides programmatic access to vendor orders data.
|
|
4
4
|
|
|
5
|
+
[](https://www.npmjs.com/package/@sp-api-sdk/vendor-orders-api-v1)
|
|
6
|
+
[](https://github.com/xojs/xo)
|
|
7
|
+
|
|
8
|
+
## Documentation
|
|
9
|
+
|
|
10
|
+
Learn more about this Selling Partner API by visiting the [official documentation](https://github.com/amzn/selling-partner-api-docs/tree/main/references/vendor-orders-api/vendorOrders.md).
|
|
11
|
+
|
|
12
|
+
Also, see the [generated documentation](https://bizon.github.io/selling-partner-api-sdk/modules/_sp_api_sdk_vendor_orders_api_v1.html) for this API client.
|
|
13
|
+
|
|
5
14
|
## Installing
|
|
6
15
|
|
|
7
16
|
```sh
|
|
@@ -19,26 +28,25 @@ import {SellingPartnerApiAuth} from '@sp-api-sdk/auth'
|
|
|
19
28
|
import {VendorOrdersApiClient} from '@sp-api-sdk/vendor-orders-api-v1'
|
|
20
29
|
|
|
21
30
|
const auth = new SellingPartnerApiAuth({
|
|
22
|
-
clientId:
|
|
23
|
-
clientSecret:
|
|
24
|
-
refreshToken: '',
|
|
25
|
-
secretAccessKey: '',
|
|
31
|
+
clientId: process.env.LWA_CLIENT_ID,
|
|
32
|
+
clientSecret: process.env.LWA_CLIENT_SECRET,
|
|
33
|
+
refreshToken: 'Atzr|…',
|
|
26
34
|
accessKeyId: '',
|
|
27
|
-
|
|
35
|
+
secretAccessKey: '',
|
|
28
36
|
role: {
|
|
29
|
-
arn: '',
|
|
30
|
-
}
|
|
37
|
+
arn: 'arn:aws:iam::…',
|
|
38
|
+
},
|
|
31
39
|
})
|
|
32
40
|
|
|
33
41
|
const client = new VendorOrdersApiClient({
|
|
34
42
|
auth,
|
|
35
|
-
region: 'eu'
|
|
43
|
+
region: 'eu',
|
|
36
44
|
})
|
|
37
45
|
```
|
|
38
46
|
|
|
39
|
-
##
|
|
47
|
+
## Rate Limiting
|
|
40
48
|
|
|
41
|
-
|
|
49
|
+
In order to retry rate limited requests (HTTP 429), you can configure the API client as such:
|
|
42
50
|
|
|
43
51
|
```javascript
|
|
44
52
|
const client = new VendorOrdersApiClient({
|
|
@@ -46,13 +54,28 @@ const client = new VendorOrdersApiClient({
|
|
|
46
54
|
region: 'eu',
|
|
47
55
|
rateLimiting: {
|
|
48
56
|
retry: true,
|
|
49
|
-
|
|
50
|
-
|
|
57
|
+
// Optionally specify a callback that will be called on every retry.
|
|
58
|
+
onRetry: (retryInfo) => {
|
|
59
|
+
console.log(retryInfo)
|
|
60
|
+
},
|
|
61
|
+
},
|
|
51
62
|
})
|
|
52
63
|
```
|
|
53
64
|
|
|
54
|
-
The
|
|
65
|
+
The rate limits used for each route are specified in the [API documentation](https://github.com/amzn/selling-partner-api-docs/tree/main/references/vendor-orders-api/vendorOrders.md).
|
|
66
|
+
|
|
67
|
+
## License
|
|
68
|
+
|
|
69
|
+
MIT
|
|
55
70
|
|
|
56
|
-
##
|
|
71
|
+
## Miscellaneous
|
|
57
72
|
|
|
58
|
-
|
|
73
|
+
```
|
|
74
|
+
╚⊙ ⊙╝
|
|
75
|
+
╚═(███)═╝
|
|
76
|
+
╚═(███)═╝
|
|
77
|
+
╚═(███)═╝
|
|
78
|
+
╚═(███)═╝
|
|
79
|
+
╚═(███)═╝
|
|
80
|
+
╚═(███)═╝
|
|
81
|
+
```
|
package/dist/cjs/src/client.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.VendorOrdersApiClient = exports.
|
|
3
|
+
exports.VendorOrdersApiClient = 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.
|
|
8
|
+
exports.clientRateLimits = [
|
|
9
9
|
{
|
|
10
10
|
method: 'get',
|
|
11
11
|
urlRegex: new RegExp('^/vendor/orders/v1/purchaseOrders$'),
|
|
@@ -33,20 +33,23 @@ exports.RATE_LIMITS = [
|
|
|
33
33
|
];
|
|
34
34
|
class VendorOrdersApiClient extends api_model_1.VendorOrdersApi {
|
|
35
35
|
constructor(parameters) {
|
|
36
|
-
const
|
|
36
|
+
const config = common_1.sellingPartnerRegions[parameters.region];
|
|
37
|
+
if (!config) {
|
|
38
|
+
throw new error_1.VendorOrdersApiError(`Unknown region: ${parameters.region}`);
|
|
39
|
+
}
|
|
37
40
|
const { rateLimiting, ...clientParameters } = parameters;
|
|
38
|
-
const axiosParameters = {
|
|
41
|
+
const axiosParameters = {
|
|
42
|
+
...clientParameters,
|
|
43
|
+
region: config.awsRegion,
|
|
44
|
+
};
|
|
39
45
|
if (rateLimiting?.retry) {
|
|
40
|
-
axiosParameters.rateLimits = exports.
|
|
46
|
+
axiosParameters.rateLimits = exports.clientRateLimits;
|
|
41
47
|
axiosParameters.onRetry = rateLimiting.onRetry;
|
|
42
48
|
}
|
|
43
49
|
const axiosInstance = (0, common_1.createAxiosInstance)(axiosParameters);
|
|
44
50
|
const configuration = new api_model_1.Configuration();
|
|
45
51
|
const environment = parameters.sandbox ? 'sandbox' : 'production';
|
|
46
|
-
const endpoint =
|
|
47
|
-
if (!endpoint) {
|
|
48
|
-
throw new error_1.VendorOrdersApiError(`Unknown region : ${region}`);
|
|
49
|
-
}
|
|
52
|
+
const endpoint = config.endpoints[environment];
|
|
50
53
|
super(configuration, endpoint, axiosInstance);
|
|
51
54
|
}
|
|
52
55
|
}
|
package/dist/es/src/client.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* eslint-disable prefer-regex-literals */
|
|
2
|
-
import {
|
|
2
|
+
import { sellingPartnerRegions, createAxiosInstance } from '@sp-api-sdk/common';
|
|
3
3
|
import { Configuration, VendorOrdersApi } from './api-model';
|
|
4
4
|
import { VendorOrdersApiError } from './error';
|
|
5
|
-
export const
|
|
5
|
+
export const clientRateLimits = [
|
|
6
6
|
{
|
|
7
7
|
method: 'get',
|
|
8
8
|
urlRegex: new RegExp('^/vendor/orders/v1/purchaseOrders$'),
|
|
@@ -30,20 +30,23 @@ export const RATE_LIMITS = [
|
|
|
30
30
|
];
|
|
31
31
|
export class VendorOrdersApiClient extends VendorOrdersApi {
|
|
32
32
|
constructor(parameters) {
|
|
33
|
-
const
|
|
33
|
+
const config = sellingPartnerRegions[parameters.region];
|
|
34
|
+
if (!config) {
|
|
35
|
+
throw new VendorOrdersApiError(`Unknown region: ${parameters.region}`);
|
|
36
|
+
}
|
|
34
37
|
const { rateLimiting, ...clientParameters } = parameters;
|
|
35
|
-
const axiosParameters = {
|
|
38
|
+
const axiosParameters = {
|
|
39
|
+
...clientParameters,
|
|
40
|
+
region: config.awsRegion,
|
|
41
|
+
};
|
|
36
42
|
if (rateLimiting?.retry) {
|
|
37
|
-
axiosParameters.rateLimits =
|
|
43
|
+
axiosParameters.rateLimits = clientRateLimits;
|
|
38
44
|
axiosParameters.onRetry = rateLimiting.onRetry;
|
|
39
45
|
}
|
|
40
46
|
const axiosInstance = createAxiosInstance(axiosParameters);
|
|
41
47
|
const configuration = new Configuration();
|
|
42
48
|
const environment = parameters.sandbox ? 'sandbox' : 'production';
|
|
43
|
-
const endpoint = endpoints[environment]
|
|
44
|
-
if (!endpoint) {
|
|
45
|
-
throw new VendorOrdersApiError(`Unknown region : ${region}`);
|
|
46
|
-
}
|
|
49
|
+
const endpoint = config.endpoints[environment];
|
|
47
50
|
super(configuration, endpoint, axiosInstance);
|
|
48
51
|
}
|
|
49
52
|
}
|
|
@@ -392,7 +392,7 @@ export declare class VendorOrdersApi extends BaseAPI {
|
|
|
392
392
|
* @throws {RequiredError}
|
|
393
393
|
* @memberof VendorOrdersApi
|
|
394
394
|
*/
|
|
395
|
-
getPurchaseOrder(requestParameters: VendorOrdersApiGetPurchaseOrderRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrderResponse>>;
|
|
395
|
+
getPurchaseOrder(requestParameters: VendorOrdersApiGetPurchaseOrderRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrderResponse, any>>;
|
|
396
396
|
/**
|
|
397
397
|
* Returns a list of purchase orders created or changed during the time frame that you specify. You define the time frame using the createdAfter, createdBefore, changedAfter and changedBefore parameters. The date range to search must not be more than 7 days. You can choose to get only the purchase order numbers by setting includeDetails to false. You can then use the getPurchaseOrder operation to receive details for a specific purchase order. **Usage Plans:** | Plan type | Rate (requests per second) | Burst | | ---- | ---- | ---- | |Default| 10 | 10 | |Selling partner specific| Variable | Variable | The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see \"Usage Plans and Rate Limits\" in the Selling Partner API documentation.
|
|
398
398
|
* @param {VendorOrdersApiGetPurchaseOrdersRequest} requestParameters Request parameters.
|
|
@@ -400,7 +400,7 @@ export declare class VendorOrdersApi extends BaseAPI {
|
|
|
400
400
|
* @throws {RequiredError}
|
|
401
401
|
* @memberof VendorOrdersApi
|
|
402
402
|
*/
|
|
403
|
-
getPurchaseOrders(requestParameters?: VendorOrdersApiGetPurchaseOrdersRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrdersResponse>>;
|
|
403
|
+
getPurchaseOrders(requestParameters?: VendorOrdersApiGetPurchaseOrdersRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrdersResponse, any>>;
|
|
404
404
|
/**
|
|
405
405
|
* Returns purchase order statuses based on the filters that you specify. Date range to search must not be more than 7 days. You can return a list of purchase order statuses using the available filters, or a single purchase order status by providing the purchase order number. **Usage Plans:** | Plan type | Rate (requests per second) | Burst | | ---- | ---- | ---- | |Default| 10 | 10 | |Selling partner specific| Variable | Variable | The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see \"Usage Plans and Rate Limits\" in the Selling Partner API documentation.
|
|
406
406
|
* @param {VendorOrdersApiGetPurchaseOrdersStatusRequest} requestParameters Request parameters.
|
|
@@ -408,7 +408,7 @@ export declare class VendorOrdersApi extends BaseAPI {
|
|
|
408
408
|
* @throws {RequiredError}
|
|
409
409
|
* @memberof VendorOrdersApi
|
|
410
410
|
*/
|
|
411
|
-
getPurchaseOrdersStatus(requestParameters?: VendorOrdersApiGetPurchaseOrdersStatusRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrdersStatusResponse>>;
|
|
411
|
+
getPurchaseOrdersStatus(requestParameters?: VendorOrdersApiGetPurchaseOrdersStatusRequest, options?: any): Promise<import("axios").AxiosResponse<GetPurchaseOrdersStatusResponse, any>>;
|
|
412
412
|
/**
|
|
413
413
|
* Submits acknowledgements for one or more purchase orders. **Usage Plans:** | Plan type | Rate (requests per second) | Burst | | ---- | ---- | ---- | |Default| 10 | 10 | |Selling partner specific| Variable | Variable | The x-amzn-RateLimit-Limit response header returns the usage plan rate limits that were applied to the requested operation. Rate limits for some selling partners will vary from the default rate and burst shown in the table above. For more information, see \"Usage Plans and Rate Limits\" in the Selling Partner API documentation.
|
|
414
414
|
* @param {VendorOrdersApiSubmitAcknowledgementRequest} requestParameters Request parameters.
|
|
@@ -416,5 +416,5 @@ export declare class VendorOrdersApi extends BaseAPI {
|
|
|
416
416
|
* @throws {RequiredError}
|
|
417
417
|
* @memberof VendorOrdersApi
|
|
418
418
|
*/
|
|
419
|
-
submitAcknowledgement(requestParameters: VendorOrdersApiSubmitAcknowledgementRequest, options?: any): Promise<import("axios").AxiosResponse<SubmitAcknowledgementResponse>>;
|
|
419
|
+
submitAcknowledgement(requestParameters: VendorOrdersApiSubmitAcknowledgementRequest, options?: any): Promise<import("axios").AxiosResponse<SubmitAcknowledgementResponse, any>>;
|
|
420
420
|
}
|
|
@@ -62,4 +62,4 @@ export declare const toPathString: (url: URL) => string;
|
|
|
62
62
|
*
|
|
63
63
|
* @export
|
|
64
64
|
*/
|
|
65
|
-
export declare const createRequestFunction: (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration | undefined) => (axios?: AxiosInstance, basePath?: string) => Promise<import("axios").AxiosResponse<any>>;
|
|
65
|
+
export declare const createRequestFunction: (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration | undefined) => (axios?: AxiosInstance, basePath?: string) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { ClientConfiguration, RateLimit } from '@sp-api-sdk/common';
|
|
1
|
+
import type { ClientConfiguration, SellingPartnerRegion, RateLimit, OnRetryHandler } from '@sp-api-sdk/common';
|
|
3
2
|
import { VendorOrdersApi } from './api-model';
|
|
4
|
-
export declare const
|
|
3
|
+
export declare const clientRateLimits: RateLimit[];
|
|
5
4
|
export interface ClientParameters extends Omit<ClientConfiguration, 'rateLimits' | 'onRetry'> {
|
|
5
|
+
region: SellingPartnerRegion;
|
|
6
6
|
rateLimiting?: {
|
|
7
7
|
retry: boolean;
|
|
8
|
-
onRetry?:
|
|
8
|
+
onRetry?: OnRetryHandler;
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
11
|
export declare class VendorOrdersApiClient extends VendorOrdersApi {
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@sp-api-sdk/vendor-orders-api-v1",
|
|
3
3
|
"author": "Vincent Mesquita <vincent.mesquita@bizon.solutions>",
|
|
4
4
|
"description": "The Selling Partner API for Retail Procurement Orders provides programmatic access to vendor orders data.",
|
|
5
|
-
"version": "1.7.
|
|
5
|
+
"version": "1.7.4",
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
7
7
|
"module": "dist/es/index.js",
|
|
8
8
|
"types": "dist/types/index.d.ts",
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
"dist/**/*.d.ts"
|
|
19
19
|
],
|
|
20
20
|
"scripts": {
|
|
21
|
+
"check:ts": "yarn tsc --noEmit",
|
|
21
22
|
"build:cjs": "tsc -p tsconfig.json",
|
|
22
23
|
"build:es": "tsc -p tsconfig.es.json",
|
|
23
24
|
"build": "yarn build:cjs && yarn build:es",
|
|
@@ -25,9 +26,9 @@
|
|
|
25
26
|
"test": "NODE_ENV='test' yarn jest"
|
|
26
27
|
},
|
|
27
28
|
"dependencies": {
|
|
28
|
-
"@sp-api-sdk/auth": "^1.9.
|
|
29
|
-
"@sp-api-sdk/common": "^1.7.
|
|
30
|
-
"axios": "^0.
|
|
29
|
+
"@sp-api-sdk/auth": "^1.9.8",
|
|
30
|
+
"@sp-api-sdk/common": "^1.7.10",
|
|
31
|
+
"axios": "^0.26.0"
|
|
31
32
|
},
|
|
32
33
|
"repository": {
|
|
33
34
|
"type": "git",
|
|
@@ -48,5 +49,5 @@
|
|
|
48
49
|
"sp sdk",
|
|
49
50
|
"vendor orders api"
|
|
50
51
|
],
|
|
51
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "3f4ecdeef2ce06ff28612448d263cc8d08eb69f6"
|
|
52
53
|
}
|