karrio 2023.5.1__py3-none-any.whl → 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/core/models.py CHANGED
@@ -1,4 +1,6 @@
1
1
  """Karrio Unified model definitions module."""
2
+
3
+ from unicodedata import category
2
4
  import attr
3
5
  from typing import List, Dict, Any, Union
4
6
  from jstruct import JList, JStruct, REQUIRED
@@ -23,6 +25,7 @@ class Address:
23
25
  address_line1: str = ""
24
26
  address_line2: str = None
25
27
  street_number: str = None
28
+ suite: str = None
26
29
 
27
30
  federal_tax_id: str = None
28
31
  state_tax_id: str = None
@@ -43,6 +46,7 @@ class Commodity:
43
46
  value_amount: float = None
44
47
  value_currency: str = None
45
48
  origin_country: str = None
49
+ category: str = None
46
50
 
47
51
  metadata: Dict = {}
48
52
 
@@ -124,6 +128,7 @@ class ShipmentRequest:
124
128
 
125
129
  payment: Payment = JStruct[Payment]
126
130
  customs: Customs = JStruct[Customs]
131
+ return_address: Address = JStruct[Address]
127
132
  billing_address: Address = JStruct[Address]
128
133
 
129
134
  options: Dict = {}
@@ -151,6 +156,11 @@ class RateRequest:
151
156
  recipient: Address = JStruct[Address, REQUIRED]
152
157
  parcels: List[Parcel] = JList[Parcel, REQUIRED]
153
158
 
159
+ payment: Payment = JStruct[Payment]
160
+ customs: Customs = JStruct[Customs]
161
+ return_address: Address = JStruct[Address]
162
+ billing_address: Address = JStruct[Address]
163
+
154
164
  services: List[str] = []
155
165
  options: Dict = {}
156
166
  reference: str = ""
@@ -176,10 +186,13 @@ class PickupRequest:
176
186
  address: Address = JStruct[Address, REQUIRED]
177
187
 
178
188
  parcels: List[Parcel] = JList[Parcel]
179
- instruction: str = None
189
+ shipment_identifiers: List[str] = []
180
190
  package_location: str = None
191
+ instruction: str = None
181
192
  options: Dict = {}
182
193
 
194
+ metadata: Dict = {}
195
+
183
196
 
184
197
  @attr.s(auto_attribs=True)
185
198
  class PickupUpdateRequest:
@@ -192,8 +205,9 @@ class PickupUpdateRequest:
192
205
  address: Address = JStruct[Address, REQUIRED]
193
206
 
194
207
  parcels: List[Parcel] = JList[Parcel]
195
- instruction: str = None
208
+ shipment_identifiers: List[str] = []
196
209
  package_location: str = None
210
+ instruction: str = None
197
211
  options: Dict = {}
198
212
 
199
213
 
@@ -206,6 +220,7 @@ class PickupCancelRequest:
206
220
  address: Address = JStruct[Address]
207
221
  pickup_date: str = None
208
222
  reason: str = None
223
+ options: Dict = {}
209
224
 
210
225
 
211
226
  @attr.s(auto_attribs=True)
@@ -215,6 +230,18 @@ class AddressValidationRequest:
215
230
  address: Address = JStruct[Address, REQUIRED]
216
231
 
217
232
 
233
+ @attr.s(auto_attribs=True)
234
+ class ManifestRequest:
235
+ """manifest request unified data type."""
236
+
237
+ shipment_identifiers: List[str]
238
+ address: Address = JStruct[Address, REQUIRED]
239
+
240
+ reference: str = None
241
+ metadata: Dict = {}
242
+ options: Dict = {}
243
+
244
+
218
245
  @attr.s(auto_attribs=True)
219
246
  class Message:
220
247
  """Karrio unified Message data type."""
@@ -223,6 +250,7 @@ class Message:
223
250
  carrier_id: str
224
251
  message: Union[str, Any] = None
225
252
  code: str = None
253
+ level: str = None
226
254
  details: Dict = None
227
255
 
228
256
 
@@ -301,6 +329,14 @@ class TrackingInfo:
301
329
  source: str = None
302
330
 
303
331
 
332
+ @attr.s(auto_attribs=True)
333
+ class Images:
334
+ """Karrio unified tracker images data type."""
335
+
336
+ delivery_image: str = None
337
+ signature_image: str = None
338
+
339
+
304
340
  @attr.s(auto_attribs=True)
305
341
  class TrackingDetails:
306
342
  """Karrio unified tracking details data type."""
@@ -309,6 +345,7 @@ class TrackingDetails:
309
345
  carrier_id: str
310
346
  tracking_number: str
311
347
  events: List[TrackingEvent] = JList[TrackingEvent, REQUIRED]
348
+ images: Images = JStruct[Images]
312
349
  estimated_delivery: str = None
313
350
  info: TrackingInfo = None
314
351
  delivered: bool = None
@@ -318,13 +355,13 @@ class TrackingDetails:
318
355
 
319
356
  @attr.s(auto_attribs=True)
320
357
  class Documents:
321
- """Karrio unified shipment details data type."""
358
+ """Karrio unified shipment documents details data type."""
322
359
 
323
360
  label: str
324
- zpl_label: str = None
325
- pdf_label: str = None
326
361
 
327
362
  invoice: str = None
363
+ zpl_label: str = None
364
+ pdf_label: str = None
328
365
 
329
366
 
330
367
  @attr.s(auto_attribs=True)
@@ -353,6 +390,25 @@ class PickupDetails:
353
390
  pickup_charge: ChargeDetails = JStruct[ChargeDetails]
354
391
  ready_time: str = None
355
392
  closing_time: str = None
393
+ meta: dict = None
394
+ id: str = None
395
+
396
+
397
+ @attr.s(auto_attribs=True)
398
+ class ManifestDocument:
399
+ """Karrio unified manifest document details data type."""
400
+
401
+ manifest: str = None
402
+
403
+
404
+ @attr.s(auto_attribs=True)
405
+ class ManifestDetails:
406
+ """Karrio unified manifest details data type."""
407
+
408
+ carrier_name: str
409
+ carrier_id: str
410
+ doc: ManifestDocument = JStruct[ManifestDocument]
411
+ meta: dict = None
356
412
  id: str = None
357
413
 
358
414
 
@@ -389,6 +445,7 @@ class ServiceZone:
389
445
 
390
446
  # Location
391
447
  cities: List[str] = []
448
+ postal_codes: List[str] = []
392
449
  country_codes: List[str] = []
393
450
 
394
451
 
@@ -398,6 +455,7 @@ class ServiceLevel:
398
455
 
399
456
  service_name: str
400
457
  service_code: str
458
+ carrier_service_code: str = None
401
459
  description: str = ""
402
460
  active: bool = True
403
461
  id: str = None
@@ -425,6 +483,8 @@ class ServiceLevel:
425
483
  transit_days: int = None
426
484
  transit_time: float = None
427
485
 
486
+ metadata: Dict = {}
487
+
428
488
 
429
489
  @attr.s(auto_attribs=True)
430
490
  class LabelTemplate:
@@ -466,6 +526,7 @@ class DocumentUploadRequest:
466
526
 
467
527
  document_files: List[DocumentFile] = JList[DocumentFile, REQUIRED]
468
528
  tracking_number: str = None
529
+ shipment_date: str = None
469
530
  reference: str = None
470
531
  options: Dict = {}
471
532