karrio-fedex 2025.5rc1__py3-none-any.whl
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.
- karrio/mappers/fedex/__init__.py +3 -0
- karrio/mappers/fedex/mapper.py +89 -0
- karrio/mappers/fedex/proxy.py +144 -0
- karrio/mappers/fedex/settings.py +24 -0
- karrio/plugins/fedex/__init__.py +23 -0
- karrio/providers/fedex/__init__.py +24 -0
- karrio/providers/fedex/document.py +88 -0
- karrio/providers/fedex/error.py +66 -0
- karrio/providers/fedex/pickup/__init__.py +9 -0
- karrio/providers/fedex/pickup/cancel.py +79 -0
- karrio/providers/fedex/pickup/create.py +148 -0
- karrio/providers/fedex/pickup/update.py +162 -0
- karrio/providers/fedex/rate.py +357 -0
- karrio/providers/fedex/shipment/__init__.py +9 -0
- karrio/providers/fedex/shipment/cancel.py +46 -0
- karrio/providers/fedex/shipment/create.py +748 -0
- karrio/providers/fedex/tracking.py +154 -0
- karrio/providers/fedex/units.py +501 -0
- karrio/providers/fedex/utils.py +199 -0
- karrio/schemas/fedex/__init__.py +0 -0
- karrio/schemas/fedex/cancel_pickup_request.py +31 -0
- karrio/schemas/fedex/cancel_pickup_response.py +24 -0
- karrio/schemas/fedex/cancel_request.py +17 -0
- karrio/schemas/fedex/cancel_response.py +25 -0
- karrio/schemas/fedex/error_response.py +16 -0
- karrio/schemas/fedex/paperless_request.py +30 -0
- karrio/schemas/fedex/paperless_response.py +21 -0
- karrio/schemas/fedex/pickup_request.py +106 -0
- karrio/schemas/fedex/pickup_response.py +25 -0
- karrio/schemas/fedex/rating_request.py +478 -0
- karrio/schemas/fedex/rating_responses.py +208 -0
- karrio/schemas/fedex/shipping_request.py +731 -0
- karrio/schemas/fedex/shipping_responses.py +584 -0
- karrio/schemas/fedex/tracking_document_request.py +30 -0
- karrio/schemas/fedex/tracking_document_response.py +30 -0
- karrio/schemas/fedex/tracking_request.py +23 -0
- karrio/schemas/fedex/tracking_response.py +350 -0
- karrio_fedex-2025.5rc1.dist-info/METADATA +45 -0
- karrio_fedex-2025.5rc1.dist-info/RECORD +42 -0
- karrio_fedex-2025.5rc1.dist-info/WHEEL +5 -0
- karrio_fedex-2025.5rc1.dist-info/entry_points.txt +2 -0
- karrio_fedex-2025.5rc1.dist-info/top_level.txt +3 -0
@@ -0,0 +1,584 @@
|
|
1
|
+
import attr
|
2
|
+
import jstruct
|
3
|
+
import typing
|
4
|
+
|
5
|
+
|
6
|
+
@attr.s(auto_attribs=True)
|
7
|
+
class AlertType:
|
8
|
+
code: typing.Optional[str] = None
|
9
|
+
alertType: typing.Optional[str] = None
|
10
|
+
message: typing.Optional[str] = None
|
11
|
+
parameterList: typing.Optional[typing.List[typing.Any]] = None
|
12
|
+
|
13
|
+
|
14
|
+
@attr.s(auto_attribs=True)
|
15
|
+
class AccessorDetailType:
|
16
|
+
password: typing.Optional[str] = None
|
17
|
+
role: typing.Optional[str] = None
|
18
|
+
emailLabelUrl: typing.Optional[str] = None
|
19
|
+
userId: typing.Optional[str] = None
|
20
|
+
|
21
|
+
|
22
|
+
@attr.s(auto_attribs=True)
|
23
|
+
class AccessDetailType:
|
24
|
+
accessorDetails: typing.Optional[typing.List[AccessorDetailType]] = jstruct.JList[AccessorDetailType]
|
25
|
+
|
26
|
+
|
27
|
+
@attr.s(auto_attribs=True)
|
28
|
+
class UploadDocumentReferenceDetailType:
|
29
|
+
documentType: typing.Optional[str] = None
|
30
|
+
documentReference: typing.Optional[str] = None
|
31
|
+
description: typing.Optional[str] = None
|
32
|
+
documentId: typing.Optional[str] = None
|
33
|
+
|
34
|
+
|
35
|
+
@attr.s(auto_attribs=True)
|
36
|
+
class CompletedEtdDetailType:
|
37
|
+
folderId: typing.Optional[str] = None
|
38
|
+
type: typing.Optional[str] = None
|
39
|
+
uploadDocumentReferenceDetails: typing.Optional[typing.List[UploadDocumentReferenceDetailType]] = jstruct.JList[UploadDocumentReferenceDetailType]
|
40
|
+
|
41
|
+
|
42
|
+
@attr.s(auto_attribs=True)
|
43
|
+
class AddressType:
|
44
|
+
streetLines: typing.Optional[typing.List[str]] = None
|
45
|
+
city: typing.Optional[str] = None
|
46
|
+
stateOrProvinceCode: typing.Optional[str] = None
|
47
|
+
postalCode: typing.Optional[int] = None
|
48
|
+
countryCode: typing.Optional[str] = None
|
49
|
+
residential: typing.Optional[bool] = None
|
50
|
+
|
51
|
+
|
52
|
+
@attr.s(auto_attribs=True)
|
53
|
+
class ContactType:
|
54
|
+
personName: typing.Optional[str] = None
|
55
|
+
tollFreePhoneNumber: typing.Optional[int] = None
|
56
|
+
emailAddress: typing.Optional[str] = None
|
57
|
+
phoneNumber: typing.Optional[int] = None
|
58
|
+
phoneExtension: typing.Optional[int] = None
|
59
|
+
faxNumber: typing.Optional[int] = None
|
60
|
+
pagerNumber: typing.Optional[int] = None
|
61
|
+
companyName: typing.Optional[str] = None
|
62
|
+
title: typing.Optional[str] = None
|
63
|
+
|
64
|
+
|
65
|
+
@attr.s(auto_attribs=True)
|
66
|
+
class HoldingLocationType:
|
67
|
+
address: typing.Optional[AddressType] = jstruct.JStruct[AddressType]
|
68
|
+
contact: typing.Optional[ContactType] = jstruct.JStruct[ContactType]
|
69
|
+
|
70
|
+
|
71
|
+
@attr.s(auto_attribs=True)
|
72
|
+
class CompletedHoldAtLocationDetailType:
|
73
|
+
holdingLocationType: typing.Optional[str] = None
|
74
|
+
holdingLocation: typing.Optional[HoldingLocationType] = jstruct.JStruct[HoldingLocationType]
|
75
|
+
|
76
|
+
|
77
|
+
@attr.s(auto_attribs=True)
|
78
|
+
class WeightType:
|
79
|
+
units: typing.Optional[str] = None
|
80
|
+
value: typing.Optional[float] = None
|
81
|
+
|
82
|
+
|
83
|
+
@attr.s(auto_attribs=True)
|
84
|
+
class HazardousCommodityDescriptionType:
|
85
|
+
sequenceNumber: typing.Optional[int] = None
|
86
|
+
packingInstructions: typing.Optional[str] = None
|
87
|
+
subsidiaryClasses: typing.Optional[typing.List[str]] = None
|
88
|
+
labelText: typing.Optional[str] = None
|
89
|
+
tunnelRestrictionCode: typing.Optional[str] = None
|
90
|
+
specialProvisions: typing.Optional[str] = None
|
91
|
+
properShippingNameAndDescription: typing.Optional[str] = None
|
92
|
+
technicalName: typing.Optional[str] = None
|
93
|
+
symbols: typing.Optional[str] = None
|
94
|
+
authorization: typing.Optional[str] = None
|
95
|
+
attributes: typing.Optional[typing.List[str]] = None
|
96
|
+
id: typing.Optional[int] = None
|
97
|
+
packingGroup: typing.Optional[str] = None
|
98
|
+
properShippingName: typing.Optional[str] = None
|
99
|
+
hazardClass: typing.Optional[str] = None
|
100
|
+
|
101
|
+
|
102
|
+
@attr.s(auto_attribs=True)
|
103
|
+
class NetExplosiveDetailType:
|
104
|
+
amount: typing.Optional[int] = None
|
105
|
+
units: typing.Optional[str] = None
|
106
|
+
type: typing.Optional[str] = None
|
107
|
+
|
108
|
+
|
109
|
+
@attr.s(auto_attribs=True)
|
110
|
+
class PackingDetailsType:
|
111
|
+
packingInstructions: typing.Optional[str] = None
|
112
|
+
cargoAircraftOnly: typing.Optional[bool] = None
|
113
|
+
|
114
|
+
|
115
|
+
@attr.s(auto_attribs=True)
|
116
|
+
class OptionsDescriptionType:
|
117
|
+
sequenceNumber: typing.Optional[int] = None
|
118
|
+
processingOptions: typing.Optional[typing.List[str]] = None
|
119
|
+
subsidiaryClasses: typing.Optional[typing.List[str]] = None
|
120
|
+
labelText: typing.Optional[str] = None
|
121
|
+
technicalName: typing.Optional[str] = None
|
122
|
+
packingDetails: typing.Optional[PackingDetailsType] = jstruct.JStruct[PackingDetailsType]
|
123
|
+
authorization: typing.Optional[str] = None
|
124
|
+
reportableQuantity: typing.Optional[bool] = None
|
125
|
+
percentage: typing.Optional[float] = None
|
126
|
+
id: typing.Optional[int] = None
|
127
|
+
packingGroup: typing.Optional[str] = None
|
128
|
+
properShippingName: typing.Optional[str] = None
|
129
|
+
hazardClass: typing.Optional[str] = None
|
130
|
+
|
131
|
+
|
132
|
+
@attr.s(auto_attribs=True)
|
133
|
+
class QuantityType:
|
134
|
+
quantityType: typing.Optional[str] = None
|
135
|
+
amount: typing.Optional[float] = None
|
136
|
+
units: typing.Optional[str] = None
|
137
|
+
|
138
|
+
|
139
|
+
@attr.s(auto_attribs=True)
|
140
|
+
class InnerReceptacleType:
|
141
|
+
quantity: typing.Optional[QuantityType] = jstruct.JStruct[QuantityType]
|
142
|
+
|
143
|
+
|
144
|
+
@attr.s(auto_attribs=True)
|
145
|
+
class OptionsOptionsType:
|
146
|
+
labelTextOption: typing.Optional[str] = None
|
147
|
+
customerSuppliedLabelText: typing.Optional[str] = None
|
148
|
+
|
149
|
+
|
150
|
+
@attr.s(auto_attribs=True)
|
151
|
+
class HazardousCommodityOptionsType:
|
152
|
+
quantity: typing.Optional[QuantityType] = jstruct.JStruct[QuantityType]
|
153
|
+
innerReceptacles: typing.Optional[typing.List[InnerReceptacleType]] = jstruct.JList[InnerReceptacleType]
|
154
|
+
options: typing.Optional[OptionsOptionsType] = jstruct.JStruct[OptionsOptionsType]
|
155
|
+
description: typing.Optional[OptionsDescriptionType] = jstruct.JStruct[OptionsDescriptionType]
|
156
|
+
|
157
|
+
|
158
|
+
@attr.s(auto_attribs=True)
|
159
|
+
class HazardousCommodityType:
|
160
|
+
quantity: typing.Optional[QuantityType] = jstruct.JStruct[QuantityType]
|
161
|
+
options: typing.Optional[HazardousCommodityOptionsType] = jstruct.JStruct[HazardousCommodityOptionsType]
|
162
|
+
description: typing.Optional[HazardousCommodityDescriptionType] = jstruct.JStruct[HazardousCommodityDescriptionType]
|
163
|
+
netExplosiveDetail: typing.Optional[NetExplosiveDetailType] = jstruct.JStruct[NetExplosiveDetailType]
|
164
|
+
massPoints: typing.Optional[int] = None
|
165
|
+
|
166
|
+
|
167
|
+
@attr.s(auto_attribs=True)
|
168
|
+
class ContainerType:
|
169
|
+
qvalue: typing.Optional[int] = None
|
170
|
+
hazardousCommodities: typing.Optional[typing.List[HazardousCommodityType]] = jstruct.JList[HazardousCommodityType]
|
171
|
+
|
172
|
+
|
173
|
+
@attr.s(auto_attribs=True)
|
174
|
+
class HazardousPackageDetailType:
|
175
|
+
regulation: typing.Optional[str] = None
|
176
|
+
accessibility: typing.Optional[str] = None
|
177
|
+
labelType: typing.Optional[str] = None
|
178
|
+
containers: typing.Optional[typing.List[ContainerType]] = jstruct.JList[ContainerType]
|
179
|
+
cargoAircraftOnly: typing.Optional[bool] = None
|
180
|
+
referenceId: typing.Optional[int] = None
|
181
|
+
radioactiveTransportIndex: typing.Optional[float] = None
|
182
|
+
|
183
|
+
|
184
|
+
@attr.s(auto_attribs=True)
|
185
|
+
class BarcodeType:
|
186
|
+
type: typing.Optional[str] = None
|
187
|
+
value: typing.Optional[str] = None
|
188
|
+
|
189
|
+
|
190
|
+
@attr.s(auto_attribs=True)
|
191
|
+
class BarcodesType:
|
192
|
+
binaryBarcodes: typing.Optional[typing.List[BarcodeType]] = jstruct.JList[BarcodeType]
|
193
|
+
stringBarcodes: typing.Optional[typing.List[BarcodeType]] = jstruct.JList[BarcodeType]
|
194
|
+
|
195
|
+
|
196
|
+
@attr.s(auto_attribs=True)
|
197
|
+
class OperationalInstructionType:
|
198
|
+
number: typing.Optional[int] = None
|
199
|
+
content: typing.Optional[str] = None
|
200
|
+
|
201
|
+
|
202
|
+
@attr.s(auto_attribs=True)
|
203
|
+
class CompletedPackageDetailOperationalDetailType:
|
204
|
+
astraHandlingText: typing.Optional[str] = None
|
205
|
+
barcodes: typing.Optional[BarcodesType] = jstruct.JStruct[BarcodesType]
|
206
|
+
operationalInstructions: typing.Optional[typing.List[OperationalInstructionType]] = jstruct.JList[OperationalInstructionType]
|
207
|
+
|
208
|
+
|
209
|
+
@attr.s(auto_attribs=True)
|
210
|
+
class PackageRateDetailSurchargeType:
|
211
|
+
amount: typing.Optional[str] = None
|
212
|
+
surchargeType: typing.Optional[str] = None
|
213
|
+
level: typing.Optional[str] = None
|
214
|
+
description: typing.Optional[str] = None
|
215
|
+
|
216
|
+
|
217
|
+
@attr.s(auto_attribs=True)
|
218
|
+
class PackageRateDetailType:
|
219
|
+
ratedWeightMethod: typing.Optional[str] = None
|
220
|
+
totalFreightDiscounts: typing.Optional[float] = None
|
221
|
+
totalTaxes: typing.Optional[float] = None
|
222
|
+
minimumChargeType: typing.Optional[str] = None
|
223
|
+
baseCharge: typing.Optional[float] = None
|
224
|
+
totalRebates: typing.Optional[float] = None
|
225
|
+
rateType: typing.Optional[str] = None
|
226
|
+
billingWeight: typing.Optional[WeightType] = jstruct.JStruct[WeightType]
|
227
|
+
netFreight: typing.Optional[float] = None
|
228
|
+
surcharges: typing.Optional[typing.List[PackageRateDetailSurchargeType]] = jstruct.JList[PackageRateDetailSurchargeType]
|
229
|
+
totalSurcharges: typing.Optional[float] = None
|
230
|
+
netFedExCharge: typing.Optional[float] = None
|
231
|
+
netCharge: typing.Optional[float] = None
|
232
|
+
currency: typing.Optional[str] = None
|
233
|
+
|
234
|
+
|
235
|
+
@attr.s(auto_attribs=True)
|
236
|
+
class PackageRatingType:
|
237
|
+
effectiveNetDiscount: typing.Optional[int] = None
|
238
|
+
actualRateType: typing.Optional[str] = None
|
239
|
+
packageRateDetails: typing.Optional[typing.List[PackageRateDetailType]] = jstruct.JList[PackageRateDetailType]
|
240
|
+
|
241
|
+
|
242
|
+
@attr.s(auto_attribs=True)
|
243
|
+
class TrackingIDType:
|
244
|
+
formId: typing.Optional[str] = None
|
245
|
+
trackingIdType: typing.Optional[str] = None
|
246
|
+
uspsApplicationId: typing.Optional[int] = None
|
247
|
+
trackingNumber: typing.Optional[str] = None
|
248
|
+
|
249
|
+
|
250
|
+
@attr.s(auto_attribs=True)
|
251
|
+
class CompletedPackageDetailType:
|
252
|
+
sequenceNumber: typing.Optional[int] = None
|
253
|
+
operationalDetail: typing.Optional[CompletedPackageDetailOperationalDetailType] = jstruct.JStruct[CompletedPackageDetailOperationalDetailType]
|
254
|
+
signatureOption: typing.Optional[str] = None
|
255
|
+
trackingIds: typing.Optional[typing.List[TrackingIDType]] = jstruct.JList[TrackingIDType]
|
256
|
+
groupNumber: typing.Optional[int] = None
|
257
|
+
oversizeClass: typing.Optional[str] = None
|
258
|
+
packageRating: typing.Optional[PackageRatingType] = jstruct.JStruct[PackageRatingType]
|
259
|
+
dryIceWeight: typing.Optional[WeightType] = jstruct.JStruct[WeightType]
|
260
|
+
hazardousPackageDetail: typing.Optional[HazardousPackageDetailType] = jstruct.JStruct[HazardousPackageDetailType]
|
261
|
+
|
262
|
+
|
263
|
+
@attr.s(auto_attribs=True)
|
264
|
+
class GenerationDetailType:
|
265
|
+
type: typing.Optional[str] = None
|
266
|
+
minimumCopiesRequired: typing.Optional[int] = None
|
267
|
+
letterhead: typing.Optional[str] = None
|
268
|
+
electronicSignature: typing.Optional[str] = None
|
269
|
+
|
270
|
+
|
271
|
+
@attr.s(auto_attribs=True)
|
272
|
+
class DocumentRequirementsType:
|
273
|
+
requiredDocuments: typing.Optional[typing.List[str]] = None
|
274
|
+
prohibitedDocuments: typing.Optional[typing.List[str]] = None
|
275
|
+
generationDetails: typing.Optional[typing.List[GenerationDetailType]] = jstruct.JList[GenerationDetailType]
|
276
|
+
|
277
|
+
|
278
|
+
@attr.s(auto_attribs=True)
|
279
|
+
class LicenseOrPermitDetailType:
|
280
|
+
number: typing.Optional[int] = None
|
281
|
+
effectiveDate: typing.Optional[str] = None
|
282
|
+
expirationDate: typing.Optional[str] = None
|
283
|
+
|
284
|
+
|
285
|
+
@attr.s(auto_attribs=True)
|
286
|
+
class AdrLicenseType:
|
287
|
+
licenseOrPermitDetail: typing.Optional[LicenseOrPermitDetailType] = jstruct.JStruct[LicenseOrPermitDetailType]
|
288
|
+
|
289
|
+
|
290
|
+
@attr.s(auto_attribs=True)
|
291
|
+
class ProcessingOptionsType:
|
292
|
+
options: typing.Optional[typing.List[str]] = None
|
293
|
+
|
294
|
+
|
295
|
+
@attr.s(auto_attribs=True)
|
296
|
+
class DryIceDetailType:
|
297
|
+
totalWeight: typing.Optional[WeightType] = jstruct.JStruct[WeightType]
|
298
|
+
packageCount: typing.Optional[int] = None
|
299
|
+
processingOptions: typing.Optional[ProcessingOptionsType] = jstruct.JStruct[ProcessingOptionsType]
|
300
|
+
|
301
|
+
|
302
|
+
@attr.s(auto_attribs=True)
|
303
|
+
class HazardousSummaryDetailType:
|
304
|
+
smallQuantityExceptionPackageCount: typing.Optional[int] = None
|
305
|
+
|
306
|
+
|
307
|
+
@attr.s(auto_attribs=True)
|
308
|
+
class HazardousShipmentDetailType:
|
309
|
+
hazardousSummaryDetail: typing.Optional[HazardousSummaryDetailType] = jstruct.JStruct[HazardousSummaryDetailType]
|
310
|
+
adrLicense: typing.Optional[AdrLicenseType] = jstruct.JStruct[AdrLicenseType]
|
311
|
+
dryIceDetail: typing.Optional[DryIceDetailType] = jstruct.JStruct[DryIceDetailType]
|
312
|
+
|
313
|
+
|
314
|
+
@attr.s(auto_attribs=True)
|
315
|
+
class CompletedShipmentDetailOperationalDetailType:
|
316
|
+
originServiceArea: typing.Optional[str] = None
|
317
|
+
serviceCode: typing.Optional[str] = None
|
318
|
+
airportId: typing.Optional[str] = None
|
319
|
+
postalCode: typing.Optional[int] = None
|
320
|
+
scac: typing.Optional[str] = None
|
321
|
+
deliveryDay: typing.Optional[str] = None
|
322
|
+
originLocationId: typing.Optional[str] = None
|
323
|
+
countryCode: typing.Optional[str] = None
|
324
|
+
astraDescription: typing.Optional[str] = None
|
325
|
+
originLocationNumber: typing.Optional[int] = None
|
326
|
+
deliveryDate: typing.Optional[str] = None
|
327
|
+
deliveryEligibilities: typing.Optional[typing.List[str]] = None
|
328
|
+
ineligibleForMoneyBackGuarantee: typing.Optional[bool] = None
|
329
|
+
maximumTransitTime: typing.Optional[str] = None
|
330
|
+
destinationLocationStateOrProvinceCode: typing.Optional[str] = None
|
331
|
+
astraPlannedServiceLevel: typing.Optional[str] = None
|
332
|
+
destinationLocationId: typing.Optional[str] = None
|
333
|
+
transitTime: typing.Optional[str] = None
|
334
|
+
stateOrProvinceCode: typing.Optional[str] = None
|
335
|
+
destinationLocationNumber: typing.Optional[int] = None
|
336
|
+
packagingCode: typing.Optional[str] = None
|
337
|
+
commitDate: typing.Optional[str] = None
|
338
|
+
publishedDeliveryTime: typing.Optional[str] = None
|
339
|
+
ursaSuffixCode: typing.Optional[str] = None
|
340
|
+
ursaPrefixCode: typing.Optional[str] = None
|
341
|
+
destinationServiceArea: typing.Optional[str] = None
|
342
|
+
commitDay: typing.Optional[str] = None
|
343
|
+
customTransitTime: typing.Optional[str] = None
|
344
|
+
|
345
|
+
|
346
|
+
@attr.s(auto_attribs=True)
|
347
|
+
class NameType:
|
348
|
+
type: typing.Optional[str] = None
|
349
|
+
encoding: typing.Optional[str] = None
|
350
|
+
value: typing.Optional[str] = None
|
351
|
+
|
352
|
+
|
353
|
+
@attr.s(auto_attribs=True)
|
354
|
+
class ServiceDescriptionType:
|
355
|
+
serviceType: typing.Optional[str] = None
|
356
|
+
code: typing.Optional[str] = None
|
357
|
+
names: typing.Optional[typing.List[NameType]] = jstruct.JList[NameType]
|
358
|
+
operatingOrgCodes: typing.Optional[typing.List[str]] = None
|
359
|
+
astraDescription: typing.Optional[str] = None
|
360
|
+
description: typing.Optional[str] = None
|
361
|
+
serviceId: typing.Optional[str] = None
|
362
|
+
serviceCategory: typing.Optional[str] = None
|
363
|
+
|
364
|
+
|
365
|
+
@attr.s(auto_attribs=True)
|
366
|
+
class PartType:
|
367
|
+
documentPartSequenceNumber: typing.Optional[int] = None
|
368
|
+
image: typing.Optional[str] = None
|
369
|
+
|
370
|
+
|
371
|
+
@attr.s(auto_attribs=True)
|
372
|
+
class ShipmentDocumentType:
|
373
|
+
type: typing.Optional[str] = None
|
374
|
+
shippingDocumentDisposition: typing.Optional[str] = None
|
375
|
+
imageType: typing.Optional[str] = None
|
376
|
+
resolution: typing.Optional[int] = None
|
377
|
+
copiesToPrint: typing.Optional[int] = None
|
378
|
+
parts: typing.Optional[typing.List[PartType]] = jstruct.JList[PartType]
|
379
|
+
|
380
|
+
|
381
|
+
@attr.s(auto_attribs=True)
|
382
|
+
class CurrencyExchangeRateType:
|
383
|
+
rate: typing.Optional[float] = None
|
384
|
+
fromCurrency: typing.Optional[str] = None
|
385
|
+
intoCurrency: typing.Optional[str] = None
|
386
|
+
|
387
|
+
|
388
|
+
@attr.s(auto_attribs=True)
|
389
|
+
class FreightDiscountType:
|
390
|
+
amount: typing.Optional[float] = None
|
391
|
+
rateDiscountType: typing.Optional[str] = None
|
392
|
+
percent: typing.Optional[float] = None
|
393
|
+
description: typing.Optional[str] = None
|
394
|
+
|
395
|
+
|
396
|
+
@attr.s(auto_attribs=True)
|
397
|
+
class ShipmentRateDetailSurchargeType:
|
398
|
+
amount: typing.Optional[typing.Union[float, str]] = None
|
399
|
+
surchargeType: typing.Optional[str] = None
|
400
|
+
level: typing.Optional[str] = None
|
401
|
+
description: typing.Optional[str] = None
|
402
|
+
|
403
|
+
|
404
|
+
@attr.s(auto_attribs=True)
|
405
|
+
class TaxType:
|
406
|
+
amount: typing.Optional[float] = None
|
407
|
+
level: typing.Optional[str] = None
|
408
|
+
description: typing.Optional[str] = None
|
409
|
+
type: typing.Optional[str] = None
|
410
|
+
|
411
|
+
|
412
|
+
@attr.s(auto_attribs=True)
|
413
|
+
class ShipmentRateDetailType:
|
414
|
+
rateZone: typing.Optional[str] = None
|
415
|
+
ratedWeightMethod: typing.Optional[str] = None
|
416
|
+
totalDutiesTaxesAndFees: typing.Optional[float] = None
|
417
|
+
pricingCode: typing.Optional[str] = None
|
418
|
+
totalFreightDiscounts: typing.Optional[float] = None
|
419
|
+
totalTaxes: typing.Optional[float] = None
|
420
|
+
totalDutiesAndTaxes: typing.Optional[float] = None
|
421
|
+
totalAncillaryFeesAndTaxes: typing.Optional[float] = None
|
422
|
+
taxes: typing.Optional[typing.List[TaxType]] = jstruct.JList[TaxType]
|
423
|
+
totalRebates: typing.Optional[float] = None
|
424
|
+
fuelSurchargePercent: typing.Optional[float] = None
|
425
|
+
currencyExchangeRate: typing.Optional[CurrencyExchangeRateType] = jstruct.JStruct[CurrencyExchangeRateType]
|
426
|
+
totalNetFreight: typing.Optional[float] = None
|
427
|
+
totalNetFedExCharge: typing.Optional[float] = None
|
428
|
+
shipmentLegRateDetails: typing.Optional[typing.List[typing.Any]] = None
|
429
|
+
dimDivisor: typing.Optional[int] = None
|
430
|
+
rateType: typing.Optional[str] = None
|
431
|
+
surcharges: typing.Optional[typing.List[ShipmentRateDetailSurchargeType]] = jstruct.JList[ShipmentRateDetailSurchargeType]
|
432
|
+
totalSurcharges: typing.Optional[float] = None
|
433
|
+
totalBillingWeight: typing.Optional[WeightType] = jstruct.JStruct[WeightType]
|
434
|
+
freightDiscounts: typing.Optional[typing.List[FreightDiscountType]] = jstruct.JList[FreightDiscountType]
|
435
|
+
rateScale: typing.Optional[str] = None
|
436
|
+
totalNetCharge: typing.Optional[float] = None
|
437
|
+
totalBaseCharge: typing.Optional[float] = None
|
438
|
+
totalNetChargeWithDutiesAndTaxes: typing.Optional[float] = None
|
439
|
+
currency: typing.Optional[str] = None
|
440
|
+
|
441
|
+
|
442
|
+
@attr.s(auto_attribs=True)
|
443
|
+
class ShipmentRatingType:
|
444
|
+
actualRateType: typing.Optional[str] = None
|
445
|
+
shipmentRateDetails: typing.Optional[typing.List[ShipmentRateDetailType]] = jstruct.JList[ShipmentRateDetailType]
|
446
|
+
|
447
|
+
|
448
|
+
@attr.s(auto_attribs=True)
|
449
|
+
class CompletedShipmentDetailType:
|
450
|
+
completedPackageDetails: typing.Optional[typing.List[CompletedPackageDetailType]] = jstruct.JList[CompletedPackageDetailType]
|
451
|
+
operationalDetail: typing.Optional[CompletedShipmentDetailOperationalDetailType] = jstruct.JStruct[CompletedShipmentDetailOperationalDetailType]
|
452
|
+
carrierCode: typing.Optional[str] = None
|
453
|
+
completedHoldAtLocationDetail: typing.Optional[CompletedHoldAtLocationDetailType] = jstruct.JStruct[CompletedHoldAtLocationDetailType]
|
454
|
+
completedEtdDetail: typing.Optional[CompletedEtdDetailType] = jstruct.JStruct[CompletedEtdDetailType]
|
455
|
+
packagingDescription: typing.Optional[str] = None
|
456
|
+
masterTrackingId: typing.Optional[TrackingIDType] = jstruct.JStruct[TrackingIDType]
|
457
|
+
serviceDescription: typing.Optional[ServiceDescriptionType] = jstruct.JStruct[ServiceDescriptionType]
|
458
|
+
usDomestic: typing.Optional[bool] = None
|
459
|
+
hazardousShipmentDetail: typing.Optional[HazardousShipmentDetailType] = jstruct.JStruct[HazardousShipmentDetailType]
|
460
|
+
shipmentRating: typing.Optional[ShipmentRatingType] = jstruct.JStruct[ShipmentRatingType]
|
461
|
+
documentRequirements: typing.Optional[DocumentRequirementsType] = jstruct.JStruct[DocumentRequirementsType]
|
462
|
+
exportComplianceStatement: typing.Optional[str] = None
|
463
|
+
accessDetail: typing.Optional[AccessDetailType] = jstruct.JStruct[AccessDetailType]
|
464
|
+
shipmentDocuments: typing.Optional[typing.List[ShipmentDocumentType]] = jstruct.JList[ShipmentDocumentType]
|
465
|
+
|
466
|
+
|
467
|
+
@attr.s(auto_attribs=True)
|
468
|
+
class CustomerReferenceType:
|
469
|
+
customerReferenceType: typing.Optional[str] = None
|
470
|
+
value: typing.Optional[int] = None
|
471
|
+
|
472
|
+
|
473
|
+
@attr.s(auto_attribs=True)
|
474
|
+
class DocumentType:
|
475
|
+
contentKey: typing.Optional[str] = None
|
476
|
+
copiesToPrint: typing.Optional[int] = None
|
477
|
+
contentType: typing.Optional[str] = None
|
478
|
+
trackingNumber: typing.Optional[str] = None
|
479
|
+
docType: typing.Optional[str] = None
|
480
|
+
alerts: typing.Optional[typing.List[AlertType]] = jstruct.JList[AlertType]
|
481
|
+
encodedLabel: typing.Optional[str] = None
|
482
|
+
url: typing.Optional[str] = None
|
483
|
+
|
484
|
+
|
485
|
+
@attr.s(auto_attribs=True)
|
486
|
+
class TransactionDetailType:
|
487
|
+
transactionDetails: typing.Optional[str] = None
|
488
|
+
transactionId: typing.Optional[int] = None
|
489
|
+
|
490
|
+
|
491
|
+
@attr.s(auto_attribs=True)
|
492
|
+
class PieceResponseType:
|
493
|
+
netChargeAmount: typing.Optional[float] = None
|
494
|
+
transactionDetails: typing.Optional[typing.List[TransactionDetailType]] = jstruct.JList[TransactionDetailType]
|
495
|
+
packageDocuments: typing.Optional[typing.List[DocumentType]] = jstruct.JList[DocumentType]
|
496
|
+
acceptanceTrackingNumber: typing.Optional[str] = None
|
497
|
+
serviceCategory: typing.Optional[str] = None
|
498
|
+
listCustomerTotalCharge: typing.Optional[str] = None
|
499
|
+
deliveryTimestamp: typing.Optional[str] = None
|
500
|
+
trackingIdType: typing.Optional[str] = None
|
501
|
+
additionalChargesDiscount: typing.Optional[float] = None
|
502
|
+
netListRateAmount: typing.Optional[float] = None
|
503
|
+
baseRateAmount: typing.Optional[float] = None
|
504
|
+
packageSequenceNumber: typing.Optional[int] = None
|
505
|
+
netDiscountAmount: typing.Optional[float] = None
|
506
|
+
codcollectionAmount: typing.Optional[float] = None
|
507
|
+
masterTrackingNumber: typing.Optional[str] = None
|
508
|
+
acceptanceType: typing.Optional[str] = None
|
509
|
+
trackingNumber: typing.Optional[str] = None
|
510
|
+
successful: typing.Optional[bool] = None
|
511
|
+
customerReferences: typing.Optional[typing.List[CustomerReferenceType]] = jstruct.JList[CustomerReferenceType]
|
512
|
+
netRateAmount: typing.Optional[float] = None
|
513
|
+
currency: typing.Optional[str] = None
|
514
|
+
|
515
|
+
|
516
|
+
@attr.s(auto_attribs=True)
|
517
|
+
class ParameterType:
|
518
|
+
id: typing.Optional[str] = None
|
519
|
+
value: typing.Optional[str] = None
|
520
|
+
|
521
|
+
|
522
|
+
@attr.s(auto_attribs=True)
|
523
|
+
class AdvisoryType:
|
524
|
+
code: typing.Optional[str] = None
|
525
|
+
text: typing.Optional[str] = None
|
526
|
+
parameters: typing.Optional[typing.List[ParameterType]] = jstruct.JList[ParameterType]
|
527
|
+
localizedText: typing.Optional[str] = None
|
528
|
+
|
529
|
+
|
530
|
+
@attr.s(auto_attribs=True)
|
531
|
+
class WaiverType:
|
532
|
+
advisories: typing.Optional[typing.List[AdvisoryType]] = jstruct.JList[AdvisoryType]
|
533
|
+
description: typing.Optional[str] = None
|
534
|
+
id: typing.Optional[str] = None
|
535
|
+
|
536
|
+
|
537
|
+
@attr.s(auto_attribs=True)
|
538
|
+
class ProhibitionType:
|
539
|
+
derivedHarmonizedCode: typing.Optional[str] = None
|
540
|
+
advisory: typing.Optional[AdvisoryType] = jstruct.JStruct[AdvisoryType]
|
541
|
+
commodityIndex: typing.Optional[int] = None
|
542
|
+
source: typing.Optional[str] = None
|
543
|
+
categories: typing.Optional[typing.List[str]] = None
|
544
|
+
type: typing.Optional[str] = None
|
545
|
+
waiver: typing.Optional[WaiverType] = jstruct.JStruct[WaiverType]
|
546
|
+
status: typing.Optional[str] = None
|
547
|
+
|
548
|
+
|
549
|
+
@attr.s(auto_attribs=True)
|
550
|
+
class RegulatoryAdvisoryType:
|
551
|
+
prohibitions: typing.Optional[typing.List[ProhibitionType]] = jstruct.JList[ProhibitionType]
|
552
|
+
|
553
|
+
|
554
|
+
@attr.s(auto_attribs=True)
|
555
|
+
class ShipmentAdvisoryDetailsType:
|
556
|
+
regulatoryAdvisory: typing.Optional[RegulatoryAdvisoryType] = jstruct.JStruct[RegulatoryAdvisoryType]
|
557
|
+
|
558
|
+
|
559
|
+
@attr.s(auto_attribs=True)
|
560
|
+
class TransactionShipmentType:
|
561
|
+
serviceType: typing.Optional[str] = None
|
562
|
+
shipDatestamp: typing.Optional[str] = None
|
563
|
+
serviceCategory: typing.Optional[str] = None
|
564
|
+
shipmentDocuments: typing.Optional[typing.List[DocumentType]] = jstruct.JList[DocumentType]
|
565
|
+
pieceResponses: typing.Optional[typing.List[PieceResponseType]] = jstruct.JList[PieceResponseType]
|
566
|
+
serviceName: typing.Optional[str] = None
|
567
|
+
alerts: typing.Optional[typing.List[AlertType]] = jstruct.JList[AlertType]
|
568
|
+
completedShipmentDetail: typing.Optional[CompletedShipmentDetailType] = jstruct.JStruct[CompletedShipmentDetailType]
|
569
|
+
shipmentAdvisoryDetails: typing.Optional[ShipmentAdvisoryDetailsType] = jstruct.JStruct[ShipmentAdvisoryDetailsType]
|
570
|
+
masterTrackingNumber: typing.Optional[str] = None
|
571
|
+
|
572
|
+
|
573
|
+
@attr.s(auto_attribs=True)
|
574
|
+
class OutputType:
|
575
|
+
transactionShipments: typing.Optional[typing.List[TransactionShipmentType]] = jstruct.JList[TransactionShipmentType]
|
576
|
+
alerts: typing.Optional[typing.List[AlertType]] = jstruct.JList[AlertType]
|
577
|
+
jobId: typing.Optional[str] = None
|
578
|
+
|
579
|
+
|
580
|
+
@attr.s(auto_attribs=True)
|
581
|
+
class ShippingResponseType:
|
582
|
+
transactionId: typing.Optional[str] = None
|
583
|
+
customerTransactionId: typing.Optional[str] = None
|
584
|
+
output: typing.Optional[OutputType] = jstruct.JStruct[OutputType]
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import attr
|
2
|
+
import jstruct
|
3
|
+
import typing
|
4
|
+
|
5
|
+
|
6
|
+
@attr.s(auto_attribs=True)
|
7
|
+
class TrackDocumentDetailType:
|
8
|
+
documentType: typing.Optional[str] = None
|
9
|
+
documentFormat: typing.Optional[str] = None
|
10
|
+
|
11
|
+
|
12
|
+
@attr.s(auto_attribs=True)
|
13
|
+
class TrackingNumberInfoType:
|
14
|
+
trackingNumber: typing.Optional[str] = None
|
15
|
+
carrierCode: typing.Optional[str] = None
|
16
|
+
trackingNumberUniqueId: typing.Optional[str] = None
|
17
|
+
|
18
|
+
|
19
|
+
@attr.s(auto_attribs=True)
|
20
|
+
class TrackDocumentSpecificationType:
|
21
|
+
trackingNumberInfo: typing.Optional[TrackingNumberInfoType] = jstruct.JStruct[TrackingNumberInfoType]
|
22
|
+
shipDateBegin: typing.Optional[str] = None
|
23
|
+
shipDateEnd: typing.Optional[str] = None
|
24
|
+
accountNumber: typing.Optional[str] = None
|
25
|
+
|
26
|
+
|
27
|
+
@attr.s(auto_attribs=True)
|
28
|
+
class TrackingDocumentRequestType:
|
29
|
+
trackDocumentDetail: typing.Optional[TrackDocumentDetailType] = jstruct.JStruct[TrackDocumentDetailType]
|
30
|
+
trackDocumentSpecification: typing.Optional[typing.List[TrackDocumentSpecificationType]] = jstruct.JList[TrackDocumentSpecificationType]
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import attr
|
2
|
+
import jstruct
|
3
|
+
import typing
|
4
|
+
|
5
|
+
|
6
|
+
@attr.s(auto_attribs=True)
|
7
|
+
class AlertType:
|
8
|
+
code: typing.Optional[str] = None
|
9
|
+
message: typing.Optional[str] = None
|
10
|
+
|
11
|
+
|
12
|
+
@attr.s(auto_attribs=True)
|
13
|
+
class LocalizationType:
|
14
|
+
localeCode: typing.Optional[str] = None
|
15
|
+
languageCode: typing.Optional[str] = None
|
16
|
+
|
17
|
+
|
18
|
+
@attr.s(auto_attribs=True)
|
19
|
+
class OutputType:
|
20
|
+
alerts: typing.Optional[typing.List[AlertType]] = jstruct.JList[AlertType]
|
21
|
+
localization: typing.Optional[LocalizationType] = jstruct.JStruct[LocalizationType]
|
22
|
+
documentType: typing.Optional[str] = None
|
23
|
+
documentFormat: typing.Optional[str] = None
|
24
|
+
documents: typing.Optional[typing.List[str]] = None
|
25
|
+
|
26
|
+
|
27
|
+
@attr.s(auto_attribs=True)
|
28
|
+
class TrackingDocumentResponseType:
|
29
|
+
transactionId: typing.Optional[str] = None
|
30
|
+
output: typing.Optional[OutputType] = jstruct.JStruct[OutputType]
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import attr
|
2
|
+
import jstruct
|
3
|
+
import typing
|
4
|
+
|
5
|
+
|
6
|
+
@attr.s(auto_attribs=True)
|
7
|
+
class TrackingNumberInfoType:
|
8
|
+
trackingNumber: typing.Optional[str] = None
|
9
|
+
carrierCode: typing.Optional[str] = None
|
10
|
+
trackingNumberUniqueId: typing.Optional[str] = None
|
11
|
+
|
12
|
+
|
13
|
+
@attr.s(auto_attribs=True)
|
14
|
+
class TrackingInfoType:
|
15
|
+
shipDateBegin: typing.Optional[str] = None
|
16
|
+
shipDateEnd: typing.Optional[str] = None
|
17
|
+
trackingNumberInfo: typing.Optional[TrackingNumberInfoType] = jstruct.JStruct[TrackingNumberInfoType]
|
18
|
+
|
19
|
+
|
20
|
+
@attr.s(auto_attribs=True)
|
21
|
+
class TrackingRequestType:
|
22
|
+
includeDetailedScans: typing.Optional[bool] = None
|
23
|
+
trackingInfo: typing.Optional[typing.List[TrackingInfoType]] = jstruct.JList[TrackingInfoType]
|