karrio-server-graph 2026.1__py3-none-any.whl → 2026.1.3__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/server/graph/migrations/0003_remove_template_customs.py +15 -0
- karrio/server/graph/models.py +2 -5
- karrio/server/graph/schemas/base/__init__.py +68 -48
- karrio/server/graph/schemas/base/inputs.py +286 -71
- karrio/server/graph/schemas/base/mutations.py +365 -84
- karrio/server/graph/schemas/base/types.py +940 -248
- karrio/server/graph/serializers.py +25 -59
- karrio/server/graph/tests/base.py +33 -6
- karrio/server/graph/tests/test_carrier_connections.py +33 -4
- karrio/server/graph/tests/test_pickups.py +333 -0
- karrio/server/graph/tests/test_rate_sheets.py +0 -1
- karrio/server/graph/tests/test_templates.py +328 -510
- karrio/server/graph/utils.py +68 -1
- {karrio_server_graph-2026.1.dist-info → karrio_server_graph-2026.1.3.dist-info}/METADATA +1 -1
- {karrio_server_graph-2026.1.dist-info → karrio_server_graph-2026.1.3.dist-info}/RECORD +17 -15
- {karrio_server_graph-2026.1.dist-info → karrio_server_graph-2026.1.3.dist-info}/WHEEL +1 -1
- {karrio_server_graph-2026.1.dist-info → karrio_server_graph-2026.1.3.dist-info}/top_level.txt +0 -0
|
@@ -67,10 +67,28 @@ class ManifestFilter(utils.Paginated):
|
|
|
67
67
|
carrier_name: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
68
68
|
|
|
69
69
|
|
|
70
|
+
@strawberry.input
|
|
71
|
+
class PickupFilter(utils.Paginated):
|
|
72
|
+
keyword: typing.Optional[str] = strawberry.UNSET
|
|
73
|
+
id: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
74
|
+
confirmation_number: typing.Optional[str] = strawberry.UNSET
|
|
75
|
+
pickup_date_after: typing.Optional[str] = strawberry.UNSET
|
|
76
|
+
pickup_date_before: typing.Optional[str] = strawberry.UNSET
|
|
77
|
+
created_after: typing.Optional[datetime.datetime] = strawberry.UNSET
|
|
78
|
+
created_before: typing.Optional[datetime.datetime] = strawberry.UNSET
|
|
79
|
+
carrier_name: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
80
|
+
address: typing.Optional[str] = strawberry.UNSET
|
|
81
|
+
metadata_key: typing.Optional[str] = strawberry.UNSET
|
|
82
|
+
metadata_value: typing.Optional[str] = strawberry.UNSET
|
|
83
|
+
meta_key: typing.Optional[str] = strawberry.UNSET
|
|
84
|
+
meta_value: typing.Optional[str] = strawberry.UNSET
|
|
85
|
+
|
|
86
|
+
|
|
70
87
|
@strawberry.input
|
|
71
88
|
class TemplateFilter(utils.Paginated):
|
|
72
89
|
label: typing.Optional[str] = strawberry.UNSET
|
|
73
90
|
keyword: typing.Optional[str] = strawberry.UNSET
|
|
91
|
+
usage: typing.Optional[str] = strawberry.UNSET
|
|
74
92
|
|
|
75
93
|
|
|
76
94
|
@strawberry.input
|
|
@@ -78,6 +96,12 @@ class AddressFilter(TemplateFilter):
|
|
|
78
96
|
address: typing.Optional[str] = strawberry.UNSET
|
|
79
97
|
|
|
80
98
|
|
|
99
|
+
@strawberry.input
|
|
100
|
+
class ProductFilter(TemplateFilter):
|
|
101
|
+
sku: typing.Optional[str] = strawberry.UNSET
|
|
102
|
+
origin_country: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
103
|
+
|
|
104
|
+
|
|
81
105
|
@strawberry.input
|
|
82
106
|
class CarrierFilter(utils.Paginated):
|
|
83
107
|
active: typing.Optional[bool] = strawberry.UNSET
|
|
@@ -95,6 +119,7 @@ class UpdateUserInput(utils.BaseInput):
|
|
|
95
119
|
|
|
96
120
|
@strawberry.input
|
|
97
121
|
class WorkspaceConfigMutationInput(utils.BaseInput):
|
|
122
|
+
# General preferences
|
|
98
123
|
default_currency: typing.Optional[utils.CurrencyCodeEnum] = strawberry.UNSET
|
|
99
124
|
default_country_code: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
100
125
|
default_label_type: typing.Optional[utils.LabelTypeEnum] = strawberry.UNSET
|
|
@@ -102,6 +127,7 @@ class WorkspaceConfigMutationInput(utils.BaseInput):
|
|
|
102
127
|
default_weight_unit: typing.Optional[utils.WeightUnitEnum] = strawberry.UNSET
|
|
103
128
|
default_dimension_unit: typing.Optional[utils.DimensionUnitEnum] = strawberry.UNSET
|
|
104
129
|
|
|
130
|
+
# Customs identifiers
|
|
105
131
|
state_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
106
132
|
federal_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
107
133
|
|
|
@@ -113,13 +139,61 @@ class WorkspaceConfigMutationInput(utils.BaseInput):
|
|
|
113
139
|
customs_nip_number: typing.Optional[str] = strawberry.UNSET
|
|
114
140
|
customs_vat_registration_number: typing.Optional[str] = strawberry.UNSET
|
|
115
141
|
|
|
142
|
+
# Default options
|
|
116
143
|
insured_by_default: typing.Optional[bool] = strawberry.UNSET
|
|
117
144
|
|
|
145
|
+
# Label printing
|
|
118
146
|
label_message_1: typing.Optional[str] = strawberry.UNSET
|
|
119
147
|
label_message_2: typing.Optional[str] = strawberry.UNSET
|
|
120
148
|
label_message_3: typing.Optional[str] = strawberry.UNSET
|
|
121
149
|
label_logo: typing.Optional[str] = strawberry.UNSET
|
|
122
150
|
|
|
151
|
+
# ─────────────────────────────────────────────────────────────────
|
|
152
|
+
# Printing Options - Labels (format uses default_label_type above)
|
|
153
|
+
# ─────────────────────────────────────────────────────────────────
|
|
154
|
+
print_label_size: typing.Optional[utils.LabelSizeEnum] = strawberry.UNSET
|
|
155
|
+
print_label_show_options: typing.Optional[bool] = strawberry.UNSET
|
|
156
|
+
|
|
157
|
+
# ─────────────────────────────────────────────────────────────────
|
|
158
|
+
# Printing Options - Return Labels
|
|
159
|
+
# ─────────────────────────────────────────────────────────────────
|
|
160
|
+
print_return_label_size: typing.Optional[utils.LabelSizeEnum] = strawberry.UNSET
|
|
161
|
+
print_return_label_show_options: typing.Optional[bool] = strawberry.UNSET
|
|
162
|
+
|
|
163
|
+
# ─────────────────────────────────────────────────────────────────
|
|
164
|
+
# Printing Options - Customs Documents
|
|
165
|
+
# ─────────────────────────────────────────────────────────────────
|
|
166
|
+
print_customs_size: typing.Optional[utils.LabelSizeEnum] = strawberry.UNSET
|
|
167
|
+
print_customs_show_options: typing.Optional[bool] = strawberry.UNSET
|
|
168
|
+
print_customs_with_label: typing.Optional[bool] = strawberry.UNSET
|
|
169
|
+
print_customs_copies: typing.Optional[int] = strawberry.UNSET
|
|
170
|
+
|
|
171
|
+
# ─────────────────────────────────────────────────────────────────
|
|
172
|
+
# Shipping Defaults - Settings
|
|
173
|
+
# ─────────────────────────────────────────────────────────────────
|
|
174
|
+
default_parcel_weight: typing.Optional[float] = strawberry.UNSET
|
|
175
|
+
default_shipping_service: typing.Optional[str] = strawberry.UNSET
|
|
176
|
+
default_shipping_carrier: typing.Optional[str] = strawberry.UNSET
|
|
177
|
+
default_export_reason: typing.Optional[utils.ExportReasonEnum] = strawberry.UNSET
|
|
178
|
+
default_delivery_instructions: typing.Optional[str] = strawberry.UNSET
|
|
179
|
+
|
|
180
|
+
# ─────────────────────────────────────────────────────────────────
|
|
181
|
+
# Shipping Defaults - Label Options
|
|
182
|
+
# ─────────────────────────────────────────────────────────────────
|
|
183
|
+
label_show_postage_paid_logo: typing.Optional[bool] = strawberry.UNSET
|
|
184
|
+
label_show_qr_code: typing.Optional[bool] = strawberry.UNSET
|
|
185
|
+
customs_use_order_as_invoice: typing.Optional[bool] = strawberry.UNSET
|
|
186
|
+
|
|
187
|
+
# ─────────────────────────────────────────────────────────────────
|
|
188
|
+
# Shipping Defaults - Recommendations Preferences
|
|
189
|
+
# ─────────────────────────────────────────────────────────────────
|
|
190
|
+
pref_first_mile: typing.Optional[typing.List[utils.FirstMileEnum]] = strawberry.UNSET
|
|
191
|
+
pref_last_mile: typing.Optional[typing.List[utils.LastMileEnum]] = strawberry.UNSET
|
|
192
|
+
pref_form_factor: typing.Optional[typing.List[utils.FormFactorEnum]] = strawberry.UNSET
|
|
193
|
+
pref_age_check: typing.Optional[utils.AgeCheckEnum] = strawberry.UNSET
|
|
194
|
+
pref_signature_required: typing.Optional[bool] = strawberry.UNSET
|
|
195
|
+
pref_max_lead_time_days: typing.Optional[int] = strawberry.UNSET
|
|
196
|
+
|
|
123
197
|
|
|
124
198
|
@strawberry.input
|
|
125
199
|
class TokenMutationInput(utils.BaseInput):
|
|
@@ -254,12 +328,6 @@ class AddressInput:
|
|
|
254
328
|
validate_location: typing.Optional[bool] = strawberry.UNSET
|
|
255
329
|
|
|
256
330
|
|
|
257
|
-
@strawberry.input
|
|
258
|
-
class UpdateAddressInput(AddressInput):
|
|
259
|
-
id: typing.Optional[str] = strawberry.UNSET
|
|
260
|
-
country_code: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
261
|
-
|
|
262
|
-
|
|
263
331
|
@strawberry.input
|
|
264
332
|
class ParcelInput:
|
|
265
333
|
weight: float
|
|
@@ -278,14 +346,6 @@ class ParcelInput:
|
|
|
278
346
|
items: typing.Optional[typing.List[CommodityInput]] = strawberry.UNSET
|
|
279
347
|
|
|
280
348
|
|
|
281
|
-
@strawberry.input
|
|
282
|
-
class UpdateParcelInput(ParcelInput):
|
|
283
|
-
id: typing.Optional[str] = strawberry.UNSET
|
|
284
|
-
weight: typing.Optional[float] = strawberry.UNSET
|
|
285
|
-
weight_unit: typing.Optional[utils.WeightUnitEnum] = strawberry.UNSET
|
|
286
|
-
items: typing.Optional[typing.List[UpdateCommodityInput]] = strawberry.UNSET # type: ignore
|
|
287
|
-
|
|
288
|
-
|
|
289
349
|
@strawberry.input
|
|
290
350
|
class DutyInput:
|
|
291
351
|
paid_by: utils.PaidByEnum
|
|
@@ -301,34 +361,113 @@ class UpdateDutyInput(DutyInput):
|
|
|
301
361
|
|
|
302
362
|
|
|
303
363
|
@strawberry.input
|
|
304
|
-
class
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
signer: typing.Optional[str] = strawberry.UNSET
|
|
314
|
-
duty: typing.Optional[DutyInput] = strawberry.UNSET
|
|
315
|
-
duty_billing_address: typing.Optional[UpdateAddressInput] = strawberry.UNSET
|
|
316
|
-
options: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
364
|
+
class PaymentInput:
|
|
365
|
+
account_number: typing.Optional[str] = strawberry.UNSET
|
|
366
|
+
paid_by: typing.Optional[utils.PaidByEnum] = strawberry.UNSET
|
|
367
|
+
currency: typing.Optional[utils.CurrencyCodeEnum] = strawberry.UNSET
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
371
|
+
# ADDRESS TEMPLATE INPUTS (flat structure with meta as JSON for extensibility)
|
|
372
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
317
373
|
|
|
318
374
|
|
|
319
375
|
@strawberry.input
|
|
320
|
-
class
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
376
|
+
class CreateAddressInput(utils.BaseInput):
|
|
377
|
+
"""Flat address template input with meta for template metadata."""
|
|
378
|
+
|
|
379
|
+
meta: utils.JSON
|
|
380
|
+
country_code: typing.Optional[utils.CountryCodeEnum]
|
|
381
|
+
postal_code: typing.Optional[str] = strawberry.UNSET
|
|
382
|
+
city: typing.Optional[str] = strawberry.UNSET
|
|
383
|
+
federal_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
384
|
+
state_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
385
|
+
person_name: typing.Optional[str] = strawberry.UNSET
|
|
386
|
+
company_name: typing.Optional[str] = strawberry.UNSET
|
|
387
|
+
email: typing.Optional[str] = strawberry.UNSET
|
|
388
|
+
phone_number: typing.Optional[str] = strawberry.UNSET
|
|
389
|
+
state_code: typing.Optional[str] = strawberry.UNSET
|
|
390
|
+
residential: typing.Optional[bool] = strawberry.UNSET
|
|
391
|
+
street_number: typing.Optional[str] = strawberry.UNSET
|
|
392
|
+
address_line1: typing.Optional[str] = strawberry.UNSET
|
|
393
|
+
address_line2: typing.Optional[str] = strawberry.UNSET
|
|
394
|
+
validate_location: typing.Optional[bool] = strawberry.UNSET
|
|
325
395
|
|
|
326
396
|
|
|
327
397
|
@strawberry.input
|
|
328
|
-
class
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
398
|
+
class UpdateAddressInput(utils.BaseInput):
|
|
399
|
+
"""Flat address template update input."""
|
|
400
|
+
|
|
401
|
+
id: str
|
|
402
|
+
meta: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
403
|
+
country_code: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
404
|
+
postal_code: typing.Optional[str] = strawberry.UNSET
|
|
405
|
+
city: typing.Optional[str] = strawberry.UNSET
|
|
406
|
+
federal_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
407
|
+
state_tax_id: typing.Optional[str] = strawberry.UNSET
|
|
408
|
+
person_name: typing.Optional[str] = strawberry.UNSET
|
|
409
|
+
company_name: typing.Optional[str] = strawberry.UNSET
|
|
410
|
+
email: typing.Optional[str] = strawberry.UNSET
|
|
411
|
+
phone_number: typing.Optional[str] = strawberry.UNSET
|
|
412
|
+
state_code: typing.Optional[str] = strawberry.UNSET
|
|
413
|
+
residential: typing.Optional[bool] = strawberry.UNSET
|
|
414
|
+
street_number: typing.Optional[str] = strawberry.UNSET
|
|
415
|
+
address_line1: typing.Optional[str] = strawberry.UNSET
|
|
416
|
+
address_line2: typing.Optional[str] = strawberry.UNSET
|
|
417
|
+
validate_location: typing.Optional[bool] = strawberry.UNSET
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
421
|
+
# PARCEL TEMPLATE INPUTS (flat structure with meta)
|
|
422
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
@strawberry.input
|
|
426
|
+
class CreateParcelInput(utils.BaseInput):
|
|
427
|
+
"""Flat parcel template input with meta for template metadata."""
|
|
428
|
+
|
|
429
|
+
meta: utils.JSON
|
|
430
|
+
weight: float
|
|
431
|
+
weight_unit: utils.WeightUnitEnum
|
|
432
|
+
width: typing.Optional[float] = strawberry.UNSET
|
|
433
|
+
height: typing.Optional[float] = strawberry.UNSET
|
|
434
|
+
length: typing.Optional[float] = strawberry.UNSET
|
|
435
|
+
packaging_type: typing.Optional[str] = strawberry.UNSET
|
|
436
|
+
package_preset: typing.Optional[str] = strawberry.UNSET
|
|
437
|
+
description: typing.Optional[str] = strawberry.UNSET
|
|
438
|
+
content: typing.Optional[str] = strawberry.UNSET
|
|
439
|
+
is_document: typing.Optional[bool] = strawberry.UNSET
|
|
440
|
+
dimension_unit: typing.Optional[utils.DimensionUnitEnum] = strawberry.UNSET
|
|
441
|
+
reference_number: typing.Optional[str] = strawberry.UNSET
|
|
442
|
+
freight_class: typing.Optional[str] = strawberry.UNSET
|
|
443
|
+
items: typing.Optional[typing.List[CommodityInput]] = strawberry.UNSET
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
@strawberry.input
|
|
447
|
+
class UpdateParcelInput(utils.BaseInput):
|
|
448
|
+
"""Flat parcel template update input."""
|
|
449
|
+
|
|
450
|
+
id: str
|
|
451
|
+
meta: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
452
|
+
weight: typing.Optional[float] = strawberry.UNSET
|
|
453
|
+
weight_unit: typing.Optional[utils.WeightUnitEnum] = strawberry.UNSET
|
|
454
|
+
width: typing.Optional[float] = strawberry.UNSET
|
|
455
|
+
height: typing.Optional[float] = strawberry.UNSET
|
|
456
|
+
length: typing.Optional[float] = strawberry.UNSET
|
|
457
|
+
packaging_type: typing.Optional[str] = strawberry.UNSET
|
|
458
|
+
package_preset: typing.Optional[str] = strawberry.UNSET
|
|
459
|
+
description: typing.Optional[str] = strawberry.UNSET
|
|
460
|
+
content: typing.Optional[str] = strawberry.UNSET
|
|
461
|
+
is_document: typing.Optional[bool] = strawberry.UNSET
|
|
462
|
+
dimension_unit: typing.Optional[utils.DimensionUnitEnum] = strawberry.UNSET
|
|
463
|
+
reference_number: typing.Optional[str] = strawberry.UNSET
|
|
464
|
+
freight_class: typing.Optional[str] = strawberry.UNSET
|
|
465
|
+
items: typing.Optional[typing.List[UpdateCommodityInput]] = strawberry.UNSET
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
469
|
+
# SHIPMENT MUTATION INPUTS
|
|
470
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
332
471
|
|
|
333
472
|
|
|
334
473
|
@strawberry.input
|
|
@@ -338,7 +477,7 @@ class PartialShipmentMutationInput(utils.BaseInput):
|
|
|
338
477
|
shipper: typing.Optional[UpdateAddressInput] = strawberry.UNSET
|
|
339
478
|
return_address: typing.Optional[UpdateAddressInput] = strawberry.UNSET
|
|
340
479
|
billing_address: typing.Optional[UpdateAddressInput] = strawberry.UNSET
|
|
341
|
-
customs: typing.Optional[
|
|
480
|
+
customs: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
342
481
|
parcels: typing.Optional[typing.List[UpdateParcelInput]] = strawberry.UNSET
|
|
343
482
|
payment: typing.Optional[PaymentInput] = strawberry.UNSET
|
|
344
483
|
label_type: typing.Optional[utils.LabelTypeEnum] = strawberry.UNSET
|
|
@@ -353,48 +492,46 @@ class ChangeShipmentStatusMutationInput(utils.BaseInput):
|
|
|
353
492
|
status: typing.Optional[utils.ManualShipmentStatusEnum]
|
|
354
493
|
|
|
355
494
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
address: AddressInput
|
|
360
|
-
is_default: typing.Optional[bool] = strawberry.UNSET
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
@strawberry.input
|
|
364
|
-
class UpdateAddressTemplateInput(CreateAddressTemplateInput):
|
|
365
|
-
id: str # type: ignore
|
|
366
|
-
label: typing.Optional[str]
|
|
367
|
-
address: typing.Optional[UpdateAddressInput] = strawberry.UNSET
|
|
495
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
496
|
+
# PRODUCT TEMPLATE INPUTS (flat structure with meta)
|
|
497
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
368
498
|
|
|
369
499
|
|
|
370
500
|
@strawberry.input
|
|
371
|
-
class
|
|
372
|
-
|
|
373
|
-
customs: CustomsInput
|
|
374
|
-
is_default: typing.Optional[bool] = strawberry.UNSET
|
|
375
|
-
|
|
501
|
+
class CreateProductInput(utils.BaseInput):
|
|
502
|
+
"""Flat product template input with meta for template metadata."""
|
|
376
503
|
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
504
|
+
meta: utils.JSON
|
|
505
|
+
weight: float
|
|
506
|
+
weight_unit: utils.WeightUnitEnum
|
|
507
|
+
quantity: typing.Optional[int] = 1
|
|
508
|
+
sku: typing.Optional[str] = strawberry.UNSET
|
|
509
|
+
title: typing.Optional[str] = strawberry.UNSET
|
|
510
|
+
hs_code: typing.Optional[str] = strawberry.UNSET
|
|
511
|
+
description: typing.Optional[str] = strawberry.UNSET
|
|
512
|
+
value_amount: typing.Optional[float] = strawberry.UNSET
|
|
513
|
+
value_currency: typing.Optional[utils.CurrencyCodeEnum] = strawberry.UNSET
|
|
514
|
+
origin_country: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
515
|
+
metadata: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
383
516
|
|
|
384
517
|
|
|
385
518
|
@strawberry.input
|
|
386
|
-
class
|
|
387
|
-
|
|
388
|
-
parcel: ParcelInput
|
|
389
|
-
is_default: typing.Optional[bool] = strawberry.UNSET
|
|
390
|
-
|
|
519
|
+
class UpdateProductInput(utils.BaseInput):
|
|
520
|
+
"""Flat product template update input."""
|
|
391
521
|
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
522
|
+
id: str
|
|
523
|
+
meta: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
524
|
+
weight: typing.Optional[float] = strawberry.UNSET
|
|
525
|
+
weight_unit: typing.Optional[utils.WeightUnitEnum] = strawberry.UNSET
|
|
526
|
+
quantity: typing.Optional[int] = strawberry.UNSET
|
|
527
|
+
sku: typing.Optional[str] = strawberry.UNSET
|
|
528
|
+
title: typing.Optional[str] = strawberry.UNSET
|
|
529
|
+
hs_code: typing.Optional[str] = strawberry.UNSET
|
|
530
|
+
description: typing.Optional[str] = strawberry.UNSET
|
|
531
|
+
value_amount: typing.Optional[float] = strawberry.UNSET
|
|
532
|
+
value_currency: typing.Optional[utils.CurrencyCodeEnum] = strawberry.UNSET
|
|
533
|
+
origin_country: typing.Optional[utils.CountryCodeEnum] = strawberry.UNSET
|
|
534
|
+
metadata: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
398
535
|
|
|
399
536
|
|
|
400
537
|
@strawberry.input
|
|
@@ -413,6 +550,62 @@ class LabelTemplateInput(utils.BaseInput):
|
|
|
413
550
|
id: typing.Optional[str] = strawberry.UNSET
|
|
414
551
|
|
|
415
552
|
|
|
553
|
+
@strawberry.input
|
|
554
|
+
class ServiceLevelFeaturesInput(utils.BaseInput):
|
|
555
|
+
"""Structured service level features input.
|
|
556
|
+
|
|
557
|
+
Defines the capabilities and characteristics of a shipping service.
|
|
558
|
+
Used for filtering, display, and setting default options.
|
|
559
|
+
"""
|
|
560
|
+
|
|
561
|
+
# First Mile: How parcels get to the carrier
|
|
562
|
+
# "pick_up" | "drop_off" | "pick_up_and_drop_off"
|
|
563
|
+
first_mile: typing.Optional[str] = strawberry.UNSET
|
|
564
|
+
|
|
565
|
+
# Last Mile: How parcels are delivered to recipient
|
|
566
|
+
# "home_delivery" | "service_point" | "mailbox"
|
|
567
|
+
last_mile: typing.Optional[str] = strawberry.UNSET
|
|
568
|
+
|
|
569
|
+
# Form Factor: Type of package the service supports
|
|
570
|
+
# "letter" | "parcel" | "mailbox" | "pallet"
|
|
571
|
+
form_factor: typing.Optional[str] = strawberry.UNSET
|
|
572
|
+
|
|
573
|
+
# Type of Shipments: Business model support
|
|
574
|
+
b2c: typing.Optional[bool] = strawberry.UNSET # Business to Consumer
|
|
575
|
+
b2b: typing.Optional[bool] = strawberry.UNSET # Business to Business
|
|
576
|
+
|
|
577
|
+
# Shipment Direction: "outbound" | "returns" | "both"
|
|
578
|
+
shipment_type: typing.Optional[str] = strawberry.UNSET
|
|
579
|
+
|
|
580
|
+
# Age Verification: null | "16" | "18"
|
|
581
|
+
age_check: typing.Optional[str] = strawberry.UNSET
|
|
582
|
+
|
|
583
|
+
# Default signature requirement
|
|
584
|
+
signature: typing.Optional[bool] = strawberry.UNSET
|
|
585
|
+
|
|
586
|
+
# Tracking availability
|
|
587
|
+
tracked: typing.Optional[bool] = strawberry.UNSET
|
|
588
|
+
|
|
589
|
+
# Insurance availability
|
|
590
|
+
insurance: typing.Optional[bool] = strawberry.UNSET
|
|
591
|
+
|
|
592
|
+
# Express/Priority service
|
|
593
|
+
express: typing.Optional[bool] = strawberry.UNSET
|
|
594
|
+
|
|
595
|
+
# Dangerous goods support
|
|
596
|
+
dangerous_goods: typing.Optional[bool] = strawberry.UNSET
|
|
597
|
+
|
|
598
|
+
# Weekend delivery options
|
|
599
|
+
saturday_delivery: typing.Optional[bool] = strawberry.UNSET
|
|
600
|
+
sunday_delivery: typing.Optional[bool] = strawberry.UNSET
|
|
601
|
+
|
|
602
|
+
# Multi-package shipment support
|
|
603
|
+
multicollo: typing.Optional[bool] = strawberry.UNSET
|
|
604
|
+
|
|
605
|
+
# Neighbor delivery allowed
|
|
606
|
+
neighbor_delivery: typing.Optional[bool] = strawberry.UNSET
|
|
607
|
+
|
|
608
|
+
|
|
416
609
|
@strawberry.input
|
|
417
610
|
class CreateServiceLevelInput(utils.BaseInput):
|
|
418
611
|
"""Input for creating a new service level."""
|
|
@@ -439,9 +632,16 @@ class CreateServiceLevelInput(utils.BaseInput):
|
|
|
439
632
|
max_volume: typing.Optional[float] = strawberry.UNSET
|
|
440
633
|
cost: typing.Optional[float] = strawberry.UNSET
|
|
441
634
|
|
|
635
|
+
# Volumetric weight fields
|
|
636
|
+
dim_factor: typing.Optional[float] = strawberry.UNSET
|
|
637
|
+
use_volumetric: typing.Optional[bool] = strawberry.UNSET
|
|
638
|
+
|
|
442
639
|
domicile: typing.Optional[bool] = strawberry.UNSET
|
|
443
640
|
international: typing.Optional[bool] = strawberry.UNSET
|
|
444
641
|
|
|
642
|
+
# Service features as structured object
|
|
643
|
+
features: typing.Optional[ServiceLevelFeaturesInput] = strawberry.UNSET
|
|
644
|
+
|
|
445
645
|
zone_ids: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
446
646
|
surcharge_ids: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
447
647
|
|
|
@@ -475,9 +675,16 @@ class UpdateServiceLevelInput(utils.BaseInput):
|
|
|
475
675
|
max_volume: typing.Optional[float] = strawberry.UNSET
|
|
476
676
|
cost: typing.Optional[float] = strawberry.UNSET
|
|
477
677
|
|
|
678
|
+
# Volumetric weight fields
|
|
679
|
+
dim_factor: typing.Optional[float] = strawberry.UNSET
|
|
680
|
+
use_volumetric: typing.Optional[bool] = strawberry.UNSET
|
|
681
|
+
|
|
478
682
|
domicile: typing.Optional[bool] = strawberry.UNSET
|
|
479
683
|
international: typing.Optional[bool] = strawberry.UNSET
|
|
480
684
|
|
|
685
|
+
# Service features as structured object
|
|
686
|
+
features: typing.Optional[ServiceLevelFeaturesInput] = strawberry.UNSET
|
|
687
|
+
|
|
481
688
|
zone_ids: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
482
689
|
surcharge_ids: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
483
690
|
|
|
@@ -493,6 +700,7 @@ class CreateRateSheetMutationInput(utils.BaseInput):
|
|
|
493
700
|
surcharges: typing.Optional[typing.List["SharedSurchargeInput"]] = strawberry.UNSET
|
|
494
701
|
service_rates: typing.Optional[typing.List["ServiceRateInput"]] = strawberry.UNSET
|
|
495
702
|
carriers: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
703
|
+
origin_countries: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
496
704
|
metadata: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
497
705
|
|
|
498
706
|
|
|
@@ -505,6 +713,7 @@ class UpdateRateSheetMutationInput(utils.BaseInput):
|
|
|
505
713
|
surcharges: typing.Optional[typing.List["SharedSurchargeInput"]] = strawberry.UNSET
|
|
506
714
|
service_rates: typing.Optional[typing.List["ServiceRateInput"]] = strawberry.UNSET
|
|
507
715
|
carriers: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
716
|
+
origin_countries: typing.Optional[typing.List[str]] = strawberry.UNSET
|
|
508
717
|
remove_missing_services: typing.Optional[bool] = strawberry.UNSET
|
|
509
718
|
metadata: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
510
719
|
|
|
@@ -555,6 +764,8 @@ class CreateMetafieldInput(utils.BaseInput):
|
|
|
555
764
|
type: utils.MetafieldTypeEnum
|
|
556
765
|
value: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
557
766
|
is_required: typing.Optional[bool] = strawberry.UNSET
|
|
767
|
+
object_type: typing.Optional[str] = strawberry.UNSET
|
|
768
|
+
object_id: typing.Optional[str] = strawberry.UNSET
|
|
558
769
|
|
|
559
770
|
|
|
560
771
|
@strawberry.input
|
|
@@ -571,6 +782,8 @@ class MetafieldInput(utils.BaseInput):
|
|
|
571
782
|
value: typing.Optional[utils.JSON] = strawberry.UNSET
|
|
572
783
|
is_required: typing.Optional[bool] = strawberry.UNSET
|
|
573
784
|
id: typing.Optional[str] = strawberry.UNSET
|
|
785
|
+
object_type: typing.Optional[str] = strawberry.UNSET
|
|
786
|
+
object_id: typing.Optional[str] = strawberry.UNSET
|
|
574
787
|
|
|
575
788
|
|
|
576
789
|
@strawberry.input
|
|
@@ -578,6 +791,8 @@ class MetafieldFilter(utils.Paginated):
|
|
|
578
791
|
key: typing.Optional[str] = strawberry.UNSET
|
|
579
792
|
type: typing.Optional[utils.MetafieldTypeEnum] = strawberry.UNSET
|
|
580
793
|
is_required: typing.Optional[bool] = strawberry.UNSET
|
|
794
|
+
object_type: typing.Optional[str] = strawberry.UNSET
|
|
795
|
+
object_id: typing.Optional[str] = strawberry.UNSET
|
|
581
796
|
|
|
582
797
|
|
|
583
798
|
# ─────────────────────────────────────────────────────────────────────────────
|