@zippendo/sdk 1.2.6 → 1.2.7
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/dist/esm/models/BatchSendShipments200ResponseResultsInner.d.ts +1 -0
- package/dist/esm/models/BatchSendShipments200ResponseResultsInner.js +1 -0
- package/dist/esm/models/GetOrder200Response.d.ts +4 -4
- package/dist/esm/models/GetOrder200Response.js +3 -3
- package/dist/esm/models/GetOrder200ResponseOrderLinesInner.d.ts +156 -0
- package/dist/esm/models/GetOrder200ResponseOrderLinesInner.js +94 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInner.d.ts +7 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInner.js +5 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInnerParcelsInner.d.ts +68 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInnerParcelsInner.js +70 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.d.ts +50 -0
- package/dist/esm/models/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.js +51 -0
- package/dist/esm/models/ListApiTokens401Response.d.ts +1 -0
- package/dist/esm/models/ListApiTokens401Response.js +1 -0
- package/dist/esm/models/SendShipment422Response.d.ts +1 -0
- package/dist/esm/models/SendShipment422Response.js +1 -0
- package/dist/esm/models/UpdateOrderRequest.d.ts +6 -0
- package/dist/esm/models/UpdateOrderRequest.js +2 -0
- package/dist/esm/models/index.d.ts +3 -0
- package/dist/esm/models/index.js +3 -0
- package/dist/models/BatchSendShipments200ResponseResultsInner.d.ts +1 -0
- package/dist/models/BatchSendShipments200ResponseResultsInner.js +1 -0
- package/dist/models/GetOrder200Response.d.ts +4 -4
- package/dist/models/GetOrder200Response.js +3 -3
- package/dist/models/GetOrder200ResponseOrderLinesInner.d.ts +156 -0
- package/dist/models/GetOrder200ResponseOrderLinesInner.js +102 -0
- package/dist/models/GetOrder200ResponseShipmentsInner.d.ts +7 -0
- package/dist/models/GetOrder200ResponseShipmentsInner.js +5 -0
- package/dist/models/GetOrder200ResponseShipmentsInnerParcelsInner.d.ts +68 -0
- package/dist/models/GetOrder200ResponseShipmentsInnerParcelsInner.js +78 -0
- package/dist/models/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.d.ts +50 -0
- package/dist/models/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.js +58 -0
- package/dist/models/ListApiTokens401Response.d.ts +1 -0
- package/dist/models/ListApiTokens401Response.js +1 -0
- package/dist/models/SendShipment422Response.d.ts +1 -0
- package/dist/models/SendShipment422Response.js +1 -0
- package/dist/models/UpdateOrderRequest.d.ts +6 -0
- package/dist/models/UpdateOrderRequest.js +2 -0
- package/dist/models/index.d.ts +3 -0
- package/dist/models/index.js +3 -0
- package/docs/GetOrder200Response.md +1 -1
- package/docs/GetOrder200ResponseOrderLinesInner.md +72 -0
- package/docs/GetOrder200ResponseShipmentsInner.md +2 -0
- package/docs/GetOrder200ResponseShipmentsInnerParcelsInner.md +42 -0
- package/docs/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.md +40 -0
- package/docs/UpdateOrderRequest.md +2 -0
- package/package.json +1 -1
- package/src/models/BatchSendShipments200ResponseResultsInner.ts +1 -0
- package/src/models/GetOrder200Response.ts +12 -12
- package/src/models/GetOrder200ResponseOrderLinesInner.ts +233 -0
- package/src/models/GetOrder200ResponseShipmentsInner.ts +16 -0
- package/src/models/GetOrder200ResponseShipmentsInnerParcelsInner.ts +130 -0
- package/src/models/GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner.ts +91 -0
- package/src/models/ListApiTokens401Response.ts +1 -0
- package/src/models/SendShipment422Response.ts +1 -0
- package/src/models/UpdateOrderRequest.ts +8 -0
- package/src/models/index.ts +3 -0
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Zippendo Public API
|
|
5
|
+
* Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand\'s team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand\'s id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan\'s limit returns `403`.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
* Contact: support@zippendo.com
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface GetOrder200ResponseOrderLinesInner
|
|
20
|
+
*/
|
|
21
|
+
export interface GetOrder200ResponseOrderLinesInner {
|
|
22
|
+
/**
|
|
23
|
+
* Stock keeping unit identifier.
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
26
|
+
*/
|
|
27
|
+
sku?: string | null;
|
|
28
|
+
/**
|
|
29
|
+
* Product name.
|
|
30
|
+
* @type {string}
|
|
31
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
32
|
+
*/
|
|
33
|
+
name: string;
|
|
34
|
+
/**
|
|
35
|
+
* Quantity ordered.
|
|
36
|
+
* @type {number}
|
|
37
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
38
|
+
*/
|
|
39
|
+
quantity: number;
|
|
40
|
+
/**
|
|
41
|
+
* Price per unit.
|
|
42
|
+
* @type {number}
|
|
43
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
44
|
+
*/
|
|
45
|
+
unitPrice?: number | null;
|
|
46
|
+
/**
|
|
47
|
+
* Total price for the line.
|
|
48
|
+
* @type {number}
|
|
49
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
50
|
+
*/
|
|
51
|
+
totalPrice?: number | null;
|
|
52
|
+
/**
|
|
53
|
+
* ISO 4217 currency code.
|
|
54
|
+
* @type {string}
|
|
55
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
56
|
+
*/
|
|
57
|
+
currency?: string | null;
|
|
58
|
+
/**
|
|
59
|
+
* Item weight in the given unit.
|
|
60
|
+
* @type {number}
|
|
61
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
62
|
+
*/
|
|
63
|
+
weight?: number | null;
|
|
64
|
+
/**
|
|
65
|
+
* Unit of the weight value.
|
|
66
|
+
* @type {GetOrder200ResponseOrderLinesInnerWeightUnitEnum}
|
|
67
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
68
|
+
*/
|
|
69
|
+
weightUnit?: GetOrder200ResponseOrderLinesInnerWeightUnitEnum | null;
|
|
70
|
+
/**
|
|
71
|
+
* Platform variant identifier.
|
|
72
|
+
* @type {string}
|
|
73
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
74
|
+
*/
|
|
75
|
+
variantId?: string | null;
|
|
76
|
+
/**
|
|
77
|
+
* Platform product identifier.
|
|
78
|
+
* @type {string}
|
|
79
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
80
|
+
*/
|
|
81
|
+
productId?: string | null;
|
|
82
|
+
/**
|
|
83
|
+
* Product image URL.
|
|
84
|
+
* @type {string}
|
|
85
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
86
|
+
*/
|
|
87
|
+
imageUrl?: string | null;
|
|
88
|
+
/**
|
|
89
|
+
* Harmonized System customs code (6-13 digits).
|
|
90
|
+
* @type {string}
|
|
91
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
92
|
+
*/
|
|
93
|
+
hsCode?: string | null;
|
|
94
|
+
/**
|
|
95
|
+
* ISO 3166-1 alpha-2 country of origin.
|
|
96
|
+
* @type {string}
|
|
97
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
98
|
+
*/
|
|
99
|
+
countryOfOrigin?: string | null;
|
|
100
|
+
/**
|
|
101
|
+
* ISO 3166-2 province of origin.
|
|
102
|
+
* @type {string}
|
|
103
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
104
|
+
*/
|
|
105
|
+
provinceOfOrigin?: string | null;
|
|
106
|
+
/**
|
|
107
|
+
* Item barcode (EAN/UPC).
|
|
108
|
+
* @type {string}
|
|
109
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
110
|
+
*/
|
|
111
|
+
barcode?: string | null;
|
|
112
|
+
/**
|
|
113
|
+
* Whether the item requires shipping.
|
|
114
|
+
* @type {boolean}
|
|
115
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
116
|
+
*/
|
|
117
|
+
requiresShipping?: boolean | null;
|
|
118
|
+
/**
|
|
119
|
+
* Whether the item is taxable.
|
|
120
|
+
* @type {boolean}
|
|
121
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
122
|
+
*/
|
|
123
|
+
taxable?: boolean | null;
|
|
124
|
+
/**
|
|
125
|
+
* Whether the item is a gift card.
|
|
126
|
+
* @type {boolean}
|
|
127
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
128
|
+
*/
|
|
129
|
+
giftCard?: boolean | null;
|
|
130
|
+
/**
|
|
131
|
+
* Vendor or brand name.
|
|
132
|
+
* @type {string}
|
|
133
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
134
|
+
*/
|
|
135
|
+
vendor?: string | null;
|
|
136
|
+
/**
|
|
137
|
+
* Quantity already allocated to outbound shipments.
|
|
138
|
+
* @type {number}
|
|
139
|
+
* @memberof GetOrder200ResponseOrderLinesInner
|
|
140
|
+
*/
|
|
141
|
+
packedQuantity: number;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* @export
|
|
147
|
+
*/
|
|
148
|
+
export const GetOrder200ResponseOrderLinesInnerWeightUnitEnum = {
|
|
149
|
+
Kg: 'kg',
|
|
150
|
+
G: 'g',
|
|
151
|
+
Lb: 'lb',
|
|
152
|
+
Oz: 'oz'
|
|
153
|
+
} as const;
|
|
154
|
+
export type GetOrder200ResponseOrderLinesInnerWeightUnitEnum = typeof GetOrder200ResponseOrderLinesInnerWeightUnitEnum[keyof typeof GetOrder200ResponseOrderLinesInnerWeightUnitEnum];
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Check if a given object implements the GetOrder200ResponseOrderLinesInner interface.
|
|
159
|
+
*/
|
|
160
|
+
export function instanceOfGetOrder200ResponseOrderLinesInner(value: object): value is GetOrder200ResponseOrderLinesInner {
|
|
161
|
+
if (!('name' in value) || value['name'] === undefined) return false;
|
|
162
|
+
if (!('quantity' in value) || value['quantity'] === undefined) return false;
|
|
163
|
+
if (!('packedQuantity' in value) || value['packedQuantity'] === undefined) return false;
|
|
164
|
+
return true;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export function GetOrder200ResponseOrderLinesInnerFromJSON(json: any): GetOrder200ResponseOrderLinesInner {
|
|
168
|
+
return GetOrder200ResponseOrderLinesInnerFromJSONTyped(json, false);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export function GetOrder200ResponseOrderLinesInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetOrder200ResponseOrderLinesInner {
|
|
172
|
+
if (json == null) {
|
|
173
|
+
return json;
|
|
174
|
+
}
|
|
175
|
+
return {
|
|
176
|
+
|
|
177
|
+
'sku': json['sku'] === undefined ? undefined : json['sku'] === null ? null : json['sku'],
|
|
178
|
+
'name': json['name'],
|
|
179
|
+
'quantity': json['quantity'],
|
|
180
|
+
'unitPrice': json['unitPrice'] === undefined ? undefined : json['unitPrice'] === null ? null : json['unitPrice'],
|
|
181
|
+
'totalPrice': json['totalPrice'] === undefined ? undefined : json['totalPrice'] === null ? null : json['totalPrice'],
|
|
182
|
+
'currency': json['currency'] === undefined ? undefined : json['currency'] === null ? null : json['currency'],
|
|
183
|
+
'weight': json['weight'] === undefined ? undefined : json['weight'] === null ? null : json['weight'],
|
|
184
|
+
'weightUnit': json['weightUnit'] === undefined ? undefined : json['weightUnit'] === null ? null : json['weightUnit'],
|
|
185
|
+
'variantId': json['variantId'] === undefined ? undefined : json['variantId'] === null ? null : json['variantId'],
|
|
186
|
+
'productId': json['productId'] === undefined ? undefined : json['productId'] === null ? null : json['productId'],
|
|
187
|
+
'imageUrl': json['imageUrl'] === undefined ? undefined : json['imageUrl'] === null ? null : json['imageUrl'],
|
|
188
|
+
'hsCode': json['hsCode'] === undefined ? undefined : json['hsCode'] === null ? null : json['hsCode'],
|
|
189
|
+
'countryOfOrigin': json['countryOfOrigin'] === undefined ? undefined : json['countryOfOrigin'] === null ? null : json['countryOfOrigin'],
|
|
190
|
+
'provinceOfOrigin': json['provinceOfOrigin'] === undefined ? undefined : json['provinceOfOrigin'] === null ? null : json['provinceOfOrigin'],
|
|
191
|
+
'barcode': json['barcode'] === undefined ? undefined : json['barcode'] === null ? null : json['barcode'],
|
|
192
|
+
'requiresShipping': json['requiresShipping'] === undefined ? undefined : json['requiresShipping'] === null ? null : json['requiresShipping'],
|
|
193
|
+
'taxable': json['taxable'] === undefined ? undefined : json['taxable'] === null ? null : json['taxable'],
|
|
194
|
+
'giftCard': json['giftCard'] === undefined ? undefined : json['giftCard'] === null ? null : json['giftCard'],
|
|
195
|
+
'vendor': json['vendor'] === undefined ? undefined : json['vendor'] === null ? null : json['vendor'],
|
|
196
|
+
'packedQuantity': json['packedQuantity'],
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
export function GetOrder200ResponseOrderLinesInnerToJSON(json: any): GetOrder200ResponseOrderLinesInner {
|
|
201
|
+
return GetOrder200ResponseOrderLinesInnerToJSONTyped(json, false);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export function GetOrder200ResponseOrderLinesInnerToJSONTyped(value?: GetOrder200ResponseOrderLinesInner | null, ignoreDiscriminator: boolean = false): any {
|
|
205
|
+
if (value == null) {
|
|
206
|
+
return value;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
return {
|
|
210
|
+
|
|
211
|
+
'sku': value['sku'],
|
|
212
|
+
'name': value['name'],
|
|
213
|
+
'quantity': value['quantity'],
|
|
214
|
+
'unitPrice': value['unitPrice'],
|
|
215
|
+
'totalPrice': value['totalPrice'],
|
|
216
|
+
'currency': value['currency'],
|
|
217
|
+
'weight': value['weight'],
|
|
218
|
+
'weightUnit': value['weightUnit'],
|
|
219
|
+
'variantId': value['variantId'],
|
|
220
|
+
'productId': value['productId'],
|
|
221
|
+
'imageUrl': value['imageUrl'],
|
|
222
|
+
'hsCode': value['hsCode'],
|
|
223
|
+
'countryOfOrigin': value['countryOfOrigin'],
|
|
224
|
+
'provinceOfOrigin': value['provinceOfOrigin'],
|
|
225
|
+
'barcode': value['barcode'],
|
|
226
|
+
'requiresShipping': value['requiresShipping'],
|
|
227
|
+
'taxable': value['taxable'],
|
|
228
|
+
'giftCard': value['giftCard'],
|
|
229
|
+
'vendor': value['vendor'],
|
|
230
|
+
'packedQuantity': value['packedQuantity'],
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
|
|
@@ -20,6 +20,13 @@ import {
|
|
|
20
20
|
CreateShipment201ResponseDocumentsInnerToJSON,
|
|
21
21
|
CreateShipment201ResponseDocumentsInnerToJSONTyped,
|
|
22
22
|
} from './CreateShipment201ResponseDocumentsInner';
|
|
23
|
+
import type { GetOrder200ResponseShipmentsInnerParcelsInner } from './GetOrder200ResponseShipmentsInnerParcelsInner';
|
|
24
|
+
import {
|
|
25
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerFromJSON,
|
|
26
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerFromJSONTyped,
|
|
27
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerToJSON,
|
|
28
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerToJSONTyped,
|
|
29
|
+
} from './GetOrder200ResponseShipmentsInnerParcelsInner';
|
|
23
30
|
import type { ListShipments200ResponseDataInnerCarrierSettings } from './ListShipments200ResponseDataInnerCarrierSettings';
|
|
24
31
|
import {
|
|
25
32
|
ListShipments200ResponseDataInnerCarrierSettingsFromJSON,
|
|
@@ -107,6 +114,12 @@ export interface GetOrder200ResponseShipmentsInner {
|
|
|
107
114
|
* @memberof GetOrder200ResponseShipmentsInner
|
|
108
115
|
*/
|
|
109
116
|
documents?: Array<CreateShipment201ResponseDocumentsInner>;
|
|
117
|
+
/**
|
|
118
|
+
* Compact parcels for the order fulfillment workspace (no QR/label payloads).
|
|
119
|
+
* @type {Array<GetOrder200ResponseShipmentsInnerParcelsInner>}
|
|
120
|
+
* @memberof GetOrder200ResponseShipmentsInner
|
|
121
|
+
*/
|
|
122
|
+
parcels: Array<GetOrder200ResponseShipmentsInnerParcelsInner>;
|
|
110
123
|
}
|
|
111
124
|
|
|
112
125
|
|
|
@@ -146,6 +159,7 @@ export function instanceOfGetOrder200ResponseShipmentsInner(value: object): valu
|
|
|
146
159
|
if (!('carrierSettings' in value) || value['carrierSettings'] === undefined) return false;
|
|
147
160
|
if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
|
|
148
161
|
if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
|
|
162
|
+
if (!('parcels' in value) || value['parcels'] === undefined) return false;
|
|
149
163
|
return true;
|
|
150
164
|
}
|
|
151
165
|
|
|
@@ -170,6 +184,7 @@ export function GetOrder200ResponseShipmentsInnerFromJSONTyped(json: any, ignore
|
|
|
170
184
|
'updatedAt': json['updatedAt'],
|
|
171
185
|
'shippingRuleId': json['shippingRuleId'] === undefined ? undefined : json['shippingRuleId'] === null ? null : json['shippingRuleId'],
|
|
172
186
|
'documents': json['documents'] == null ? undefined : ((json['documents'] as Array<any>).map(CreateShipment201ResponseDocumentsInnerFromJSON)),
|
|
187
|
+
'parcels': ((json['parcels'] as Array<any>).map(GetOrder200ResponseShipmentsInnerParcelsInnerFromJSON)),
|
|
173
188
|
};
|
|
174
189
|
}
|
|
175
190
|
|
|
@@ -195,6 +210,7 @@ export function GetOrder200ResponseShipmentsInnerToJSONTyped(value?: GetOrder200
|
|
|
195
210
|
'updatedAt': value['updatedAt'],
|
|
196
211
|
'shippingRuleId': value['shippingRuleId'],
|
|
197
212
|
'documents': value['documents'] == null ? undefined : ((value['documents'] as Array<any>).map(CreateShipment201ResponseDocumentsInnerToJSON)),
|
|
213
|
+
'parcels': ((value['parcels'] as Array<any>).map(GetOrder200ResponseShipmentsInnerParcelsInnerToJSON)),
|
|
198
214
|
};
|
|
199
215
|
}
|
|
200
216
|
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Zippendo Public API
|
|
5
|
+
* Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand\'s team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand\'s id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan\'s limit returns `403`.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
* Contact: support@zippendo.com
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
import type { GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner } from './GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner';
|
|
17
|
+
import {
|
|
18
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSON,
|
|
19
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSONTyped,
|
|
20
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSON,
|
|
21
|
+
GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSONTyped,
|
|
22
|
+
} from './GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner';
|
|
23
|
+
import type { CreateShipment201ResponseParcelsInnerDimensions } from './CreateShipment201ResponseParcelsInnerDimensions';
|
|
24
|
+
import {
|
|
25
|
+
CreateShipment201ResponseParcelsInnerDimensionsFromJSON,
|
|
26
|
+
CreateShipment201ResponseParcelsInnerDimensionsFromJSONTyped,
|
|
27
|
+
CreateShipment201ResponseParcelsInnerDimensionsToJSON,
|
|
28
|
+
CreateShipment201ResponseParcelsInnerDimensionsToJSONTyped,
|
|
29
|
+
} from './CreateShipment201ResponseParcelsInnerDimensions';
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @export
|
|
34
|
+
* @interface GetOrder200ResponseShipmentsInnerParcelsInner
|
|
35
|
+
*/
|
|
36
|
+
export interface GetOrder200ResponseShipmentsInnerParcelsInner {
|
|
37
|
+
/**
|
|
38
|
+
* Parcel ID.
|
|
39
|
+
* @type {string}
|
|
40
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInner
|
|
41
|
+
*/
|
|
42
|
+
id: string;
|
|
43
|
+
/**
|
|
44
|
+
* Parcel weight in the given unit.
|
|
45
|
+
* @type {number}
|
|
46
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInner
|
|
47
|
+
*/
|
|
48
|
+
weight: number;
|
|
49
|
+
/**
|
|
50
|
+
* Unit of measurement for parcel weight.
|
|
51
|
+
* @type {GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum}
|
|
52
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInner
|
|
53
|
+
*/
|
|
54
|
+
weightUnit: GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* @type {CreateShipment201ResponseParcelsInnerDimensions}
|
|
58
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInner
|
|
59
|
+
*/
|
|
60
|
+
dimensions: CreateShipment201ResponseParcelsInnerDimensions;
|
|
61
|
+
/**
|
|
62
|
+
* Contents of this parcel.
|
|
63
|
+
* @type {Array<GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner>}
|
|
64
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInner
|
|
65
|
+
*/
|
|
66
|
+
orderLines: Array<GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner>;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* @export
|
|
72
|
+
*/
|
|
73
|
+
export const GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum = {
|
|
74
|
+
Kg: 'kg',
|
|
75
|
+
G: 'g',
|
|
76
|
+
Lb: 'lb',
|
|
77
|
+
Oz: 'oz'
|
|
78
|
+
} as const;
|
|
79
|
+
export type GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum = typeof GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum[keyof typeof GetOrder200ResponseShipmentsInnerParcelsInnerWeightUnitEnum];
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Check if a given object implements the GetOrder200ResponseShipmentsInnerParcelsInner interface.
|
|
84
|
+
*/
|
|
85
|
+
export function instanceOfGetOrder200ResponseShipmentsInnerParcelsInner(value: object): value is GetOrder200ResponseShipmentsInnerParcelsInner {
|
|
86
|
+
if (!('id' in value) || value['id'] === undefined) return false;
|
|
87
|
+
if (!('weight' in value) || value['weight'] === undefined) return false;
|
|
88
|
+
if (!('weightUnit' in value) || value['weightUnit'] === undefined) return false;
|
|
89
|
+
if (!('dimensions' in value) || value['dimensions'] === undefined) return false;
|
|
90
|
+
if (!('orderLines' in value) || value['orderLines'] === undefined) return false;
|
|
91
|
+
return true;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerFromJSON(json: any): GetOrder200ResponseShipmentsInnerParcelsInner {
|
|
95
|
+
return GetOrder200ResponseShipmentsInnerParcelsInnerFromJSONTyped(json, false);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetOrder200ResponseShipmentsInnerParcelsInner {
|
|
99
|
+
if (json == null) {
|
|
100
|
+
return json;
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
|
|
104
|
+
'id': json['id'],
|
|
105
|
+
'weight': json['weight'],
|
|
106
|
+
'weightUnit': json['weightUnit'],
|
|
107
|
+
'dimensions': CreateShipment201ResponseParcelsInnerDimensionsFromJSON(json['dimensions']),
|
|
108
|
+
'orderLines': ((json['orderLines'] as Array<any>).map(GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSON)),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerToJSON(json: any): GetOrder200ResponseShipmentsInnerParcelsInner {
|
|
113
|
+
return GetOrder200ResponseShipmentsInnerParcelsInnerToJSONTyped(json, false);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerToJSONTyped(value?: GetOrder200ResponseShipmentsInnerParcelsInner | null, ignoreDiscriminator: boolean = false): any {
|
|
117
|
+
if (value == null) {
|
|
118
|
+
return value;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
return {
|
|
122
|
+
|
|
123
|
+
'id': value['id'],
|
|
124
|
+
'weight': value['weight'],
|
|
125
|
+
'weightUnit': value['weightUnit'],
|
|
126
|
+
'dimensions': CreateShipment201ResponseParcelsInnerDimensionsToJSON(value['dimensions']),
|
|
127
|
+
'orderLines': ((value['orderLines'] as Array<any>).map(GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSON)),
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Zippendo Public API
|
|
5
|
+
* Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand\'s team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand\'s id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan\'s limit returns `403`.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
* Contact: support@zippendo.com
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner
|
|
20
|
+
*/
|
|
21
|
+
export interface GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner {
|
|
22
|
+
/**
|
|
23
|
+
* Parcel content line ID.
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner
|
|
26
|
+
*/
|
|
27
|
+
id: string;
|
|
28
|
+
/**
|
|
29
|
+
* SKU of the packed item.
|
|
30
|
+
* @type {string}
|
|
31
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner
|
|
32
|
+
*/
|
|
33
|
+
sku?: string | null;
|
|
34
|
+
/**
|
|
35
|
+
* Quantity packed in this parcel.
|
|
36
|
+
* @type {number}
|
|
37
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner
|
|
38
|
+
*/
|
|
39
|
+
quantity: number;
|
|
40
|
+
/**
|
|
41
|
+
* Product description.
|
|
42
|
+
* @type {string}
|
|
43
|
+
* @memberof GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner
|
|
44
|
+
*/
|
|
45
|
+
description?: string | null;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Check if a given object implements the GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner interface.
|
|
50
|
+
*/
|
|
51
|
+
export function instanceOfGetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner(value: object): value is GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner {
|
|
52
|
+
if (!('id' in value) || value['id'] === undefined) return false;
|
|
53
|
+
if (!('quantity' in value) || value['quantity'] === undefined) return false;
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSON(json: any): GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner {
|
|
58
|
+
return GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSONTyped(json, false);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner {
|
|
62
|
+
if (json == null) {
|
|
63
|
+
return json;
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
|
|
67
|
+
'id': json['id'],
|
|
68
|
+
'sku': json['sku'] === undefined ? undefined : json['sku'] === null ? null : json['sku'],
|
|
69
|
+
'quantity': json['quantity'],
|
|
70
|
+
'description': json['description'] === undefined ? undefined : json['description'] === null ? null : json['description'],
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSON(json: any): GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner {
|
|
75
|
+
return GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSONTyped(json, false);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInnerToJSONTyped(value?: GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner | null, ignoreDiscriminator: boolean = false): any {
|
|
79
|
+
if (value == null) {
|
|
80
|
+
return value;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
return {
|
|
84
|
+
|
|
85
|
+
'id': value['id'],
|
|
86
|
+
'sku': value['sku'],
|
|
87
|
+
'quantity': value['quantity'],
|
|
88
|
+
'description': value['description'],
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
|
|
@@ -122,6 +122,7 @@ export const ListApiTokens401ResponseCodeEnum = {
|
|
|
122
122
|
CarrierAuthFailed: 'CARRIER_AUTH_FAILED',
|
|
123
123
|
CarrierNotFound: 'CARRIER_NOT_FOUND',
|
|
124
124
|
CarrierProductNotFound: 'CARRIER_PRODUCT_NOT_FOUND',
|
|
125
|
+
CarrierProductRouteUnsupported: 'CARRIER_PRODUCT_ROUTE_UNSUPPORTED',
|
|
125
126
|
CarrierConfigInvalid: 'CARRIER_CONFIG_INVALID',
|
|
126
127
|
CarrierParameterInvalid: 'CARRIER_PARAMETER_INVALID',
|
|
127
128
|
CarrierServerUnavailable: 'CARRIER_SERVER_UNAVAILABLE',
|
|
@@ -136,6 +136,7 @@ export const SendShipment422ResponseCodeEnum = {
|
|
|
136
136
|
CarrierAuthFailed: 'CARRIER_AUTH_FAILED',
|
|
137
137
|
CarrierNotFound: 'CARRIER_NOT_FOUND',
|
|
138
138
|
CarrierProductNotFound: 'CARRIER_PRODUCT_NOT_FOUND',
|
|
139
|
+
CarrierProductRouteUnsupported: 'CARRIER_PRODUCT_ROUTE_UNSUPPORTED',
|
|
139
140
|
CarrierConfigInvalid: 'CARRIER_CONFIG_INVALID',
|
|
140
141
|
CarrierParameterInvalid: 'CARRIER_PARAMETER_INVALID',
|
|
141
142
|
CarrierServerUnavailable: 'CARRIER_SERVER_UNAVAILABLE',
|
|
@@ -100,6 +100,12 @@ export interface UpdateOrderRequest {
|
|
|
100
100
|
* @memberof UpdateOrderRequest
|
|
101
101
|
*/
|
|
102
102
|
shippingRuleId?: string | null;
|
|
103
|
+
/**
|
|
104
|
+
* Service point (parcel shop) ID to apply to unsent outbound shipments.
|
|
105
|
+
* @type {string}
|
|
106
|
+
* @memberof UpdateOrderRequest
|
|
107
|
+
*/
|
|
108
|
+
servicePointId?: string | null;
|
|
103
109
|
}
|
|
104
110
|
|
|
105
111
|
|
|
@@ -145,6 +151,7 @@ export function UpdateOrderRequestFromJSONTyped(json: any, ignoreDiscriminator:
|
|
|
145
151
|
'notes': json['notes'] === undefined ? undefined : json['notes'] === null ? null : json['notes'],
|
|
146
152
|
'status': json['status'] == null ? undefined : json['status'],
|
|
147
153
|
'shippingRuleId': json['shippingRuleId'] === undefined ? undefined : json['shippingRuleId'] === null ? null : json['shippingRuleId'],
|
|
154
|
+
'servicePointId': json['servicePointId'] === undefined ? undefined : json['servicePointId'] === null ? null : json['servicePointId'],
|
|
148
155
|
};
|
|
149
156
|
}
|
|
150
157
|
|
|
@@ -170,6 +177,7 @@ export function UpdateOrderRequestToJSONTyped(value?: UpdateOrderRequest | null,
|
|
|
170
177
|
'notes': value['notes'],
|
|
171
178
|
'status': value['status'],
|
|
172
179
|
'shippingRuleId': value['shippingRuleId'],
|
|
180
|
+
'servicePointId': value['servicePointId'],
|
|
173
181
|
};
|
|
174
182
|
}
|
|
175
183
|
|
package/src/models/index.ts
CHANGED
|
@@ -75,7 +75,10 @@ export * from './GetBillingUsage200ResponseLimitsTeamMembers';
|
|
|
75
75
|
export * from './GetBillingUsage200ResponseShipments';
|
|
76
76
|
export * from './GetBillingUsage200ResponseZippyMessages';
|
|
77
77
|
export * from './GetOrder200Response';
|
|
78
|
+
export * from './GetOrder200ResponseOrderLinesInner';
|
|
78
79
|
export * from './GetOrder200ResponseShipmentsInner';
|
|
80
|
+
export * from './GetOrder200ResponseShipmentsInnerParcelsInner';
|
|
81
|
+
export * from './GetOrder200ResponseShipmentsInnerParcelsInnerOrderLinesInner';
|
|
79
82
|
export * from './GetOrder200ResponseShippingRule';
|
|
80
83
|
export * from './GetOrderChannelWebhookStatus200Response';
|
|
81
84
|
export * from './GetOrderChannelWebhookStatus200ResponseWebhooksInner';
|