@shipengine/connect-carrier-api 4.1.1 → 4.1.3

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 (31) hide show
  1. package/lib/models/dangerous-good/dangerous-goods.d.ts +46 -0
  2. package/lib/models/dangerous-good/dangerous-goods.js +46 -0
  3. package/lib/models/dangerous-good/dangerous-goods.js.map +1 -0
  4. package/lib/models/dangerous-good/package-instruction-section-types.d.ts +7 -0
  5. package/lib/models/dangerous-good/package-instruction-section-types.js +12 -0
  6. package/lib/models/dangerous-good/package-instruction-section-types.js.map +1 -0
  7. package/lib/models/dangerous-good/packaging-group-types.d.ts +9 -0
  8. package/lib/models/dangerous-good/packaging-group-types.js +14 -0
  9. package/lib/models/dangerous-good/packaging-group-types.js.map +1 -0
  10. package/lib/models/dangerous-good/regulation-level-types.d.ts +11 -0
  11. package/lib/models/dangerous-good/regulation-level-types.js +16 -0
  12. package/lib/models/dangerous-good/regulation-level-types.js.map +1 -0
  13. package/lib/models/dangerous-good/transport-mean-types.d.ts +11 -0
  14. package/lib/models/dangerous-good/transport-mean-types.js +16 -0
  15. package/lib/models/dangerous-good/transport-mean-types.js.map +1 -0
  16. package/lib/models/dangerous-good/weight-details.d.ts +7 -0
  17. package/lib/models/dangerous-good/weight-details.js +12 -0
  18. package/lib/models/dangerous-good/weight-details.js.map +1 -0
  19. package/lib/models/package.d.ts +3 -0
  20. package/lib/models/package.js +2 -0
  21. package/lib/models/package.js.map +1 -1
  22. package/package.json +1 -1
  23. package/spec.json +158 -0
  24. package/src/models/dangerous-good/dangerous-goods.ts +47 -0
  25. package/src/models/dangerous-good/package-instruction-section-types.ts +7 -0
  26. package/src/models/dangerous-good/packaging-group-types.ts +9 -0
  27. package/src/models/dangerous-good/regulation-level-types.ts +11 -0
  28. package/src/models/dangerous-good/transport-mean-types.ts +11 -0
  29. package/src/models/dangerous-good/weight-details.ts +7 -0
  30. package/src/models/package.ts +3 -0
  31. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,46 @@
1
+ import { PackageInstructionSectionTypes } from './package-instruction-section-types';
2
+ import { PackagingGroupTypes } from './packaging-group-types';
3
+ import { RegulationLevelTypes } from './regulation-level-types';
4
+ import { TransportMeanTypes } from './transport-mean-types';
5
+ import { DangerousAmountDetails } from './weight-details';
6
+ /** @description Basic structure for a dangerous goods */
7
+ export declare class DangerousGoods {
8
+ /** @description UN number to identify the dangerous goods */
9
+ id_number?: string;
10
+ /** @description Trade description of the dangerous goods */
11
+ shipping_name?: string;
12
+ /** @description Recognized Technical or chemical name of dangerous goods */
13
+ technical_name?: string;
14
+ /** @description Dangerous goods product class based on regulation */
15
+ product_class?: string;
16
+ /** @description A secondary of product class for substances presenting more than one particular hazard */
17
+ product_class_subsidiary?: string;
18
+ /** @description This indicates the packaging group based on the degree of danger */
19
+ packaging_group?: PackagingGroupTypes;
20
+ /** @description The amount of the dangerous goods */
21
+ dangerous_amount?: DangerousAmountDetails;
22
+ /** @description Quantity of dangerous goods */
23
+ quantity?: number;
24
+ /** @description The specific standardized packaging instructions from the relevant regulatory agency that have been applied to the parcel/container */
25
+ packaging_instruction?: string;
26
+ /** @description Complementary information to specify the exact 'Section of Packaging' instructions */
27
+ packaging_instruction_section?: PackageInstructionSectionTypes;
28
+ /** @description The type of exterior packaging used to contain the dangerous good */
29
+ packaging_type?: string;
30
+ /** @description Transportation means through which the dangerous goods are transported */
31
+ transport_mean?: TransportMeanTypes;
32
+ /** @description Transport category assign to dangerous goods for the transport purpose */
33
+ transport_category?: string;
34
+ /** @description Name of the regulatory authority */
35
+ regulation_authority?: string;
36
+ /** @description Regulation level of the dangerous goods */
37
+ regulation_level?: RegulationLevelTypes;
38
+ /** @description Indication if the substance is radioactive */
39
+ radioactive?: boolean;
40
+ /** @description Indication if the substance needs to be reported to regulatory authority based on the quantity */
41
+ reportable_quantity?: boolean;
42
+ /** @description Defines which types of tunnels the shipment is allowed to go through */
43
+ tunnel_code?: string;
44
+ /** @description Provider additonal description regarding the dangerous goods. This is used as a placed holder to provider additional context and varies by carrier */
45
+ additional_description?: string;
46
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DangerousGoods = void 0;
4
+ /** @description Basic structure for a dangerous goods */
5
+ class DangerousGoods {
6
+ /** @description UN number to identify the dangerous goods */
7
+ id_number;
8
+ /** @description Trade description of the dangerous goods */
9
+ shipping_name;
10
+ /** @description Recognized Technical or chemical name of dangerous goods */
11
+ technical_name;
12
+ /** @description Dangerous goods product class based on regulation */
13
+ product_class;
14
+ /** @description A secondary of product class for substances presenting more than one particular hazard */
15
+ product_class_subsidiary;
16
+ /** @description This indicates the packaging group based on the degree of danger */
17
+ packaging_group;
18
+ /** @description The amount of the dangerous goods */
19
+ dangerous_amount;
20
+ /** @description Quantity of dangerous goods */
21
+ quantity;
22
+ /** @description The specific standardized packaging instructions from the relevant regulatory agency that have been applied to the parcel/container */
23
+ packaging_instruction;
24
+ /** @description Complementary information to specify the exact 'Section of Packaging' instructions */
25
+ packaging_instruction_section;
26
+ /** @description The type of exterior packaging used to contain the dangerous good */
27
+ packaging_type;
28
+ /** @description Transportation means through which the dangerous goods are transported */
29
+ transport_mean;
30
+ /** @description Transport category assign to dangerous goods for the transport purpose */
31
+ transport_category;
32
+ /** @description Name of the regulatory authority */
33
+ regulation_authority;
34
+ /** @description Regulation level of the dangerous goods */
35
+ regulation_level;
36
+ /** @description Indication if the substance is radioactive */
37
+ radioactive;
38
+ /** @description Indication if the substance needs to be reported to regulatory authority based on the quantity */
39
+ reportable_quantity;
40
+ /** @description Defines which types of tunnels the shipment is allowed to go through */
41
+ tunnel_code;
42
+ /** @description Provider additonal description regarding the dangerous goods. This is used as a placed holder to provider additional context and varies by carrier */
43
+ additional_description;
44
+ }
45
+ exports.DangerousGoods = DangerousGoods;
46
+ //# sourceMappingURL=dangerous-goods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dangerous-goods.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/dangerous-goods.ts"],"names":[],"mappings":";;;AAMA,yDAAyD;AACzD,MAAa,cAAc;IACzB,6DAA6D;IAC7D,SAAS,CAAU;IACnB,4DAA4D;IAC5D,aAAa,CAAU;IACvB,4EAA4E;IAC5E,cAAc,CAAU;IACxB,qEAAqE;IACrE,aAAa,CAAU;IACvB,0GAA0G;IAC1G,wBAAwB,CAAU;IAClC,oFAAoF;IACpF,eAAe,CAAuB;IACtC,qDAAqD;IACrD,gBAAgB,CAA0B;IAC1C,+CAA+C;IAC/C,QAAQ,CAAU;IAClB,uJAAuJ;IACvJ,qBAAqB,CAAU;IAC/B,sGAAsG;IACtG,6BAA6B,CAAkC;IAC/D,qFAAqF;IACrF,cAAc,CAAU;IACxB,0FAA0F;IAC1F,cAAc,CAAsB;IACpC,0FAA0F;IAC1F,kBAAkB,CAAU;IAC5B,oDAAoD;IACpD,oBAAoB,CAAU;IAC9B,2DAA2D;IAC3D,gBAAgB,CAAwB;IACxC,8DAA8D;IAC9D,WAAW,CAAW;IACtB,kHAAkH;IAClH,mBAAmB,CAAW;IAC9B,wFAAwF;IACxF,WAAW,CAAU;IACrB,sKAAsK;IACtK,sBAAsB,CAAU;CACjC;AAvCD,wCAuCC"}
@@ -0,0 +1,7 @@
1
+ /** @description Complementary information to specify the exact 'Section of Packaging' Instructions (a mandatory piece of data for processing lithium batteries shipments). */
2
+ export declare enum PackageInstructionSectionTypes {
3
+ Section1 = "section_1",
4
+ Section2 = "section_2",
5
+ Section1A = "section_1A",
6
+ Section1B = "section_1B"
7
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PackageInstructionSectionTypes = void 0;
4
+ /** @description Complementary information to specify the exact 'Section of Packaging' Instructions (a mandatory piece of data for processing lithium batteries shipments). */
5
+ var PackageInstructionSectionTypes;
6
+ (function (PackageInstructionSectionTypes) {
7
+ PackageInstructionSectionTypes["Section1"] = "section_1";
8
+ PackageInstructionSectionTypes["Section2"] = "section_2";
9
+ PackageInstructionSectionTypes["Section1A"] = "section_1A";
10
+ PackageInstructionSectionTypes["Section1B"] = "section_1B";
11
+ })(PackageInstructionSectionTypes = exports.PackageInstructionSectionTypes || (exports.PackageInstructionSectionTypes = {}));
12
+ //# sourceMappingURL=package-instruction-section-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-instruction-section-types.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/package-instruction-section-types.ts"],"names":[],"mappings":";;;AAAA,8KAA8K;AAC9K,IAAY,8BAKX;AALD,WAAY,8BAA8B;IACxC,wDAAsB,CAAA;IACtB,wDAAsB,CAAA;IACtB,0DAAwB,CAAA;IACxB,0DAAwB,CAAA;AAC1B,CAAC,EALW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAKzC"}
@@ -0,0 +1,9 @@
1
+ /** @description Types of packaging group for dangerous good and it indicates the degree of danger */
2
+ export declare enum PackagingGroupTypes {
3
+ /** @description level 1 */
4
+ i = "i",
5
+ /** @description level 2 */
6
+ ii = "ii",
7
+ /** @description level 3 */
8
+ iii = "iii"
9
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PackagingGroupTypes = void 0;
4
+ /** @description Types of packaging group for dangerous good and it indicates the degree of danger */
5
+ var PackagingGroupTypes;
6
+ (function (PackagingGroupTypes) {
7
+ /** @description level 1 */
8
+ PackagingGroupTypes["i"] = "i";
9
+ /** @description level 2 */
10
+ PackagingGroupTypes["ii"] = "ii";
11
+ /** @description level 3 */
12
+ PackagingGroupTypes["iii"] = "iii";
13
+ })(PackagingGroupTypes = exports.PackagingGroupTypes || (exports.PackagingGroupTypes = {}));
14
+ //# sourceMappingURL=packaging-group-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packaging-group-types.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/packaging-group-types.ts"],"names":[],"mappings":";;;AAAA,qGAAqG;AACrG,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,2BAA2B;IAC3B,8BAAO,CAAA;IACP,2BAA2B;IAC3B,gCAAS,CAAA;IACT,2BAA2B;IAC3B,kCAAW,CAAA;AACb,CAAC,EAPW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAO9B"}
@@ -0,0 +1,11 @@
1
+ /** @description Types of regulation level defined for dangerous good */
2
+ export declare enum RegulationLevelTypes {
3
+ /** @description lightly regulated */
4
+ LightlyRegulated = "lightly_regulated",
5
+ /** @description fully regualted */
6
+ FullyRegulated = "fully_regulated",
7
+ /** @description limited quantities regulated */
8
+ LimitedQuantities = "limited_quantities",
9
+ /** @description excepted quantity regulated */
10
+ ExceptedQuantity = "excepted_quantity"
11
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RegulationLevelTypes = void 0;
4
+ /** @description Types of regulation level defined for dangerous good */
5
+ var RegulationLevelTypes;
6
+ (function (RegulationLevelTypes) {
7
+ /** @description lightly regulated */
8
+ RegulationLevelTypes["LightlyRegulated"] = "lightly_regulated";
9
+ /** @description fully regualted */
10
+ RegulationLevelTypes["FullyRegulated"] = "fully_regulated";
11
+ /** @description limited quantities regulated */
12
+ RegulationLevelTypes["LimitedQuantities"] = "limited_quantities";
13
+ /** @description excepted quantity regulated */
14
+ RegulationLevelTypes["ExceptedQuantity"] = "excepted_quantity";
15
+ })(RegulationLevelTypes = exports.RegulationLevelTypes || (exports.RegulationLevelTypes = {}));
16
+ //# sourceMappingURL=regulation-level-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regulation-level-types.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/regulation-level-types.ts"],"names":[],"mappings":";;;AAAA,wEAAwE;AACxE,IAAY,oBASX;AATD,WAAY,oBAAoB;IAC9B,qCAAqC;IACrC,8DAAsC,CAAA;IACtC,mCAAmC;IACnC,0DAAkC,CAAA;IAClC,gDAAgD;IAChD,gEAAwC,CAAA;IACxC,+CAA+C;IAC/C,8DAAsC,CAAA;AACxC,CAAC,EATW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAS/B"}
@@ -0,0 +1,11 @@
1
+ /** @description Types of transport mean for dangerous good */
2
+ export declare enum TransportMeanTypes {
3
+ /** @description ground transport */
4
+ Ground = "ground",
5
+ /** @description water transport */
6
+ Water = "water",
7
+ /** @description cargo aircraft only transport */
8
+ Cargo_Aircraft_Only = "cargo_aircraft_only",
9
+ /** @description passenger aircraft transport */
10
+ Passenger_Aircraft = "passenger_aircraft"
11
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransportMeanTypes = void 0;
4
+ /** @description Types of transport mean for dangerous good */
5
+ var TransportMeanTypes;
6
+ (function (TransportMeanTypes) {
7
+ /** @description ground transport */
8
+ TransportMeanTypes["Ground"] = "ground";
9
+ /** @description water transport */
10
+ TransportMeanTypes["Water"] = "water";
11
+ /** @description cargo aircraft only transport */
12
+ TransportMeanTypes["Cargo_Aircraft_Only"] = "cargo_aircraft_only";
13
+ /** @description passenger aircraft transport */
14
+ TransportMeanTypes["Passenger_Aircraft"] = "passenger_aircraft";
15
+ })(TransportMeanTypes = exports.TransportMeanTypes || (exports.TransportMeanTypes = {}));
16
+ //# sourceMappingURL=transport-mean-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport-mean-types.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/transport-mean-types.ts"],"names":[],"mappings":";;;AAAA,8DAA8D;AAC9D,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,oCAAoC;IACpC,uCAAiB,CAAA;IACjB,mCAAmC;IACnC,qCAAe,CAAA;IACf,iDAAiD;IACjD,iEAA2C,CAAA;IAC3C,gDAAgD;IAChD,+DAAyC,CAAA;AAC3C,CAAC,EATW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAS7B"}
@@ -0,0 +1,7 @@
1
+ /** @description This model represents the amount of the dangerous goods */
2
+ export declare class DangerousAmountDetails {
3
+ /** @description The amount of dangerous goods */
4
+ amount?: number;
5
+ /** @description The unit of dangerous goods */
6
+ unit?: string;
7
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DangerousAmountDetails = void 0;
4
+ /** @description This model represents the amount of the dangerous goods */
5
+ class DangerousAmountDetails {
6
+ /** @description The amount of dangerous goods */
7
+ amount;
8
+ /** @description The unit of dangerous goods */
9
+ unit;
10
+ }
11
+ exports.DangerousAmountDetails = DangerousAmountDetails;
12
+ //# sourceMappingURL=weight-details.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weight-details.js","sourceRoot":"","sources":["../../../src/models/dangerous-good/weight-details.ts"],"names":[],"mappings":";;;AAAA,2EAA2E;AAC3E,MAAa,sBAAsB;IACjC,iDAAiD;IACjD,MAAM,CAAU;IAChB,+CAA+C;IAC/C,IAAI,CAAU;CACf;AALD,wDAKC"}
@@ -3,6 +3,7 @@ import { WeightDetails } from './units/weight-details';
3
3
  import { Currency } from './currency';
4
4
  import { LabelMessage } from './labels/label-message';
5
5
  import { Customs } from './customs';
6
+ import { DangerousGoods } from './dangerous-good/dangerous-goods';
6
7
  /** @description Basic structure for a package */
7
8
  export declare class Package {
8
9
  /** @description Package code defined for the carrier in ShipEngine. */
@@ -19,4 +20,6 @@ export declare class Package {
19
20
  label_messages?: LabelMessage;
20
21
  /** @description Basic structure for a customs declaration (Only available on international shipments) */
21
22
  customs?: Customs;
23
+ /** @description List of dangerous goods model associated with this package passed to the carrier. */
24
+ dangerous_goods?: DangerousGoods[];
22
25
  }
@@ -17,6 +17,8 @@ class Package {
17
17
  label_messages;
18
18
  /** @description Basic structure for a customs declaration (Only available on international shipments) */
19
19
  customs;
20
+ /** @description List of dangerous goods model associated with this package passed to the carrier. */
21
+ dangerous_goods;
20
22
  }
21
23
  exports.Package = Package;
22
24
  //# sourceMappingURL=package.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/models/package.ts"],"names":[],"mappings":";;;AAMA,iDAAiD;AACjD,MAAa,OAAO;IAClB,uEAAuE;IACvE,YAAY,CAAU;IACtB,sIAAsI;IACtI,mBAAmB,CAAU;IAC7B,+DAA+D;IAC/D,iBAAiB,CAAoB;IACrC,2DAA2D;IAC3D,cAAc,CAAiB;IAC/B,sDAAsD;IACtD,aAAa,CAAY;IACzB,2EAA2E;IAC3E,cAAc,CAAgB;IAC9B,yGAAyG;IACzG,OAAO,CAAW;CACnB;AAfD,0BAeC"}
1
+ {"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/models/package.ts"],"names":[],"mappings":";;;AAOA,iDAAiD;AACjD,MAAa,OAAO;IAClB,uEAAuE;IACvE,YAAY,CAAU;IACtB,sIAAsI;IACtI,mBAAmB,CAAU;IAC7B,+DAA+D;IAC/D,iBAAiB,CAAoB;IACrC,2DAA2D;IAC3D,cAAc,CAAiB;IAC/B,sDAAsD;IACtD,aAAa,CAAY;IACzB,2EAA2E;IAC3E,cAAc,CAAgB;IAC9B,yGAAyG;IACzG,OAAO,CAAW;IAClB,qGAAqG;IACrG,eAAe,CAAoB;CACpC;AAjBD,0BAiBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/connect-carrier-api",
3
- "version": "4.1.1",
3
+ "version": "4.1.3",
4
4
  "description": "This is the typescript/javascript definitions for carrier api",
5
5
  "homepage": "https://connect.shipengine.com",
6
6
  "main": "./lib/index.js",
package/spec.json CHANGED
@@ -1177,6 +1177,45 @@
1177
1177
  ],
1178
1178
  "type": "string"
1179
1179
  },
1180
+ "PackagingGroupTypes": {
1181
+ "enum": [
1182
+ "i",
1183
+ "ii",
1184
+ "iii"
1185
+ ],
1186
+ "type": "string",
1187
+ "description": "An enumeration for packaging group for dangerous goods."
1188
+ },
1189
+ "PackageInstructionSectionTypes": {
1190
+ "enum": [
1191
+ "section_1",
1192
+ "section_2",
1193
+ "section_1A",
1194
+ "section_1B"
1195
+ ],
1196
+ "type": "string",
1197
+ "description": "An enumeration for package instruction for dangerous goods."
1198
+ },
1199
+ "TransportMeanTypes": {
1200
+ "enum": [
1201
+ "ground",
1202
+ "water",
1203
+ "cargo_aircraft_only",
1204
+ "passenger_aircraft"
1205
+ ],
1206
+ "type": "string",
1207
+ "description": "An enumeration for transport means for dangerous goods."
1208
+ },
1209
+ "RegulationLevelTypes": {
1210
+ "enum": [
1211
+ "lightly_regulated",
1212
+ "fully_regulated",
1213
+ "limited_quantities",
1214
+ "excepted_quantity"
1215
+ ],
1216
+ "type": "string",
1217
+ "description": "An enumeration for regulation type for dangerous goods."
1218
+ },
1180
1219
  "CreateLabelRequest": {
1181
1220
  "required": [
1182
1221
  "service_code",
@@ -1836,6 +1875,24 @@
1836
1875
  "type": "string",
1837
1876
  "description": "What to do if the shipment is undeliverable."
1838
1877
  },
1878
+ "DangerousAmountDetails": {
1879
+ "type": "object",
1880
+ "properties": {
1881
+ "amount": {
1882
+ "type": "number",
1883
+ "description": "The amount of dangerous goods.",
1884
+ "format": "double",
1885
+ "nullable": true
1886
+ },
1887
+ "unit": {
1888
+ "type": "string",
1889
+ "description": "The unit of dangerous goods.",
1890
+ "nullable": true
1891
+ }
1892
+ },
1893
+ "additionalProperties": false,
1894
+ "description": "This model represents the amount of the dangerous goods."
1895
+ },
1839
1896
  "DimensionDetails": {
1840
1897
  "type": "object",
1841
1898
  "properties": {
@@ -2761,11 +2818,112 @@
2761
2818
  },
2762
2819
  "customs": {
2763
2820
  "$ref": "#/components/schemas/Customs"
2821
+ },
2822
+ "dangerous_goods": {
2823
+ "type": "array",
2824
+ "items": {
2825
+ "$ref": "#/components/schemas/DangerousGoods"
2826
+ },
2827
+ "description": "List of dangerous Goods model associated with this package passed to the carrier.",
2828
+ "nullable": true
2764
2829
  }
2765
2830
  },
2766
2831
  "additionalProperties": false,
2767
2832
  "description": "This model represents an individual package that is part of a shipment."
2768
2833
  },
2834
+ "DangerousGoods": {
2835
+ "type": "object",
2836
+ "properties": {
2837
+ "id_number": {
2838
+ "type": "string",
2839
+ "description": "UN number to identify the dangerous goods.",
2840
+ "nullable": true
2841
+ },
2842
+ "shipping_name": {
2843
+ "type": "string",
2844
+ "description": "Trade description of the dangerous goods.",
2845
+ "nullable": true
2846
+ },
2847
+ "technical_name": {
2848
+ "type": "string",
2849
+ "description": "Recognized Technical or chemical name of dangerous goods.",
2850
+ "nullable": true
2851
+ },
2852
+ "product_class": {
2853
+ "type": "string",
2854
+ "description": "Dangerous goods product class based on regulation.",
2855
+ "nullable": true
2856
+ },
2857
+ "product_class_subsidiary": {
2858
+ "type": "string",
2859
+ "description": "A secondary of product class for substances presenting more than one particular hazard.",
2860
+ "nullable": true
2861
+ },
2862
+ "packaging_group": {
2863
+ "$ref": "#/components/schemas/PackagingGroupTypes"
2864
+ },
2865
+ "dangerous_amount": {
2866
+ "$ref": "#/components/schemas/DangerousAmountDetails"
2867
+ },
2868
+ "quantity": {
2869
+ "type": "number",
2870
+ "description": "Quantity of dangerous goods.",
2871
+ "format": "double",
2872
+ "nullable": true
2873
+ },
2874
+ "packaging_instruction": {
2875
+ "type": "string",
2876
+ "description": "The specific standardized packaging instructions from the relevant regulatory agency that have been applied to the parcel/container.",
2877
+ "nullable": true
2878
+ },
2879
+ "packaging_instruction_section": {
2880
+ "$ref": "#/components/schemas/PackageInstructionSectionTypes"
2881
+ },
2882
+ "packaging_type": {
2883
+ "type": "string",
2884
+ "description": "The type of exterior packaging used to contain the dangerous good.",
2885
+ "nullable": true
2886
+ },
2887
+ "transport_mean": {
2888
+ "$ref": "#/components/schemas/TransportMeanTypes"
2889
+ },
2890
+ "transport_category": {
2891
+ "type": "string",
2892
+ "description": "Transport category assign to dangerous goods for the transport purpose.",
2893
+ "nullable": true
2894
+ },
2895
+ "regulation_authority": {
2896
+ "type": "string",
2897
+ "description": "Name of the regulatory authority.",
2898
+ "nullable": true
2899
+ },
2900
+ "regulation_level": {
2901
+ "$ref": "#/components/schemas/RegulationLevelTypes"
2902
+ },
2903
+ "radioactive": {
2904
+ "type": "boolean",
2905
+ "description": "Indication if the substance is radioactive.",
2906
+ "nullable": true
2907
+ },
2908
+ "reportable_quantity": {
2909
+ "type": "boolean",
2910
+ "description": "Indication if the substance needs to be reported to regulatory authority based on the quantity.",
2911
+ "nullable": true
2912
+ },
2913
+ "tunnel_code": {
2914
+ "type": "string",
2915
+ "description": "Defines which types of tunnels the shipment is allowed to go through.",
2916
+ "nullable": true
2917
+ },
2918
+ "additional_description": {
2919
+ "type": "string",
2920
+ "description": "Provider additonal description regarding the dangerous goods. This is used as a placed holder to provider additional context and varies by carrier.",
2921
+ "nullable": true
2922
+ }
2923
+ },
2924
+ "additionalProperties": false,
2925
+ "description": "This model represents an dangerous good information that is part of a package."
2926
+ },
2769
2927
  "PickupConfirmation": {
2770
2928
  "type": "object",
2771
2929
  "properties": {
@@ -0,0 +1,47 @@
1
+ import { PackageInstructionSectionTypes } from './package-instruction-section-types';
2
+ import { PackagingGroupTypes } from './packaging-group-types';
3
+ import { RegulationLevelTypes } from './regulation-level-types';
4
+ import { TransportMeanTypes } from './transport-mean-types';
5
+ import { DangerousAmountDetails } from './weight-details';
6
+
7
+ /** @description Basic structure for a dangerous goods */
8
+ export class DangerousGoods {
9
+ /** @description UN number to identify the dangerous goods */
10
+ id_number?: string;
11
+ /** @description Trade description of the dangerous goods */
12
+ shipping_name?: string;
13
+ /** @description Recognized Technical or chemical name of dangerous goods */
14
+ technical_name?: string;
15
+ /** @description Dangerous goods product class based on regulation */
16
+ product_class?: string;
17
+ /** @description A secondary of product class for substances presenting more than one particular hazard */
18
+ product_class_subsidiary?: string;
19
+ /** @description This indicates the packaging group based on the degree of danger */
20
+ packaging_group?: PackagingGroupTypes;
21
+ /** @description The amount of the dangerous goods */
22
+ dangerous_amount?: DangerousAmountDetails;
23
+ /** @description Quantity of dangerous goods */
24
+ quantity?: number;
25
+ /** @description The specific standardized packaging instructions from the relevant regulatory agency that have been applied to the parcel/container */
26
+ packaging_instruction?: string;
27
+ /** @description Complementary information to specify the exact 'Section of Packaging' instructions */
28
+ packaging_instruction_section?: PackageInstructionSectionTypes;
29
+ /** @description The type of exterior packaging used to contain the dangerous good */
30
+ packaging_type?: string;
31
+ /** @description Transportation means through which the dangerous goods are transported */
32
+ transport_mean?: TransportMeanTypes;
33
+ /** @description Transport category assign to dangerous goods for the transport purpose */
34
+ transport_category?: string;
35
+ /** @description Name of the regulatory authority */
36
+ regulation_authority?: string;
37
+ /** @description Regulation level of the dangerous goods */
38
+ regulation_level?: RegulationLevelTypes;
39
+ /** @description Indication if the substance is radioactive */
40
+ radioactive?: boolean;
41
+ /** @description Indication if the substance needs to be reported to regulatory authority based on the quantity */
42
+ reportable_quantity?: boolean;
43
+ /** @description Defines which types of tunnels the shipment is allowed to go through */
44
+ tunnel_code?: string;
45
+ /** @description Provider additonal description regarding the dangerous goods. This is used as a placed holder to provider additional context and varies by carrier */
46
+ additional_description?: string;
47
+ }
@@ -0,0 +1,7 @@
1
+ /** @description Complementary information to specify the exact 'Section of Packaging' Instructions (a mandatory piece of data for processing lithium batteries shipments). */
2
+ export enum PackageInstructionSectionTypes {
3
+ Section1 = 'section_1',
4
+ Section2 = 'section_2',
5
+ Section1A = 'section_1A',
6
+ Section1B = 'section_1B',
7
+ }
@@ -0,0 +1,9 @@
1
+ /** @description Types of packaging group for dangerous good and it indicates the degree of danger */
2
+ export enum PackagingGroupTypes {
3
+ /** @description level 1 */
4
+ i = 'i',
5
+ /** @description level 2 */
6
+ ii = 'ii',
7
+ /** @description level 3 */
8
+ iii = 'iii',
9
+ }
@@ -0,0 +1,11 @@
1
+ /** @description Types of regulation level defined for dangerous good */
2
+ export enum RegulationLevelTypes {
3
+ /** @description lightly regulated */
4
+ LightlyRegulated = 'lightly_regulated',
5
+ /** @description fully regualted */
6
+ FullyRegulated = 'fully_regulated',
7
+ /** @description limited quantities regulated */
8
+ LimitedQuantities = 'limited_quantities',
9
+ /** @description excepted quantity regulated */
10
+ ExceptedQuantity = 'excepted_quantity',
11
+ }
@@ -0,0 +1,11 @@
1
+ /** @description Types of transport mean for dangerous good */
2
+ export enum TransportMeanTypes {
3
+ /** @description ground transport */
4
+ Ground = 'ground',
5
+ /** @description water transport */
6
+ Water = 'water',
7
+ /** @description cargo aircraft only transport */
8
+ Cargo_Aircraft_Only = 'cargo_aircraft_only',
9
+ /** @description passenger aircraft transport */
10
+ Passenger_Aircraft = 'passenger_aircraft',
11
+ }
@@ -0,0 +1,7 @@
1
+ /** @description This model represents the amount of the dangerous goods */
2
+ export class DangerousAmountDetails {
3
+ /** @description The amount of dangerous goods */
4
+ amount?: number;
5
+ /** @description The unit of dangerous goods */
6
+ unit?: string;
7
+ }
@@ -3,6 +3,7 @@ import { WeightDetails } from './units/weight-details';
3
3
  import { Currency } from './currency';
4
4
  import { LabelMessage } from './labels/label-message';
5
5
  import { Customs } from './customs';
6
+ import { DangerousGoods } from './dangerous-good/dangerous-goods';
6
7
 
7
8
  /** @description Basic structure for a package */
8
9
  export class Package {
@@ -20,4 +21,6 @@ export class Package {
20
21
  label_messages?: LabelMessage;
21
22
  /** @description Basic structure for a customs declaration (Only available on international shipments) */
22
23
  customs?: Customs;
24
+ /** @description List of dangerous goods model associated with this package passed to the carrier. */
25
+ dangerous_goods?: DangerousGoods[];
23
26
  }