@shipengine/connect-carrier-api 4.1.0 → 4.1.2

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 (29) hide show
  1. package/lib/models/dangerous-good/dangerous-goods.d.ts +45 -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/importer-records/importer-of-record.d.ts +1 -1
  17. package/lib/models/package.d.ts +3 -0
  18. package/lib/models/package.js +2 -0
  19. package/lib/models/package.js.map +1 -1
  20. package/package.json +2 -1
  21. package/spec.json +375 -116
  22. package/src/models/dangerous-good/dangerous-goods.ts +46 -0
  23. package/src/models/dangerous-good/package-instruction-section-types.ts +7 -0
  24. package/src/models/dangerous-good/packaging-group-types.ts +9 -0
  25. package/src/models/dangerous-good/regulation-level-types.ts +11 -0
  26. package/src/models/dangerous-good/transport-mean-types.ts +11 -0
  27. package/src/models/importer-records/importer-of-record.ts +1 -1
  28. package/src/models/package.ts +3 -0
  29. package/tsconfig.tsbuildinfo +1 -1
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.17.3"
6
+ "version": "1.18.1"
7
7
  },
8
8
  "paths": {
9
9
  "/Register": {
@@ -576,7 +576,7 @@
576
576
  "tags": [
577
577
  "Tracking"
578
578
  ],
579
- "description": "This method returns imported tracking events for a connection, and should only be implemented if you support\r\nimporting tracking data in bulk via file exchange or API requests.\r\n \r\nAny information needed to retrieve tracking data for a connection should be collected in your registration\r\nform and will be made available as metadata in the request.",
579
+ "description": "This method should yield imported tracking events for a connection. It should\r\nonly be implemented if you support importing tracking data in bulk via file\r\nexchange or API requests.\r\nAny information needed to retrieve tracking data for a connection should be\r\ncollected in your registration form and will be made available as metadata in\r\nthe request.\r\nSee the [Tracking Overview](https://connect.shipengine.com/shipping/tracking/)\r\nfor implementation details.",
580
580
  "operationId": "ImportTrackingEvents",
581
581
  "requestBody": {
582
582
  "description": "An object containing information about the connection to import tracking events for.",
@@ -604,6 +604,37 @@
604
604
  }
605
605
  }
606
606
  }
607
+ },
608
+ "/ValidateShipment": {
609
+ "post": {
610
+ "tags": [
611
+ "Validations"
612
+ ],
613
+ "description": "This method validates a shipment against carrier constraints for selected service.",
614
+ "operationId": "ValidateShipment",
615
+ "requestBody": {
616
+ "description": "An object containing information about the shipment and selected services to validate.",
617
+ "content": {
618
+ "application/json": {
619
+ "schema": {
620
+ "$ref": "#/components/schemas/ValidateShipmentRequest"
621
+ }
622
+ }
623
+ }
624
+ },
625
+ "responses": {
626
+ "200": {
627
+ "description": "This object model represents the response from a successful validate shipment request.",
628
+ "content": {
629
+ "application/json": {
630
+ "schema": {
631
+ "$ref": "#/components/schemas/ValidateShipmentResponse"
632
+ }
633
+ }
634
+ }
635
+ }
636
+ }
637
+ }
607
638
  }
608
639
  },
609
640
  "components": {
@@ -819,6 +850,39 @@
819
850
  },
820
851
  "additionalProperties": false
821
852
  },
853
+ "BillTo": {
854
+ "required": [
855
+ "postal_code",
856
+ "country_code"
857
+ ],
858
+ "type": "object",
859
+ "allOf": [
860
+ {
861
+ "$ref": "#/components/schemas/AddressWithContact"
862
+ }
863
+ ],
864
+ "properties": {
865
+ "bill_to_party": {
866
+ "$ref": "#/components/schemas/BillToParty"
867
+ },
868
+ "account_number": {
869
+ "type": "string",
870
+ "description": "Specified if there is an account number associated with the Bill To Party, and the Bill To Party is\r\nnot the account holder.",
871
+ "nullable": true
872
+ }
873
+ },
874
+ "additionalProperties": false,
875
+ "description": "Bill to is a generic object used for billing a part of the shipment, duties, taxes, or otherwise to a party\r\nother than the shipper (the shipper is considered the default party responsible). CarrierApi.Common.Request.CarrierApi.Common.Models.BillTo\r\nextends CarrierApi.Common.Models.Addresses.AddressWithContact since address fields are often required when associating billing to\r\nanother account. Additionally, this allows for a contact to be specified, if necessary."
876
+ },
877
+ "BillToParty": {
878
+ "enum": [
879
+ "shipper",
880
+ "recipient",
881
+ "third_party_account"
882
+ ],
883
+ "type": "string",
884
+ "description": "The type of party responsible for a given category of charges associated with a shipment, such as shipping charges or import duties."
885
+ },
822
886
  "BillingCategories": {
823
887
  "enum": [
824
888
  "uncategorized",
@@ -838,7 +902,9 @@
838
902
  "oversize",
839
903
  "returns",
840
904
  "notifications",
841
- "tip"
905
+ "tip",
906
+ "duties_and_taxes",
907
+ "brokerage_fee"
842
908
  ],
843
909
  "type": "string"
844
910
  },
@@ -889,76 +955,6 @@
889
955
  },
890
956
  "additionalProperties": false
891
957
  },
892
- "BillTo": {
893
- "required": [
894
- "postal_code",
895
- "country_code"
896
- ],
897
- "type": "object",
898
- "allOf": [
899
- {
900
- "$ref": "#/components/schemas/AddressWithContact"
901
- }
902
- ],
903
- "properties": {
904
- "bill_to_party": {
905
- "$ref": "#/components/schemas/BillToParty"
906
- },
907
- "account_number": {
908
- "type": "string",
909
- "description": "Specified if there is an account number associated with the Bill To Party, and the Bill To Party is\r\nnot the account holder.",
910
- "nullable": true
911
- }
912
- },
913
- "additionalProperties": false,
914
- "description": "Bill to is a generic object used for billing a part of the shipment, duties, taxes, or otherwise to a party\r\nother than the shipper (the shipper is considered the default party responsible). CarrierApi.Common.Request.CarrierApi.Common.Models.BillTo\r\nextends CarrierApi.Common.Models.Addresses.AddressWithContact since address fields are often required when associating billing to\r\nanother account. Additionally, this allows for a contact to be specified, if necessary."
915
- },
916
- "BillToParty": {
917
- "enum": [
918
- "shipper",
919
- "recipient",
920
- "third_party_account"
921
- ],
922
- "type": "string",
923
- "description": "The type of party responsible for a given category of charges associated with a shipment, such as shipping charges or import duties."
924
- },
925
- "CancellationDetails": {
926
- "required": [
927
- "reason"
928
- ],
929
- "type": "object",
930
- "properties": {
931
- "reason": {
932
- "$ref": "#/components/schemas/CancellationReason"
933
- },
934
- "cancellation_options": {
935
- "type": "object",
936
- "additionalProperties": {
937
- "type": "string"
938
- },
939
- "description": "Additional properties about the cancellation",
940
- "nullable": true
941
- },
942
- "remarks": {
943
- "type": "string",
944
- "description": "Remarks about why the customer is cancelling the pickup",
945
- "nullable": true
946
- }
947
- },
948
- "additionalProperties": false,
949
- "description": "This model contains the explanation of why a user is cancelling a pickup."
950
- },
951
- "CancellationReason": {
952
- "enum": [
953
- "other",
954
- "not_ready",
955
- "cost_too_high",
956
- "service_too_slow",
957
- "carrier_failed_pickup"
958
- ],
959
- "type": "string",
960
- "description": "An enumeration of common reasons cancellations occur"
961
- },
962
958
  "CancelNotificationRequest": {
963
959
  "required": [
964
960
  "transaction_id"
@@ -1092,6 +1088,44 @@
1092
1088
  "additionalProperties": false,
1093
1089
  "description": "This model represents a response for a successful cancel pickup request."
1094
1090
  },
1091
+ "CancellationDetails": {
1092
+ "required": [
1093
+ "reason"
1094
+ ],
1095
+ "type": "object",
1096
+ "properties": {
1097
+ "reason": {
1098
+ "$ref": "#/components/schemas/CancellationReason"
1099
+ },
1100
+ "cancellation_options": {
1101
+ "type": "object",
1102
+ "additionalProperties": {
1103
+ "type": "string",
1104
+ "nullable": true
1105
+ },
1106
+ "description": "Additional properties about the cancellation",
1107
+ "nullable": true
1108
+ },
1109
+ "remarks": {
1110
+ "type": "string",
1111
+ "description": "Remarks about why the customer is cancelling the pickup",
1112
+ "nullable": true
1113
+ }
1114
+ },
1115
+ "additionalProperties": false,
1116
+ "description": "This model contains the explanation of why a user is cancelling a pickup."
1117
+ },
1118
+ "CancellationReason": {
1119
+ "enum": [
1120
+ "other",
1121
+ "not_ready",
1122
+ "cost_too_high",
1123
+ "service_too_slow",
1124
+ "carrier_failed_pickup"
1125
+ ],
1126
+ "type": "string",
1127
+ "description": "An enumeration of common reasons cancellations occur"
1128
+ },
1095
1129
  "CodPaymentType": {
1096
1130
  "enum": [
1097
1131
  "any",
@@ -1143,6 +1177,45 @@
1143
1177
  ],
1144
1178
  "type": "string"
1145
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
+ "cao",
1204
+ "pa"
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
+ },
1146
1219
  "CreateLabelRequest": {
1147
1220
  "required": [
1148
1221
  "service_code",
@@ -1821,6 +1894,14 @@
1821
1894
  "additionalProperties": false,
1822
1895
  "description": "This model represents the dimensions for a package represented in its original unit, inches, and centimeters."
1823
1896
  },
1897
+ "DimensionUnit": {
1898
+ "enum": [
1899
+ "inches",
1900
+ "centimeters"
1901
+ ],
1902
+ "type": "string",
1903
+ "description": "This model represents the supported units for dimensions."
1904
+ },
1824
1905
  "Dimensions": {
1825
1906
  "type": "object",
1826
1907
  "properties": {
@@ -1846,14 +1927,6 @@
1846
1927
  "additionalProperties": false,
1847
1928
  "description": "This model represents the measurements for dimensions."
1848
1929
  },
1849
- "DimensionUnit": {
1850
- "enum": [
1851
- "inches",
1852
- "centimeters"
1853
- ],
1854
- "type": "string",
1855
- "description": "This model represents the supported units for dimensions."
1856
- },
1857
1930
  "DisplayScheme": {
1858
1931
  "enum": [
1859
1932
  "label",
@@ -2311,6 +2384,18 @@
2311
2384
  "additionalProperties": false,
2312
2385
  "description": "A key value pair, allowing custom properties to be stored."
2313
2386
  },
2387
+ "ImportTrackingEventsRequest": {
2388
+ "required": [
2389
+ "transaction_id"
2390
+ ],
2391
+ "type": "object",
2392
+ "allOf": [
2393
+ {
2394
+ "$ref": "#/components/schemas/BaseRequest"
2395
+ }
2396
+ ],
2397
+ "additionalProperties": false
2398
+ },
2314
2399
  "ImportedTrackingEvent": {
2315
2400
  "type": "object",
2316
2401
  "properties": {
@@ -2405,18 +2490,6 @@
2405
2490
  "additionalProperties": false,
2406
2491
  "description": "Basic structure for a Importer Record"
2407
2492
  },
2408
- "ImportTrackingEventsRequest": {
2409
- "required": [
2410
- "transaction_id"
2411
- ],
2412
- "type": "object",
2413
- "allOf": [
2414
- {
2415
- "$ref": "#/components/schemas/BaseRequest"
2416
- }
2417
- ],
2418
- "additionalProperties": false
2419
- },
2420
2493
  "InboundDataContentTypes": {
2421
2494
  "enum": [
2422
2495
  "tracking"
@@ -2727,11 +2800,114 @@
2727
2800
  },
2728
2801
  "customs": {
2729
2802
  "$ref": "#/components/schemas/Customs"
2803
+ },
2804
+ "dangerous_goods": {
2805
+ "type": "array",
2806
+ "items": {
2807
+ "$ref": "#/components/schemas/DangerousGoods"
2808
+ },
2809
+ "description": "List of dangerous Goods model associated with this package passed to the carrier.",
2810
+ "nullable": true
2730
2811
  }
2731
2812
  },
2732
2813
  "additionalProperties": false,
2733
2814
  "description": "This model represents an individual package that is part of a shipment."
2734
2815
  },
2816
+ "DangerousGoods": {
2817
+ "type": "object",
2818
+ "properties": {
2819
+ "id_number": {
2820
+ "type": "string",
2821
+ "description": "UN number to identify the dangerous goods.",
2822
+ "nullable": true
2823
+ },
2824
+ "shipping_name": {
2825
+ "type": "string",
2826
+ "description": "Trade description of the dangerous goods.",
2827
+ "nullable": true
2828
+ },
2829
+ "technical_name": {
2830
+ "type": "string",
2831
+ "description": "Recognized Technical or chemical name of dangerous goods.",
2832
+ "nullable": true
2833
+ },
2834
+ "product_class": {
2835
+ "type": "string",
2836
+ "description": "Dangerous goods product class based on regulation.",
2837
+ "nullable": true
2838
+ },
2839
+ "product_class_subsidiary": {
2840
+ "type": "string",
2841
+ "description": "A secondary of product class for substances presenting more than one particular hazard.",
2842
+ "nullable": true
2843
+ },
2844
+ "packaging_group": {
2845
+ "$ref": "#/components/schemas/PackagingGroupTypes"
2846
+ },
2847
+ "dangerous_amount": {
2848
+ "type": "string",
2849
+ "description": "The amount of the dangerous goods.",
2850
+ "nullable": true
2851
+ },
2852
+ "quantity": {
2853
+ "type": "number",
2854
+ "description": "Quantity of dangerous goods.",
2855
+ "format": "double",
2856
+ "nullable": true
2857
+ },
2858
+ "packaging_instruction": {
2859
+ "type": "string",
2860
+ "description": "The specific standardized packaging instructions from the relevant regulatory agency that have been applied to the parcel/container.",
2861
+ "nullable": true
2862
+ },
2863
+ "packaging_instruction_section": {
2864
+ "$ref": "#/components/schemas/PackageInstructionSectionTypes"
2865
+ },
2866
+ "packaging_type": {
2867
+ "type": "string",
2868
+ "description": "The type of exterior packaging used to contain the dangerous good.",
2869
+ "nullable": true
2870
+ },
2871
+ "transport_mean": {
2872
+ "$ref": "#/components/schemas/TransportMeanTypes"
2873
+ },
2874
+ "transport_category": {
2875
+ "type": "string",
2876
+ "description": "Transport category assign to dangerous goods for the transport purpose.",
2877
+ "nullable": true
2878
+ },
2879
+ "regulation_authority": {
2880
+ "type": "string",
2881
+ "description": "Name of the regulatory authority.",
2882
+ "nullable": true
2883
+ },
2884
+ "regulation_level": {
2885
+ "$ref": "#/components/schemas/RegulationLevelTypes"
2886
+ },
2887
+ "radioactive": {
2888
+ "type": "boolean",
2889
+ "description": "Indication if the substance is radioactive.",
2890
+ "nullable": true
2891
+ },
2892
+ "reportable_quantity": {
2893
+ "type": "boolean",
2894
+ "description": "Indication if the substance needs to be reported to regulatory authority based on the quantity.",
2895
+ "nullable": true
2896
+ },
2897
+ "tunnel_code": {
2898
+ "type": "string",
2899
+ "description": "Defines which types of tunnels the shipment is allowed to go through.",
2900
+ "nullable": true
2901
+ },
2902
+ "additional_description": {
2903
+ "type": "string",
2904
+ "description": "Provider additonal description regarding the dangerous goods. This is used as a placed holder to provider additional context and varies by carrier.",
2905
+ "nullable": true
2906
+ }
2907
+ },
2908
+ "additionalProperties": false,
2909
+ "description": "This model represents an dangerous good information that is part of a package."
2910
+ },
2735
2911
  "PickupConfirmation": {
2736
2912
  "type": "object",
2737
2913
  "properties": {
@@ -3430,6 +3606,29 @@
3430
3606
  "additionalProperties": false,
3431
3607
  "description": "The address that should be displayed as the return address, only if the shipping provider supports\r\nthis functionality."
3432
3608
  },
3609
+ "ShipTo": {
3610
+ "required": [
3611
+ "postal_code",
3612
+ "country_code"
3613
+ ],
3614
+ "type": "object",
3615
+ "allOf": [
3616
+ {
3617
+ "$ref": "#/components/schemas/AddressWithContact"
3618
+ }
3619
+ ],
3620
+ "properties": {
3621
+ "tax_identifiers": {
3622
+ "type": "array",
3623
+ "items": {
3624
+ "$ref": "#/components/schemas/TaxIdentifier"
3625
+ },
3626
+ "description": "Tax IDs associated with the consignee.",
3627
+ "nullable": true
3628
+ }
3629
+ },
3630
+ "additionalProperties": false
3631
+ },
3433
3632
  "ShipmentIdentifier": {
3434
3633
  "type": "object",
3435
3634
  "properties": {
@@ -3548,29 +3747,6 @@
3548
3747
  "additionalProperties": false,
3549
3748
  "description": "This model represents a shipment that has already been shipped, and contains\r\nsummary information about the shipment."
3550
3749
  },
3551
- "ShipTo": {
3552
- "required": [
3553
- "postal_code",
3554
- "country_code"
3555
- ],
3556
- "type": "object",
3557
- "allOf": [
3558
- {
3559
- "$ref": "#/components/schemas/AddressWithContact"
3560
- }
3561
- ],
3562
- "properties": {
3563
- "tax_identifiers": {
3564
- "type": "array",
3565
- "items": {
3566
- "$ref": "#/components/schemas/TaxIdentifier"
3567
- },
3568
- "description": "Tax IDs associated with the consignee.",
3569
- "nullable": true
3570
- }
3571
- },
3572
- "additionalProperties": false
3573
- },
3574
3750
  "StandardizedStatusCodes": {
3575
3751
  "enum": [
3576
3752
  "UN",
@@ -3981,6 +4157,85 @@
3981
4157
  "additionalProperties": false,
3982
4158
  "description": "This model represents the successful response from a validate inbound data request."
3983
4159
  },
4160
+ "ValidateShipmentError": {
4161
+ "type": "object",
4162
+ "properties": {
4163
+ "field_name": {
4164
+ "type": "string",
4165
+ "description": "This is validated field name.",
4166
+ "nullable": true,
4167
+ "example": "ship_to.postal_code"
4168
+ },
4169
+ "field_value": {
4170
+ "type": "string",
4171
+ "description": "This is a validated field value.",
4172
+ "nullable": true,
4173
+ "example": "85001"
4174
+ },
4175
+ "carrier_error_code": {
4176
+ "$ref": "#/components/schemas/ValidationErrorCodes"
4177
+ },
4178
+ "message": {
4179
+ "type": "string",
4180
+ "description": "A user friendly message about this error.",
4181
+ "nullable": true,
4182
+ "example": "Receiver postal code cannot be null"
4183
+ }
4184
+ },
4185
+ "additionalProperties": false,
4186
+ "description": "This model represented a validation error"
4187
+ },
4188
+ "ValidateShipmentRequest": {
4189
+ "required": [
4190
+ "service_code",
4191
+ "ship_datetime",
4192
+ "is_return_label",
4193
+ "is_residential",
4194
+ "packages",
4195
+ "ship_to",
4196
+ "ship_from",
4197
+ "transaction_id"
4198
+ ],
4199
+ "type": "object",
4200
+ "allOf": [
4201
+ {
4202
+ "$ref": "#/components/schemas/CreateLabelRequest"
4203
+ }
4204
+ ],
4205
+ "additionalProperties": false
4206
+ },
4207
+ "ValidateShipmentResponse": {
4208
+ "type": "object",
4209
+ "allOf": [
4210
+ {
4211
+ "$ref": "#/components/schemas/BaseResponse"
4212
+ }
4213
+ ],
4214
+ "properties": {
4215
+ "validation_errors": {
4216
+ "type": "array",
4217
+ "items": {
4218
+ "$ref": "#/components/schemas/ValidateShipmentError"
4219
+ },
4220
+ "description": "This is the validation results list contains list of carrier data constrain issues for requested service.",
4221
+ "nullable": true
4222
+ }
4223
+ },
4224
+ "additionalProperties": false,
4225
+ "description": "This model represents the successful response from carrier validate shipment data request."
4226
+ },
4227
+ "ValidationErrorCodes": {
4228
+ "enum": [
4229
+ "unspecified",
4230
+ "field_value_required",
4231
+ "invalid_field_value",
4232
+ "invalid_string_length",
4233
+ "invalid_date",
4234
+ "return_label_not_supported"
4235
+ ],
4236
+ "type": "string",
4237
+ "description": "A list of standard validation error identifiers for errors the module can return"
4238
+ },
3984
4239
  "VoidLabelsRequest": {
3985
4240
  "required": [
3986
4241
  "void_requests",
@@ -4185,6 +4440,10 @@
4185
4440
  "name": "Account Setup",
4186
4441
  "description": ""
4187
4442
  },
4443
+ {
4444
+ "name": "Validations",
4445
+ "description": ""
4446
+ },
4188
4447
  {
4189
4448
  "name": "Rating",
4190
4449
  "description": ""
@@ -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
+
6
+ /** @description Basic structure for a dangerous goods */
7
+ export 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?: string;
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,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
+ }