@shipengine/connect-carrier-api 2.12.12 → 2.12.14

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.
Files changed (28) hide show
  1. package/README.md +2 -0
  2. package/lib/app/metadata/service-point-location-type.d.ts +6 -0
  3. package/lib/app/metadata/service-point-location-type.js +12 -0
  4. package/lib/app/metadata/service-point-location-type.js.map +1 -0
  5. package/lib/models/customs/customs.d.ts +2 -2
  6. package/lib/models/importer-records/{ImporterOfRecords.d.ts → importer_of_record.d.ts} +8 -3
  7. package/lib/models/importer-records/importer_of_record.js +8 -0
  8. package/lib/models/importer-records/importer_of_record.js.map +1 -0
  9. package/lib/models/pickup/shipped-package.d.ts +9 -0
  10. package/lib/models/pickup/shipped-package.js.map +1 -1
  11. package/lib/models/pickup/shipped-shipment.d.ts +3 -0
  12. package/lib/models/pickup/shipped-shipment.js.map +1 -1
  13. package/lib/models/service-points/service-point-schema.js +2 -0
  14. package/lib/models/service-points/service-point-schema.js.map +1 -1
  15. package/lib/models/service-points/service-point.d.ts +3 -0
  16. package/lib/models/service-points/service-point.js.map +1 -1
  17. package/package.json +3 -3
  18. package/spec.json +56 -4
  19. package/src/app/metadata/service-point-location-type.ts +10 -0
  20. package/src/models/customs/customs.ts +2 -2
  21. package/src/models/importer-records/{ImporterOfRecords.ts → importer_of_record.ts} +9 -3
  22. package/src/models/pickup/shipped-package.ts +9 -0
  23. package/src/models/pickup/shipped-shipment.ts +3 -0
  24. package/src/models/service-points/service-point-schema.ts +2 -0
  25. package/src/models/service-points/service-point.ts +3 -0
  26. package/tsconfig.tsbuildinfo +1 -1
  27. package/lib/models/importer-records/ImporterOfRecords.js +0 -8
  28. package/lib/models/importer-records/ImporterOfRecords.js.map +0 -1
package/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  The purpose of this library is to fill a similar role that CarrierApi.Common serves for C# but for JavaScript & TypeScript. It will contain the models and definitions for Request/Response Bodies.
4
4
 
5
+ Additionally, any changes made to carrier-api library spec, need to manually update the spec.json file. The CI action does not update this file for this repo.
6
+
5
7
  ## Building
6
8
 
7
9
  From the repository root, navigate to this package directory.
@@ -0,0 +1,6 @@
1
+ import Joi from 'joi';
2
+ export declare enum ServicePointLocationTypeEnum {
3
+ PUDO = "pudo",
4
+ Locker = "locker"
5
+ }
6
+ export declare const ServicePointLocationTypeEnumSchema: Joi.StringSchema;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServicePointLocationTypeEnumSchema = exports.ServicePointLocationTypeEnum = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const joi_1 = tslib_1.__importDefault(require("joi"));
6
+ var ServicePointLocationTypeEnum;
7
+ (function (ServicePointLocationTypeEnum) {
8
+ ServicePointLocationTypeEnum["PUDO"] = "pudo";
9
+ ServicePointLocationTypeEnum["Locker"] = "locker";
10
+ })(ServicePointLocationTypeEnum = exports.ServicePointLocationTypeEnum || (exports.ServicePointLocationTypeEnum = {}));
11
+ exports.ServicePointLocationTypeEnumSchema = joi_1.default.string().valid(...Object.values(ServicePointLocationTypeEnum));
12
+ //# sourceMappingURL=service-point-location-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-point-location-type.js","sourceRoot":"","sources":["../../../src/app/metadata/service-point-location-type.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAEtB,IAAY,4BAGX;AAHD,WAAY,4BAA4B;IACtC,6CAAa,CAAA;IACb,iDAAiB,CAAA;AACnB,CAAC,EAHW,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAGvC;AAEY,QAAA,kCAAkC,GAAG,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAClE,GAAG,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAC/C,CAAC"}
@@ -3,7 +3,7 @@ import { CustomsNonDelivery } from './customs-non-delivery';
3
3
  import { CustomsItem } from './customs-item';
4
4
  import { Currency } from '../currency';
5
5
  import { TermsOfTradeCode } from '../inconterms/terms-of-trade-code';
6
- import { ImporterOfRecords } from '../importer-records/ImporterOfRecords';
6
+ import { ImporterOfRecord } from '../importer-records/importer_of_record';
7
7
  import { CustomsCharges } from './customs-charges';
8
8
  /** @description Basic structure for a customs declaration */
9
9
  export declare class Customs {
@@ -22,7 +22,7 @@ export declare class Customs {
22
22
  /** @description Incoterms specify who is responsible for paying for and managing the shipment*/
23
23
  termsOfTradeCode?: TermsOfTradeCode;
24
24
  /** @description The owner or purchaser of the products being imported into a destination country.*/
25
- importer_of_records?: ImporterOfRecords;
25
+ importer_of_record?: ImporterOfRecord;
26
26
  /** @description The charges related with customs.*/
27
27
  invoice_additional_details?: CustomsCharges;
28
28
  /**@description: text explanation for the content */
@@ -1,6 +1,9 @@
1
+ import { TaxIdentifier } from '../taxes/tax-identifier';
1
2
  /** @description Basic structure for a Importer Records */
2
- export declare class ImporterOfRecords {
3
- /** @description Indicates Name of the owner or purchaser of the products being imported into a destination country */
3
+ export declare class ImporterOfRecord {
4
+ /** @description Tax Ids associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record) */
5
+ tax_identifiers?: TaxIdentifier[];
6
+ /** @description Indicates Name of the owner or purchaser of the products being imported into a destination country */
4
7
  name?: string;
5
8
  /** @description Indicates Company Name of the owner or purchaser of the products being imported into a destination country*/
6
9
  company_name?: string;
@@ -16,6 +19,8 @@ export declare class ImporterOfRecords {
16
19
  postal_code?: string;
17
20
  /** @description : Indicates country code of the owner or purchaser of the products being imported into a destination country*/
18
21
  country_code?: string;
19
- /** @description : Indicates phone number of the owner or purchaser of the products being imported into a destination country*/
22
+ /** @description : Indicates phone number of the owner or purchaser of the products being imported into a destination country*/
20
23
  phone?: string;
24
+ /** @description : Email associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record)*/
25
+ email?: string;
21
26
  }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImporterOfRecord = void 0;
4
+ /** @description Basic structure for a Importer Records */
5
+ class ImporterOfRecord {
6
+ }
7
+ exports.ImporterOfRecord = ImporterOfRecord;
8
+ //# sourceMappingURL=importer_of_record.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importer_of_record.js","sourceRoot":"","sources":["../../../src/models/importer-records/importer_of_record.ts"],"names":[],"mappings":";;;AAEA,0DAA0D;AAC1D,MAAa,gBAAgB;CAuB5B;AAvBD,4CAuBC"}
@@ -2,6 +2,9 @@ import { Identifier } from '../identifier';
2
2
  import { DimensionDetails } from '../units/dimension-details';
3
3
  import { WeightDetails } from '../units/weight-details';
4
4
  import { Dimensions } from '../units/dimensions';
5
+ import { Currency } from '../currency';
6
+ import { LabelMessage } from '../labels/label-message';
7
+ import { Customs } from '../customs';
5
8
  /** @description Basic structure for a package that has been shipped */
6
9
  export declare class ShippedPackage {
7
10
  /** @description The carrier tracking number associated with this package */
@@ -18,4 +21,10 @@ export declare class ShippedPackage {
18
21
  weight?: number;
19
22
  /** @deprectated Please use the dimension_details property */
20
23
  dimensions?: Dimensions;
24
+ /** @description The insured value of this package. */
25
+ insured_value: Currency;
26
+ /** @description The message the seller requested to have on their label */
27
+ label_messages?: LabelMessage;
28
+ /** @description Basic structure for a customs declaration (Only available on international shipments) */
29
+ customs?: Customs;
21
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shipped-package.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-package.ts"],"names":[],"mappings":";;;AAKA,uEAAuE;AACvE,MAAa,cAAc;CAe1B;AAfD,wCAeC"}
1
+ {"version":3,"file":"shipped-package.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-package.ts"],"names":[],"mappings":";;;AAQA,uEAAuE;AACvE,MAAa,cAAc;CAqB1B;AArBD,wCAqBC"}
@@ -3,6 +3,7 @@ import { ShipTo } from '../addresses/ship-to';
3
3
  import { AdvancedOptions } from '../advanced-options';
4
4
  import { Identifier } from '../identifier';
5
5
  import { ShippedPackage } from './shipped-package';
6
+ import { PudoLocation } from '../../models';
6
7
  /** @description Basic structure for a shipment that has been shipped */
7
8
  export declare class ShippedShipment extends Label {
8
9
  /** @description The carrier tracking number associated with this package */
@@ -17,6 +18,8 @@ export declare class ShippedShipment extends Label {
17
18
  packages?: ShippedPackage[];
18
19
  /** @description Advanced shipping options (Contains Alcohol, Non Machinable, etc) */
19
20
  advanced_options?: AdvancedOptions;
21
+ /** @description Add pick-up location detail*/
22
+ pickup_location?: PudoLocation;
20
23
  }
21
24
  export declare class PickupShipment extends ShippedShipment {
22
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shipped-shipment.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-shipment.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAM3C,wEAAwE;AACxE,MAAa,eAAgB,SAAQ,aAAK;CAazC;AAbD,0CAaC;AAED,MAAa,cAAe,SAAQ,eAAe;CAAG;AAAtD,wCAAsD"}
1
+ {"version":3,"file":"shipped-shipment.js","sourceRoot":"","sources":["../../../src/models/pickup/shipped-shipment.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAO3C,wEAAwE;AACxE,MAAa,eAAgB,SAAQ,aAAK;CAezC;AAfD,0CAeC;AAED,MAAa,cAAe,SAAQ,eAAe;CAAG;AAAtD,wCAAsD"}
@@ -4,6 +4,7 @@ exports.ServicePointSchema = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const joi_1 = tslib_1.__importDefault(require("joi"));
6
6
  const service_point_feature_1 = require("../../app/metadata/service-point-feature");
7
+ const service_point_location_type_1 = require("../../app/metadata/service-point-location-type");
7
8
  const service_point_response_address_schema_1 = require("./service-point-response-address-schema");
8
9
  const weekly_hours_of_operation_schema_1 = require("./weekly-hours-of-operation-schema");
9
10
  exports.ServicePointSchema = joi_1.default.object({
@@ -11,5 +12,6 @@ exports.ServicePointSchema = joi_1.default.object({
11
12
  address: service_point_response_address_schema_1.ServicePointResponseAddressSchema.required(),
12
13
  hours_of_operation: weekly_hours_of_operation_schema_1.WeeklyHoursOfOperationSchema.required(),
13
14
  features: joi_1.default.array().items(service_point_feature_1.ServicePointFeaturesEnumSchema).optional(),
15
+ type: service_point_location_type_1.ServicePointLocationTypeEnumSchema.optional(),
14
16
  });
15
17
  //# sourceMappingURL=service-point-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service-point-schema.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,oFAA0F;AAC1F,mGAA4F;AAC5F,yFAAkF;AAErE,QAAA,kBAAkB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC3C,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,OAAO,EAAE,yEAAiC,CAAC,QAAQ,EAAE;IACrD,kBAAkB,EAAE,+DAA4B,CAAC,QAAQ,EAAE;IAC3D,QAAQ,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,sDAA8B,CAAC,CAAC,QAAQ,EAAE;CACvE,CAAC,CAAC"}
1
+ {"version":3,"file":"service-point-schema.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point-schema.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,oFAA0F;AAC1F,gGAAoG;AACpG,mGAA4F;AAC5F,yFAAkF;AAErE,QAAA,kBAAkB,GAAG,aAAG,CAAC,MAAM,CAAC;IAC3C,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,OAAO,EAAE,yEAAiC,CAAC,QAAQ,EAAE;IACrD,kBAAkB,EAAE,+DAA4B,CAAC,QAAQ,EAAE;IAC3D,QAAQ,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,sDAA8B,CAAC,CAAC,QAAQ,EAAE;IACtE,IAAI,EAAE,gEAAkC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { ServicePointFeaturesEnum } from '../../app/metadata/service-point-feature';
2
+ import { ServicePointLocationTypeEnum } from '../../app/metadata/service-point-location-type';
2
3
  import { ServicePointResponseAddress } from './service-point-response-address';
3
4
  import { WeeklyHoursOfOperation } from './weekly-hours-of-operation';
4
5
  /** @description Basic structure for a service point */
@@ -11,4 +12,6 @@ export declare class ServicePoint {
11
12
  hours_of_operation: WeeklyHoursOfOperation;
12
13
  /** @description Features supported by the service point */
13
14
  features?: ServicePointFeaturesEnum[];
15
+ /** @description Location type like PUDOs, parcelshops, postoffices, lockers, retailers own stores etc. */
16
+ type?: ServicePointLocationTypeEnum;
14
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-point.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point.ts"],"names":[],"mappings":";;;AAIA,uDAAuD;AACvD,MAAa,YAAY;CASxB;AATD,oCASC"}
1
+ {"version":3,"file":"service-point.js","sourceRoot":"","sources":["../../../src/models/service-points/service-point.ts"],"names":[],"mappings":";;;AAKA,uDAAuD;AACvD,MAAa,YAAY;CAWxB;AAXD,oCAWC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/connect-carrier-api",
3
- "version": "2.12.12",
3
+ "version": "2.12.14",
4
4
  "description": "This is the typescript/javascript definitions for carrier api",
5
5
  "homepage": "https://github.com/ShipEngine/connect",
6
6
  "main": "./lib/index.js",
@@ -37,14 +37,14 @@
37
37
  "vitest": "^0.23.4"
38
38
  },
39
39
  "optionalDependencies": {
40
- "vm2": "^3.9.5"
40
+ "vm2": "^3.9.11"
41
41
  },
42
42
  "dependencies": {
43
43
  "joi": "^17.4.2",
44
44
  "tslib": "^2.5.0"
45
45
  },
46
46
  "peerDependencies": {
47
- "@shipengine/connect-runtime": "^1.3.0",
47
+ "@shipengine/connect-runtime": "^1.3.1",
48
48
  "express": "^4.18.2",
49
49
  "winston": "^3.8.2"
50
50
  }
package/spec.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "info": {
4
4
  "title": "Shipping API",
5
5
  "description": "This API specification describes the canonical ShipEngine Shipping API connector module.",
6
- "version": "1.16.23"
6
+ "version": "1.16.24"
7
7
  },
8
8
  "paths": {
9
9
  "/Register": {
@@ -1604,8 +1604,8 @@
1604
1604
  "terms_of_trade_code": {
1605
1605
  "$ref": "#/components/schemas/TermsOfTradeCode"
1606
1606
  },
1607
- "importer_of_records": {
1608
- "$ref": "#/components/schemas/ImporterOfRecords"
1607
+ "importer_of_record": {
1608
+ "$ref": "#/components/schemas/ImporterOfRecord"
1609
1609
  },
1610
1610
  "invoice_additional_details": {
1611
1611
  "$ref": "#/components/schemas/CustomCharges"
@@ -2224,9 +2224,17 @@
2224
2224
  "additionalProperties": false,
2225
2225
  "description": "A key value pair, allowing custom properties to be stored."
2226
2226
  },
2227
- "ImporterOfRecords": {
2227
+ "ImporterOfRecord": {
2228
2228
  "type": "object",
2229
2229
  "properties": {
2230
+ "tax_identifiers": {
2231
+ "type": "array",
2232
+ "items": {
2233
+ "$ref": "#/components/schemas/TaxIdentifier"
2234
+ },
2235
+ "description": "Tax Ids associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record)",
2236
+ "nullable": true
2237
+ },
2230
2238
  "name": {
2231
2239
  "type": "string",
2232
2240
  "description": "Indicates Name of the owner or purchaser of the products being imported into a destination country",
@@ -2271,6 +2279,11 @@
2271
2279
  "type": "string",
2272
2280
  "description": "Indicates phone number of the owner or purchaser of the products being imported into a destination country",
2273
2281
  "nullable": true
2282
+ },
2283
+ "email": {
2284
+ "type": "string",
2285
+ "description": "Email associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record)",
2286
+ "nullable": true
2274
2287
  }
2275
2288
  },
2276
2289
  "additionalProperties": false,
@@ -3179,6 +3192,10 @@
3179
3192
  "$ref": "#/components/schemas/ServicePointFeature"
3180
3193
  },
3181
3194
  "nullable": true
3195
+ },
3196
+ "type": {
3197
+ "$ref": "#/components/schemas/ServicePointLocationType",
3198
+ "nullable": true
3182
3199
  }
3183
3200
  },
3184
3201
  "additionalProperties": false
@@ -3211,6 +3228,13 @@
3211
3228
  ],
3212
3229
  "type": "string"
3213
3230
  },
3231
+ "ServicePointLocationType": {
3232
+ "enum": [
3233
+ "pudo",
3234
+ "locker"
3235
+ ],
3236
+ "type": "string"
3237
+ },
3214
3238
  "ServicePointResponseAddress": {
3215
3239
  "required": [
3216
3240
  "postal_code",
@@ -3325,6 +3349,31 @@
3325
3349
  "type": "string",
3326
3350
  "description": "The code associated with the package type",
3327
3351
  "nullable": true
3352
+ },
3353
+ "label_messages": {
3354
+ "$ref": "#/components/schemas/LabelMessage"
3355
+ },
3356
+ "insured_value": {
3357
+ "required": [
3358
+ "currency",
3359
+ "amount"
3360
+ ],
3361
+ "type": "object",
3362
+ "properties": {
3363
+ "amount": {
3364
+ "type": "string",
3365
+ "description": "Decimal currency value, as a string."
3366
+ },
3367
+ "currency": {
3368
+ "type": "string",
3369
+ "description": "Alpha-3 currency code complying with ISO 4217."
3370
+ }
3371
+ },
3372
+ "description": "The insured value of this package.",
3373
+ "nullable": true
3374
+ },
3375
+ "customs": {
3376
+ "$ref": "#/components/schemas/Customs"
3328
3377
  }
3329
3378
  },
3330
3379
  "additionalProperties": false,
@@ -3364,6 +3413,9 @@
3364
3413
  },
3365
3414
  "advanced_options": {
3366
3415
  "$ref": "#/components/schemas/AdvancedOptions"
3416
+ },
3417
+ "pickup_location": {
3418
+ "$ref": "#/components/schemas/PudoLocation"
3367
3419
  }
3368
3420
  },
3369
3421
  "additionalProperties": false,
@@ -0,0 +1,10 @@
1
+ import Joi from 'joi';
2
+
3
+ export enum ServicePointLocationTypeEnum {
4
+ PUDO = 'pudo',
5
+ Locker = 'locker',
6
+ }
7
+
8
+ export const ServicePointLocationTypeEnumSchema = Joi.string().valid(
9
+ ...Object.values(ServicePointLocationTypeEnum),
10
+ );
@@ -3,7 +3,7 @@ import { CustomsNonDelivery } from './customs-non-delivery';
3
3
  import { CustomsItem } from './customs-item';
4
4
  import { Currency } from '../currency';
5
5
  import { TermsOfTradeCode } from '../inconterms/terms-of-trade-code';
6
- import { ImporterOfRecords } from '../importer-records/ImporterOfRecords';
6
+ import { ImporterOfRecord } from '../importer-records/importer_of_record';
7
7
  import { CustomsCharges } from './customs-charges';
8
8
 
9
9
  /** @description Basic structure for a customs declaration */
@@ -23,7 +23,7 @@ export class Customs {
23
23
  /** @description Incoterms specify who is responsible for paying for and managing the shipment*/
24
24
  termsOfTradeCode?: TermsOfTradeCode;
25
25
  /** @description The owner or purchaser of the products being imported into a destination country.*/
26
- importer_of_records?: ImporterOfRecords;
26
+ importer_of_record?: ImporterOfRecord;
27
27
  /** @description The charges related with customs.*/
28
28
  invoice_additional_details?: CustomsCharges;
29
29
  /**@description: text explanation for the content */
@@ -1,6 +1,10 @@
1
+ import { TaxIdentifier } from '../taxes/tax-identifier';
2
+
1
3
  /** @description Basic structure for a Importer Records */
2
- export class ImporterOfRecords {
3
- /** @description Indicates Name of the owner or purchaser of the products being imported into a destination country */
4
+ export class ImporterOfRecord {
5
+ /** @description Tax Ids associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record) */
6
+ tax_identifiers?: TaxIdentifier[];
7
+ /** @description Indicates Name of the owner or purchaser of the products being imported into a destination country */
4
8
  name?: string;
5
9
  /** @description Indicates Company Name of the owner or purchaser of the products being imported into a destination country*/
6
10
  company_name?: string;
@@ -16,6 +20,8 @@ export class ImporterOfRecords {
16
20
  postal_code?: string;
17
21
  /** @description : Indicates country code of the owner or purchaser of the products being imported into a destination country*/
18
22
  country_code?: string;
19
- /** @description : Indicates phone number of the owner or purchaser of the products being imported into a destination country*/
23
+ /** @description : Indicates phone number of the owner or purchaser of the products being imported into a destination country*/
20
24
  phone?: string;
25
+ /** @description : Email associated with the party responsible for ensuring that imported goods comply with all customs and legal requirements of the country of import (importer of record)*/
26
+ email?: string;
21
27
  }
@@ -2,6 +2,9 @@ import { Identifier } from '../identifier';
2
2
  import { DimensionDetails } from '../units/dimension-details';
3
3
  import { WeightDetails } from '../units/weight-details';
4
4
  import { Dimensions } from '../units/dimensions';
5
+ import { Currency } from '../currency';
6
+ import { LabelMessage } from '../labels/label-message';
7
+ import { Customs } from '../customs';
5
8
 
6
9
  /** @description Basic structure for a package that has been shipped */
7
10
  export class ShippedPackage {
@@ -19,4 +22,10 @@ export class ShippedPackage {
19
22
  weight?: number;
20
23
  /** @deprectated Please use the dimension_details property */
21
24
  dimensions?: Dimensions;
25
+ /** @description The insured value of this package. */
26
+ insured_value!: Currency;
27
+ /** @description The message the seller requested to have on their label */
28
+ label_messages?: LabelMessage;
29
+ /** @description Basic structure for a customs declaration (Only available on international shipments) */
30
+ customs?: Customs;
22
31
  }
@@ -3,6 +3,7 @@ import { ShipTo } from '../addresses/ship-to';
3
3
  import { AdvancedOptions } from '../advanced-options';
4
4
  import { Identifier } from '../identifier';
5
5
  import { ShippedPackage } from './shipped-package';
6
+ import { PudoLocation } from '../../models';
6
7
 
7
8
  /** @description Basic structure for a shipment that has been shipped */
8
9
  export class ShippedShipment extends Label {
@@ -18,6 +19,8 @@ export class ShippedShipment extends Label {
18
19
  packages?: ShippedPackage[];
19
20
  /** @description Advanced shipping options (Contains Alcohol, Non Machinable, etc) */
20
21
  advanced_options?: AdvancedOptions;
22
+ /** @description Add pick-up location detail*/
23
+ pickup_location?: PudoLocation;
21
24
  }
22
25
 
23
26
  export class PickupShipment extends ShippedShipment {}
@@ -1,5 +1,6 @@
1
1
  import Joi from 'joi';
2
2
  import { ServicePointFeaturesEnumSchema } from '../../app/metadata/service-point-feature';
3
+ import { ServicePointLocationTypeEnumSchema } from '../../app/metadata/service-point-location-type';
3
4
  import { ServicePointResponseAddressSchema } from './service-point-response-address-schema';
4
5
  import { WeeklyHoursOfOperationSchema } from './weekly-hours-of-operation-schema';
5
6
 
@@ -8,4 +9,5 @@ export const ServicePointSchema = Joi.object({
8
9
  address: ServicePointResponseAddressSchema.required(),
9
10
  hours_of_operation: WeeklyHoursOfOperationSchema.required(),
10
11
  features: Joi.array().items(ServicePointFeaturesEnumSchema).optional(),
12
+ type: ServicePointLocationTypeEnumSchema.optional(),
11
13
  });
@@ -1,4 +1,5 @@
1
1
  import { ServicePointFeaturesEnum } from '../../app/metadata/service-point-feature';
2
+ import { ServicePointLocationTypeEnum } from '../../app/metadata/service-point-location-type';
2
3
  import { ServicePointResponseAddress } from './service-point-response-address';
3
4
  import { WeeklyHoursOfOperation } from './weekly-hours-of-operation';
4
5
 
@@ -12,4 +13,6 @@ export class ServicePoint {
12
13
  hours_of_operation!: WeeklyHoursOfOperation;
13
14
  /** @description Features supported by the service point */
14
15
  features?: ServicePointFeaturesEnum[];
16
+ /** @description Location type like PUDOs, parcelshops, postoffices, lockers, retailers own stores etc. */
17
+ type?: ServicePointLocationTypeEnum;
15
18
  }