@shipengine/connect-carrier-api 2.1.24 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/carrier-app.d.ts +1 -0
- package/lib/app/carrier-app.js +12 -0
- package/lib/app/carrier-app.js.map +1 -1
- package/lib/models/addresses/address-base.d.ts +13 -13
- package/lib/models/addresses/address-base.js.map +1 -1
- package/lib/models/addresses/address-residential-indicator.d.ts +3 -0
- package/lib/models/addresses/address-residential-indicator.js +3 -0
- package/lib/models/addresses/address-residential-indicator.js.map +1 -1
- package/lib/models/addresses/ship-from-display.d.ts +1 -0
- package/lib/models/addresses/ship-from-display.js +1 -0
- package/lib/models/addresses/ship-from-display.js.map +1 -1
- package/lib/models/addresses/ship-from.d.ts +1 -0
- package/lib/models/addresses/ship-from.js +1 -0
- package/lib/models/addresses/ship-from.js.map +1 -1
- package/lib/models/addresses/ship-to.d.ts +1 -0
- package/lib/models/addresses/ship-to.js +1 -0
- package/lib/models/addresses/ship-to.js.map +1 -1
- package/lib/models/advanced-options.d.ts +1 -1
- package/lib/models/authorization.d.ts +2 -0
- package/lib/models/authorization.js.map +1 -1
- package/lib/models/billing/billing-categories.d.ts +1 -1
- package/lib/models/billing/billing-categories.js +1 -1
- package/lib/models/billing/billing-categories.js.map +1 -1
- package/lib/models/billing/billing-line-item.d.ts +5 -0
- package/lib/models/billing/billing-line-item.js +2 -2
- package/lib/models/billing/billing-line-item.js.map +1 -1
- package/lib/models/confirmation-types.d.ts +5 -5
- package/lib/models/confirmation-types.js +5 -5
- package/lib/models/confirmation-types.js.map +1 -1
- package/lib/models/currency.d.ts +2 -0
- package/lib/models/currency.js.map +1 -1
- package/lib/models/customs/customs-content-types.d.ts +5 -1
- package/lib/models/customs/customs-content-types.js +5 -1
- package/lib/models/customs/customs-content-types.js.map +1 -1
- package/lib/models/customs/customs-item.d.ts +9 -1
- package/lib/models/customs/customs-item.js +1 -1
- package/lib/models/customs/customs-item.js.map +1 -1
- package/lib/models/customs/customs-non-delivery.d.ts +2 -0
- package/lib/models/customs/customs-non-delivery.js +2 -0
- package/lib/models/customs/customs-non-delivery.js.map +1 -1
- package/lib/models/customs/customs.d.ts +6 -1
- package/lib/models/customs/customs.js +1 -1
- package/lib/models/customs/customs.js.map +1 -1
- package/lib/models/documents/document-type.d.ts +4 -0
- package/lib/models/documents/document-type.js +4 -0
- package/lib/models/documents/document-type.js.map +1 -1
- package/lib/models/documents/document.d.ts +3 -0
- package/lib/models/documents/document.js.map +1 -1
- package/lib/models/errors/detailed-error.d.ts +1 -1
- package/lib/models/errors/detailed-error.js +1 -1
- package/lib/models/errors/detailed-error.js.map +1 -1
- package/lib/models/errors/standardized-error-code.d.ts +1 -1
- package/lib/models/errors/standardized-error-code.js +1 -1
- package/lib/models/errors/standardized-error-code.js.map +1 -1
- package/lib/models/fulfillment-plans/fulfillment-plan-details.d.ts +4 -1
- package/lib/models/fulfillment-plans/fulfillment-plan-details.js +1 -1
- package/lib/models/fulfillment-plans/fulfillment-plan-details.js.map +1 -1
- package/lib/models/fulfillment-plans/fulfillment-plan-items.d.ts +4 -4
- package/lib/models/fulfillment-plans/raw-external-source.d.ts +2 -0
- package/lib/models/fulfillment-plans/raw-external-source.js +1 -0
- package/lib/models/fulfillment-plans/raw-external-source.js.map +1 -1
- package/lib/models/labels/form-download.d.ts +2 -0
- package/lib/models/labels/form-download.js +1 -0
- package/lib/models/labels/form-download.js.map +1 -1
- package/lib/models/labels/label-download.d.ts +2 -0
- package/lib/models/labels/label-download.js +1 -0
- package/lib/models/labels/label-download.js.map +1 -1
- package/lib/models/labels/label-package.d.ts +2 -0
- package/lib/models/labels/label-package.js.map +1 -1
- package/lib/models/labels/return-label-details.d.ts +1 -0
- package/lib/models/labels/return-label-details.js.map +1 -1
- package/lib/models/labels/void-request.d.ts +2 -0
- package/lib/models/labels/void-request.js.map +1 -1
- package/lib/models/labels/void-response.d.ts +1 -1
- package/lib/models/manifests/label.d.ts +2 -0
- package/lib/models/manifests/label.js.map +1 -1
- package/lib/models/manifests/manifest.d.ts +5 -1
- package/lib/models/manifests/manifest.js +1 -1
- package/lib/models/manifests/manifest.js.map +1 -1
- package/lib/models/package.d.ts +6 -0
- package/lib/models/package.js.map +1 -1
- package/lib/models/pickup/cancellation-details.d.ts +1 -0
- package/lib/models/pickup/cancellation-details.js.map +1 -1
- package/lib/models/pickup/pickup-confirmation.d.ts +3 -0
- package/lib/models/pickup/pickup-confirmation.js.map +1 -1
- package/lib/models/pickup/pickup-contact-details.d.ts +6 -1
- package/lib/models/pickup/pickup-contact-details.js +1 -1
- package/lib/models/pickup/pickup-contact-details.js.map +1 -1
- package/lib/models/pickup/pickup-location-details.d.ts +1 -0
- package/lib/models/pickup/pickup-location-details.js.map +1 -1
- package/lib/models/pickup/pickup-package.d.ts +7 -0
- package/lib/models/pickup/pickup-package.js.map +1 -1
- package/lib/models/pickup/pickup-shipment-details.d.ts +1 -0
- package/lib/models/pickup/pickup-shipment-details.js.map +1 -1
- package/lib/models/pickup/pickup-window.d.ts +5 -1
- package/lib/models/pickup/pickup-window.js +1 -1
- package/lib/models/pickup/pickup-window.js.map +1 -1
- package/lib/models/pickup/shipment-identifier.d.ts +2 -0
- package/lib/models/pickup/shipment-identifier.js.map +1 -1
- package/lib/models/pickup/shipped-package.d.ts +7 -0
- package/lib/models/pickup/shipped-package.js.map +1 -1
- package/lib/models/pickup/shipped-shipment.d.ts +6 -0
- package/lib/models/pickup/shipped-shipment.js.map +1 -1
- package/lib/models/rates/rate.d.ts +2 -4
- package/lib/models/rates/rate.js.map +1 -1
- package/lib/models/registration/credentials.d.ts +2 -0
- package/lib/models/registration/credentials.js.map +1 -1
- package/lib/models/resource-download.d.ts +2 -0
- package/lib/models/resource-download.js.map +1 -1
- package/lib/models/taxes/tax-identifier.d.ts +1 -1
- package/lib/models/taxes/tax-identifier.js +1 -1
- package/lib/models/taxes/tax-identifier.js.map +1 -1
- package/lib/models/tracking/lat-long.d.ts +2 -2
- package/lib/models/tracking/service.d.ts +2 -0
- package/lib/models/tracking/service.js.map +1 -1
- package/lib/models/tracking/track-event.d.ts +9 -0
- package/lib/models/tracking/track-event.js.map +1 -1
- package/lib/models/tracking/tracking-info.d.ts +18 -0
- package/lib/models/tracking/tracking-info.js.map +1 -1
- package/lib/models/units/dimension-details.d.ts +4 -0
- package/lib/models/units/dimension-details.js.map +1 -1
- package/lib/models/units/weight-details.d.ts +4 -0
- package/lib/models/units/weight-details.js.map +1 -1
- package/lib/requests/create-notification-request.d.ts +3 -1
- package/lib/requests/create-notification-request.js.map +1 -1
- package/lib/responses/create-notification-response.d.ts +2 -0
- package/lib/responses/create-notification-response.js +2 -0
- package/lib/responses/create-notification-response.js.map +1 -1
- package/package.json +1 -1
- package/spec.json +355 -176
- package/src/app/carrier-app.ts +18 -0
- package/src/models/addresses/address-base.ts +13 -14
- package/src/models/addresses/address-residential-indicator.ts +3 -0
- package/src/models/addresses/ship-from-display.ts +1 -0
- package/src/models/addresses/ship-from.ts +1 -0
- package/src/models/addresses/ship-to.ts +1 -0
- package/src/models/advanced-options.ts +1 -1
- package/src/models/authorization.ts +2 -0
- package/src/models/billing/billing-categories.ts +1 -1
- package/src/models/billing/billing-line-item.ts +7 -2
- package/src/models/confirmation-types.ts +5 -5
- package/src/models/currency.ts +2 -0
- package/src/models/customs/customs-content-types.ts +5 -1
- package/src/models/customs/customs-item.ts +9 -1
- package/src/models/customs/customs-non-delivery.ts +2 -0
- package/src/models/customs/customs.ts +6 -1
- package/src/models/documents/document-type.ts +4 -0
- package/src/models/documents/document.ts +3 -0
- package/src/models/errors/detailed-error.ts +1 -1
- package/src/models/errors/standardized-error-code.ts +1 -1
- package/src/models/fulfillment-plans/fulfillment-plan-details.ts +4 -1
- package/src/models/fulfillment-plans/fulfillment-plan-items.ts +4 -4
- package/src/models/fulfillment-plans/raw-external-source.ts +2 -0
- package/src/models/labels/form-download.ts +2 -0
- package/src/models/labels/label-download.ts +2 -0
- package/src/models/labels/label-package.ts +2 -0
- package/src/models/labels/return-label-details.ts +1 -0
- package/src/models/labels/void-request.ts +2 -0
- package/src/models/labels/void-response.ts +1 -1
- package/src/models/manifests/label.ts +2 -0
- package/src/models/manifests/manifest.ts +5 -1
- package/src/models/package.ts +6 -0
- package/src/models/pickup/cancellation-details.ts +1 -0
- package/src/models/pickup/pickup-confirmation.ts +3 -0
- package/src/models/pickup/pickup-contact-details.ts +6 -1
- package/src/models/pickup/pickup-location-details.ts +1 -0
- package/src/models/pickup/pickup-package.ts +7 -0
- package/src/models/pickup/pickup-shipment-details.ts +1 -0
- package/src/models/pickup/pickup-window.ts +5 -1
- package/src/models/pickup/shipment-identifier.ts +2 -0
- package/src/models/pickup/shipped-package.ts +7 -0
- package/src/models/pickup/shipped-shipment.ts +6 -0
- package/src/models/rates/rate.ts +2 -4
- package/src/models/registration/credentials.ts +2 -0
- package/src/models/resource-download.ts +2 -0
- package/src/models/taxes/tax-identifier.ts +1 -1
- package/src/models/tracking/lat-long.ts +2 -2
- package/src/models/tracking/service.ts +2 -0
- package/src/models/tracking/track-event.ts +9 -0
- package/src/models/tracking/tracking-info.ts +18 -0
- package/src/models/units/dimension-details.ts +4 -0
- package/src/models/units/weight-details.ts +4 -0
- package/src/requests/create-notification-request.ts +3 -1
- package/src/responses/create-notification-response.ts +3 -0
- package/tsconfig.tsbuildinfo +1 -1
package/spec.json
CHANGED
|
@@ -8,16 +8,14 @@
|
|
|
8
8
|
"paths": {
|
|
9
9
|
"/Register": {
|
|
10
10
|
"post": {
|
|
11
|
-
"tags": [
|
|
12
|
-
|
|
13
|
-
],
|
|
14
|
-
"description": "This method is used to authenticate with your application. It is responsible for verifying the supplied\r\nuser credentials and establishing or renewing a connection. The authentication information will be\r\nstored in the metadata object and will be included in all request bodies. All applications must\r\nimplement the Register method.",
|
|
11
|
+
"tags": ["Account Setup"],
|
|
12
|
+
"description": "This method is used to authenticate with your application. It is responsible for verifying the supplied user credentials and establishing or renewing a connection. The authentication information will be stored in the metadata object and will be included in all request bodies. All applications must implement the Register method.",
|
|
15
13
|
"operationId": "Register",
|
|
16
14
|
"parameters": [
|
|
17
15
|
{
|
|
18
16
|
"name": "ShipStation-TransactionID",
|
|
19
17
|
"in": "header",
|
|
20
|
-
"description": "Uniquely identifies the current transaction. If the transaction is retried
|
|
18
|
+
"description": "Uniquely identifies the current transaction. If the transaction is retried, then this transaction_id will remain the same. You can use this to detect and prevent duplicate operations.",
|
|
21
19
|
"schema": {
|
|
22
20
|
"type": "string",
|
|
23
21
|
"format": "uuid"
|
|
@@ -25,13 +23,25 @@
|
|
|
25
23
|
}
|
|
26
24
|
],
|
|
27
25
|
"requestBody": {
|
|
28
|
-
"description": "An object containing the authentication information gathered using the
|
|
26
|
+
"description": "An object containing the authentication information gathered using the connection form you created for your application. It will contain whatever fields you defined in this form. Your method must then use this data to perform authentication with your backend service.",
|
|
29
27
|
"content": {
|
|
30
28
|
"application/json": {
|
|
31
29
|
"schema": {
|
|
32
30
|
"$ref": "#/components/schemas/ExampleRegisterRequest"
|
|
33
31
|
},
|
|
34
|
-
"example": {
|
|
32
|
+
"example": {
|
|
33
|
+
"registration_info": {
|
|
34
|
+
"username": "auctane-next-day",
|
|
35
|
+
"password": "password!",
|
|
36
|
+
"meter_number": "8675309"
|
|
37
|
+
},
|
|
38
|
+
"transaction_id": "00000000-0000-0000-0000-000000000000",
|
|
39
|
+
"metadata": {
|
|
40
|
+
"username": "auctane-next-day",
|
|
41
|
+
"password": "password!",
|
|
42
|
+
"meter_number": "8675309"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
35
45
|
}
|
|
36
46
|
}
|
|
37
47
|
},
|
|
@@ -86,7 +96,17 @@
|
|
|
86
96
|
"schema": {
|
|
87
97
|
"$ref": "#/components/schemas/RegisterResponse"
|
|
88
98
|
},
|
|
89
|
-
"example": {
|
|
99
|
+
"example": {
|
|
100
|
+
"credentials": {
|
|
101
|
+
"username": "auctane-next-day",
|
|
102
|
+
"password": "password!"
|
|
103
|
+
},
|
|
104
|
+
"metadata": {
|
|
105
|
+
"username": "auctane-next-day",
|
|
106
|
+
"password": "password!",
|
|
107
|
+
"meter_number": "8675309"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
90
110
|
}
|
|
91
111
|
}
|
|
92
112
|
}
|
|
@@ -95,9 +115,7 @@
|
|
|
95
115
|
},
|
|
96
116
|
"/CreateLabel": {
|
|
97
117
|
"post": {
|
|
98
|
-
"tags": [
|
|
99
|
-
"Labels"
|
|
100
|
-
],
|
|
118
|
+
"tags": ["Labels"],
|
|
101
119
|
"description": "This method creates a new label.",
|
|
102
120
|
"operationId": "Create a Label",
|
|
103
121
|
"parameters": [
|
|
@@ -180,9 +198,7 @@
|
|
|
180
198
|
},
|
|
181
199
|
"/VoidLabels": {
|
|
182
200
|
"post": {
|
|
183
|
-
"tags": [
|
|
184
|
-
"Labels"
|
|
185
|
-
],
|
|
201
|
+
"tags": ["Labels"],
|
|
186
202
|
"description": "This method is used to void a previously created labels.",
|
|
187
203
|
"operationId": "Void a Label",
|
|
188
204
|
"parameters": [
|
|
@@ -265,10 +281,8 @@
|
|
|
265
281
|
},
|
|
266
282
|
"/CreateManifest": {
|
|
267
283
|
"post": {
|
|
268
|
-
"tags": [
|
|
269
|
-
|
|
270
|
-
],
|
|
271
|
-
"description": "This method creates an end-of-day manifest and should be implemented by carrier apps that support\r\nend-of-day manifesting.",
|
|
284
|
+
"tags": ["Manifesting"],
|
|
285
|
+
"description": "This method creates an end-of-day manifest and should be implemented by carrier apps that support end-of-day manifesting.",
|
|
272
286
|
"operationId": "Create Manifest",
|
|
273
287
|
"parameters": [
|
|
274
288
|
{
|
|
@@ -350,16 +364,14 @@
|
|
|
350
364
|
},
|
|
351
365
|
"/ValidateInboundData": {
|
|
352
366
|
"post": {
|
|
353
|
-
"tags": [
|
|
354
|
-
|
|
355
|
-
],
|
|
356
|
-
"description": "This method validates and then returns the type of information contained in the inbound data,\r\nsuch as tracking information\r\n \r\nCarriers which support webhook based tracking or manifesting updates may choose to implement this endpoint\r\n \r\nNote: Changes made to the connection meta-data will not be saved if modified",
|
|
367
|
+
"tags": ["Normalize Inbound Data"],
|
|
368
|
+
"description": "This method validates and then returns the type of information contained in the inbound data, such as tracking information Carriers which support webhook based tracking or manifesting updates may choose to implement this endpoint Note: Changes made to the connection meta-data will not be saved if modified",
|
|
357
369
|
"operationId": "Validate Inbound Data",
|
|
358
370
|
"parameters": [
|
|
359
371
|
{
|
|
360
372
|
"name": "ShipStation-TransactionID",
|
|
361
373
|
"in": "header",
|
|
362
|
-
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a
|
|
374
|
+
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a request together.",
|
|
363
375
|
"schema": {
|
|
364
376
|
"type": "string",
|
|
365
377
|
"format": "uuid"
|
|
@@ -373,7 +385,22 @@
|
|
|
373
385
|
"schema": {
|
|
374
386
|
"$ref": "#/components/schemas/ValidateInboundDataRequest"
|
|
375
387
|
},
|
|
376
|
-
"example": {
|
|
388
|
+
"example": {
|
|
389
|
+
"data": "{\"tracking_number\":\"12345678901234567890\",\"status\":11,\"timestamp\":\"2021-08-11T21:15:00Z\"}",
|
|
390
|
+
"headers": {
|
|
391
|
+
"content-type": ["application/json"],
|
|
392
|
+
"X-Signature": [
|
|
393
|
+
"v1:cedff7d0389299089e4c62c1042ce93059664d455ed0bfdf29cb959a861bda4b",
|
|
394
|
+
"v2:4b3157c730e498cb1126359fa020017e9e7c97b148f2d55da822fdfcd83e4a19"
|
|
395
|
+
]
|
|
396
|
+
},
|
|
397
|
+
"transaction_id": "00000000-0000-0000-0000-000000000000",
|
|
398
|
+
"metadata": {
|
|
399
|
+
"username": "auctane-next-day",
|
|
400
|
+
"password": "password!",
|
|
401
|
+
"meter_number": "8675309"
|
|
402
|
+
}
|
|
403
|
+
}
|
|
377
404
|
}
|
|
378
405
|
}
|
|
379
406
|
},
|
|
@@ -431,7 +458,7 @@
|
|
|
431
458
|
"examples": {
|
|
432
459
|
"Tracking": {
|
|
433
460
|
"summary": "Tracking",
|
|
434
|
-
"value": {"content_types":["tracking"]}
|
|
461
|
+
"value": { "content_types": ["tracking"] }
|
|
435
462
|
}
|
|
436
463
|
}
|
|
437
464
|
}
|
|
@@ -442,16 +469,14 @@
|
|
|
442
469
|
},
|
|
443
470
|
"/NormalizeTrackingData": {
|
|
444
471
|
"post": {
|
|
445
|
-
"tags": [
|
|
446
|
-
|
|
447
|
-
],
|
|
448
|
-
"description": "This method returns normalized tracking information for one or more shipments based on data send by the carrier\r\n \r\nCarriers which support webhook based tracking updates may choose to implement this endpoint\r\n \r\nNote: Changes made to the connection meta-data will not be saved if modified",
|
|
472
|
+
"tags": ["Normalize Inbound Data"],
|
|
473
|
+
"description": "This method returns normalized tracking information for one or more shipments based on data send by the carrier Carriers which support webhook based tracking updates may choose to implement this endpoint Note: Changes made to the connection meta-data will not be saved if modified",
|
|
449
474
|
"operationId": "Normalize Tracking Data",
|
|
450
475
|
"parameters": [
|
|
451
476
|
{
|
|
452
477
|
"name": "ShipStation-TransactionID",
|
|
453
478
|
"in": "header",
|
|
454
|
-
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a
|
|
479
|
+
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a request together.",
|
|
455
480
|
"schema": {
|
|
456
481
|
"type": "string",
|
|
457
482
|
"format": "uuid"
|
|
@@ -465,7 +490,22 @@
|
|
|
465
490
|
"schema": {
|
|
466
491
|
"$ref": "#/components/schemas/NormalizeTrackingDataRequest"
|
|
467
492
|
},
|
|
468
|
-
"example": {
|
|
493
|
+
"example": {
|
|
494
|
+
"data": "{\"tracking_number\":\"12345678901234567890\",\"status\":11,\"timestamp\":\"2021-08-11T21:15:00Z\"}",
|
|
495
|
+
"headers": {
|
|
496
|
+
"content-type": ["application/json"],
|
|
497
|
+
"X-Signature": [
|
|
498
|
+
"v1:cedff7d0389299089e4c62c1042ce93059664d455ed0bfdf29cb959a861bda4b",
|
|
499
|
+
"v2:4b3157c730e498cb1126359fa020017e9e7c97b148f2d55da822fdfcd83e4a19"
|
|
500
|
+
]
|
|
501
|
+
},
|
|
502
|
+
"transaction_id": "00000000-0000-0000-0000-000000000000",
|
|
503
|
+
"metadata": {
|
|
504
|
+
"username": "auctane-next-day",
|
|
505
|
+
"password": "password!",
|
|
506
|
+
"meter_number": "8675309"
|
|
507
|
+
}
|
|
508
|
+
}
|
|
469
509
|
}
|
|
470
510
|
}
|
|
471
511
|
},
|
|
@@ -523,7 +563,25 @@
|
|
|
523
563
|
"examples": {
|
|
524
564
|
"Delivered": {
|
|
525
565
|
"summary": "Delivered",
|
|
526
|
-
"value": {
|
|
566
|
+
"value": {
|
|
567
|
+
"tracking_info": [
|
|
568
|
+
{
|
|
569
|
+
"carrier_name": "UPS",
|
|
570
|
+
"tracking_number": "12345678901234567890",
|
|
571
|
+
"standardized_status_code": "DE",
|
|
572
|
+
"carrier_status_code": "11",
|
|
573
|
+
"carrier_status_description": "Delivered",
|
|
574
|
+
"estimated_delivery_datetime": "2021-08-11T00:00:00",
|
|
575
|
+
"actual_delivery_datetime": "2021-08-11T21:15:00Z",
|
|
576
|
+
"service": { "code": "03", "name": "UPS® Ground" },
|
|
577
|
+
"packaging": "package",
|
|
578
|
+
"package_count": 1,
|
|
579
|
+
"shipping_problem": false,
|
|
580
|
+
"carrierEnum": 0
|
|
581
|
+
}
|
|
582
|
+
],
|
|
583
|
+
"update_method": "append"
|
|
584
|
+
}
|
|
527
585
|
}
|
|
528
586
|
}
|
|
529
587
|
}
|
|
@@ -534,9 +592,7 @@
|
|
|
534
592
|
},
|
|
535
593
|
"/CreateNotification": {
|
|
536
594
|
"post": {
|
|
537
|
-
"tags": [
|
|
538
|
-
"Shipment Notifications"
|
|
539
|
-
],
|
|
595
|
+
"tags": ["Shipment Notifications"],
|
|
540
596
|
"operationId": "Create Notification",
|
|
541
597
|
"parameters": [
|
|
542
598
|
{
|
|
@@ -616,9 +672,7 @@
|
|
|
616
672
|
},
|
|
617
673
|
"/CancelNotification": {
|
|
618
674
|
"post": {
|
|
619
|
-
"tags": [
|
|
620
|
-
"Shipment Notifications"
|
|
621
|
-
],
|
|
675
|
+
"tags": ["Shipment Notifications"],
|
|
622
676
|
"operationId": "Cancel Notification",
|
|
623
677
|
"parameters": [
|
|
624
678
|
{
|
|
@@ -698,9 +752,7 @@
|
|
|
698
752
|
},
|
|
699
753
|
"/SchedulePickup": {
|
|
700
754
|
"post": {
|
|
701
|
-
"tags": [
|
|
702
|
-
"Scheduled Pickups"
|
|
703
|
-
],
|
|
755
|
+
"tags": ["Scheduled Pickups"],
|
|
704
756
|
"description": "This method is used to schedule a pickup with a carrier.",
|
|
705
757
|
"operationId": "Schedule Adhoc Pickup",
|
|
706
758
|
"parameters": [
|
|
@@ -783,9 +835,7 @@
|
|
|
783
835
|
},
|
|
784
836
|
"/CancelPickup": {
|
|
785
837
|
"post": {
|
|
786
|
-
"tags": [
|
|
787
|
-
"Scheduled Pickups"
|
|
788
|
-
],
|
|
838
|
+
"tags": ["Scheduled Pickups"],
|
|
789
839
|
"operationId": "Cancel Adhoc Pickup",
|
|
790
840
|
"parameters": [
|
|
791
841
|
{
|
|
@@ -865,10 +915,8 @@
|
|
|
865
915
|
},
|
|
866
916
|
"/GetRates": {
|
|
867
917
|
"post": {
|
|
868
|
-
"tags": [
|
|
869
|
-
|
|
870
|
-
],
|
|
871
|
-
"description": "This method calculates the shipping costs for a shipment, or multiple permutations of a shipment, to allow\r\nyour customers to select the best rate.\r\n \r\nMost carrier apps should implement this method, unless you don't support rating shipments.",
|
|
918
|
+
"tags": ["Rating"],
|
|
919
|
+
"description": "This method calculates the shipping costs for a shipment, or multiple permutations of a shipment, to allow your customers to select the best rate. Most carrier apps should implement this method, unless you don't support rating shipments.",
|
|
872
920
|
"operationId": "Get Rates",
|
|
873
921
|
"parameters": [
|
|
874
922
|
{
|
|
@@ -950,16 +998,14 @@
|
|
|
950
998
|
},
|
|
951
999
|
"/Track": {
|
|
952
1000
|
"post": {
|
|
953
|
-
"tags": [
|
|
954
|
-
|
|
955
|
-
],
|
|
956
|
-
"description": "This method returns tracking information for a shipment, including each of the tracking events that\r\nhave occurred for the shipment.\r\n \r\nMost carrier applications should implement this method, unless you don't support tracking shipments.",
|
|
1001
|
+
"tags": ["Tracking"],
|
|
1002
|
+
"description": "This method returns tracking information for a shipment, including each of the tracking events that have occurred for the shipment. Most carrier applications should implement this method, unless you don't support tracking shipments.",
|
|
957
1003
|
"operationId": "Track a Shipment",
|
|
958
1004
|
"parameters": [
|
|
959
1005
|
{
|
|
960
1006
|
"name": "ShipStation-TransactionID",
|
|
961
1007
|
"in": "header",
|
|
962
|
-
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a
|
|
1008
|
+
"description": "Unique transaction ID, use this transaction ID in your logs to correlate a request together.",
|
|
963
1009
|
"schema": {
|
|
964
1010
|
"type": "string",
|
|
965
1011
|
"format": "uuid"
|
|
@@ -973,7 +1019,32 @@
|
|
|
973
1019
|
"schema": {
|
|
974
1020
|
"$ref": "#/components/schemas/TrackingRequest"
|
|
975
1021
|
},
|
|
976
|
-
"example": {
|
|
1022
|
+
"example": {
|
|
1023
|
+
"tracking_number": "12345678901234567890",
|
|
1024
|
+
"is_return": false,
|
|
1025
|
+
"identifiers": [
|
|
1026
|
+
{
|
|
1027
|
+
"type": "tracking_number",
|
|
1028
|
+
"value": "12345678901234567890"
|
|
1029
|
+
},
|
|
1030
|
+
{
|
|
1031
|
+
"type": "carrier_transaction_id",
|
|
1032
|
+
"value": "US-12345678901234567890-1"
|
|
1033
|
+
}
|
|
1034
|
+
],
|
|
1035
|
+
"attributes": [
|
|
1036
|
+
{
|
|
1037
|
+
"type": "marketplace_order_token",
|
|
1038
|
+
"value": "123456abcdefg7890"
|
|
1039
|
+
}
|
|
1040
|
+
],
|
|
1041
|
+
"transaction_id": "00000000-0000-0000-0000-000000000000",
|
|
1042
|
+
"metadata": {
|
|
1043
|
+
"username": "auctane-next-day",
|
|
1044
|
+
"password": "password!",
|
|
1045
|
+
"meter_number": "8675309"
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
977
1048
|
}
|
|
978
1049
|
}
|
|
979
1050
|
},
|
|
@@ -1031,15 +1102,178 @@
|
|
|
1031
1102
|
"examples": {
|
|
1032
1103
|
"Delivered with Event History": {
|
|
1033
1104
|
"summary": "Delivered with Event History",
|
|
1034
|
-
"value": {
|
|
1105
|
+
"value": {
|
|
1106
|
+
"tracking_info": {
|
|
1107
|
+
"carrier_name": "UPS",
|
|
1108
|
+
"tracking_number": "12345678901234567890",
|
|
1109
|
+
"standardized_status_code": "DE",
|
|
1110
|
+
"carrier_status_code": "11",
|
|
1111
|
+
"carrier_status_description": "Delivered",
|
|
1112
|
+
"estimated_delivery_datetime": "2021-08-11T00:00:00",
|
|
1113
|
+
"actual_delivery_datetime": "2021-08-11T21:15:00Z",
|
|
1114
|
+
"weight": 500.0,
|
|
1115
|
+
"dimensions": {
|
|
1116
|
+
"length": 10.0,
|
|
1117
|
+
"width": 10.0,
|
|
1118
|
+
"height": 10.0
|
|
1119
|
+
},
|
|
1120
|
+
"service": { "code": "03", "name": "UPS® Ground" },
|
|
1121
|
+
"packaging": "package",
|
|
1122
|
+
"package_count": 1,
|
|
1123
|
+
"events": [
|
|
1124
|
+
{
|
|
1125
|
+
"event_datetime": "2021-08-08T21:15:00Z",
|
|
1126
|
+
"event_datetime_local": "2021-08-08T16:15:00",
|
|
1127
|
+
"event_code": "3",
|
|
1128
|
+
"description": "Order Processed: Ready for UPS",
|
|
1129
|
+
"city": "Austin",
|
|
1130
|
+
"state": "TX",
|
|
1131
|
+
"postal_code": "78756",
|
|
1132
|
+
"country": "US",
|
|
1133
|
+
"geo": { "lat": 30.31, "long": -97.74 },
|
|
1134
|
+
"status_code": "AC"
|
|
1135
|
+
},
|
|
1136
|
+
{
|
|
1137
|
+
"event_datetime": "2021-08-09T09:15:00Z",
|
|
1138
|
+
"event_datetime_local": "2021-08-09T04:15:00",
|
|
1139
|
+
"event_code": "5",
|
|
1140
|
+
"description": "In Transit",
|
|
1141
|
+
"city": "Austin",
|
|
1142
|
+
"state": "TX",
|
|
1143
|
+
"postal_code": "78756",
|
|
1144
|
+
"country": "US",
|
|
1145
|
+
"geo": { "lat": 30.2, "long": -97.66 },
|
|
1146
|
+
"status_code": "IT"
|
|
1147
|
+
},
|
|
1148
|
+
{
|
|
1149
|
+
"event_datetime": "2021-08-10T09:15:00Z",
|
|
1150
|
+
"event_datetime_local": "2021-08-10T04:15:00",
|
|
1151
|
+
"event_code": "6",
|
|
1152
|
+
"description": "On Vehicle for Delivery",
|
|
1153
|
+
"city": "Los Angeles",
|
|
1154
|
+
"state": "CA",
|
|
1155
|
+
"postal_code": "90045",
|
|
1156
|
+
"country": "US",
|
|
1157
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1158
|
+
"status_code": "IT"
|
|
1159
|
+
},
|
|
1160
|
+
{
|
|
1161
|
+
"event_datetime": "2021-08-10T15:15:00Z",
|
|
1162
|
+
"event_datetime_local": "2021-08-10T10:15:00",
|
|
1163
|
+
"event_code": "21",
|
|
1164
|
+
"description": "On Vehicle for Delivery Today",
|
|
1165
|
+
"city": "Los Angeles",
|
|
1166
|
+
"state": "CA",
|
|
1167
|
+
"postal_code": "90045",
|
|
1168
|
+
"country": "US",
|
|
1169
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1170
|
+
"status_code": "IT"
|
|
1171
|
+
},
|
|
1172
|
+
{
|
|
1173
|
+
"event_datetime": "2021-08-10T21:15:00Z",
|
|
1174
|
+
"event_datetime_local": "2021-08-10T16:15:00",
|
|
1175
|
+
"event_code": "22",
|
|
1176
|
+
"description": "First Attempt Made",
|
|
1177
|
+
"city": "El Segundo",
|
|
1178
|
+
"state": "CA",
|
|
1179
|
+
"postal_code": "90245",
|
|
1180
|
+
"country": "US",
|
|
1181
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1182
|
+
"status_code": "AT"
|
|
1183
|
+
},
|
|
1184
|
+
{
|
|
1185
|
+
"event_datetime": "2021-08-11T03:15:00Z",
|
|
1186
|
+
"event_datetime_local": "2021-08-10T22:15:00",
|
|
1187
|
+
"event_code": "21",
|
|
1188
|
+
"description": "On Vehicle for Delivery Today",
|
|
1189
|
+
"city": "Los Angeles",
|
|
1190
|
+
"state": "CA",
|
|
1191
|
+
"postal_code": "90045",
|
|
1192
|
+
"country": "US",
|
|
1193
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1194
|
+
"status_code": "IT"
|
|
1195
|
+
},
|
|
1196
|
+
{
|
|
1197
|
+
"event_datetime": "2021-08-11T21:15:00Z",
|
|
1198
|
+
"event_datetime_local": "2021-08-11T16:15:00",
|
|
1199
|
+
"event_code": "11",
|
|
1200
|
+
"description": "Delivered",
|
|
1201
|
+
"city": "El Segundo",
|
|
1202
|
+
"state": "CA",
|
|
1203
|
+
"postal_code": "90245",
|
|
1204
|
+
"country": "US",
|
|
1205
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1206
|
+
"status_code": "DE"
|
|
1207
|
+
}
|
|
1208
|
+
],
|
|
1209
|
+
"shipping_problem": false,
|
|
1210
|
+
"carrierEnum": 0
|
|
1211
|
+
}
|
|
1212
|
+
}
|
|
1035
1213
|
},
|
|
1036
1214
|
"Not Yet in System": {
|
|
1037
1215
|
"summary": "Not Yet in System",
|
|
1038
|
-
"value": {
|
|
1216
|
+
"value": {
|
|
1217
|
+
"tracking_info": {
|
|
1218
|
+
"carrier_name": "UPS",
|
|
1219
|
+
"tracking_number": "12345678901234567890",
|
|
1220
|
+
"standardized_status_code": "NY",
|
|
1221
|
+
"events": [],
|
|
1222
|
+
"shipping_problem": false,
|
|
1223
|
+
"carrierEnum": 0
|
|
1224
|
+
}
|
|
1225
|
+
}
|
|
1039
1226
|
},
|
|
1040
1227
|
"Fatal Exception": {
|
|
1041
1228
|
"summary": "Fatal Exception",
|
|
1042
|
-
"value": {
|
|
1229
|
+
"value": {
|
|
1230
|
+
"tracking_info": {
|
|
1231
|
+
"carrier_name": "UPS",
|
|
1232
|
+
"tracking_number": "12345678901234567890",
|
|
1233
|
+
"standardized_status_code": "EX",
|
|
1234
|
+
"carrier_status_code": "64",
|
|
1235
|
+
"carrier_status_description": "Delivery Refused",
|
|
1236
|
+
"estimated_delivery_datetime": "2021-08-11T00:00:00",
|
|
1237
|
+
"actual_delivery_datetime": "2021-08-11T21:15:00Z",
|
|
1238
|
+
"weight": 500.0,
|
|
1239
|
+
"dimensions": {
|
|
1240
|
+
"length": 10.0,
|
|
1241
|
+
"width": 10.0,
|
|
1242
|
+
"height": 10.0
|
|
1243
|
+
},
|
|
1244
|
+
"service": { "code": "03", "name": "UPS® Ground" },
|
|
1245
|
+
"packaging": "package",
|
|
1246
|
+
"package_count": 1,
|
|
1247
|
+
"events": [
|
|
1248
|
+
{
|
|
1249
|
+
"event_datetime": "2021-08-09T09:15:00Z",
|
|
1250
|
+
"event_datetime_local": "2021-08-09T04:15:00",
|
|
1251
|
+
"event_code": "5",
|
|
1252
|
+
"description": "In Transit",
|
|
1253
|
+
"city": "Austin",
|
|
1254
|
+
"state": "TX",
|
|
1255
|
+
"postal_code": "78756",
|
|
1256
|
+
"country": "US",
|
|
1257
|
+
"geo": { "lat": 30.2, "long": -97.66 },
|
|
1258
|
+
"status_code": "IT"
|
|
1259
|
+
},
|
|
1260
|
+
{
|
|
1261
|
+
"event_datetime": "2021-08-11T21:15:00Z",
|
|
1262
|
+
"event_datetime_local": "2021-08-11T16:15:00",
|
|
1263
|
+
"event_code": "59",
|
|
1264
|
+
"description": "Delivery Refused",
|
|
1265
|
+
"city": "El Segundo",
|
|
1266
|
+
"state": "CA",
|
|
1267
|
+
"postal_code": "90245",
|
|
1268
|
+
"country": "US",
|
|
1269
|
+
"geo": { "lat": 33.95, "long": -118.38 },
|
|
1270
|
+
"status_code": "EX"
|
|
1271
|
+
}
|
|
1272
|
+
],
|
|
1273
|
+
"shipping_problem": false,
|
|
1274
|
+
"carrierEnum": 0
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1043
1277
|
}
|
|
1044
1278
|
}
|
|
1045
1279
|
}
|
|
@@ -1132,13 +1366,7 @@
|
|
|
1132
1366
|
"additionalProperties": false
|
|
1133
1367
|
},
|
|
1134
1368
|
"AddressResidentialIndicator": {
|
|
1135
|
-
"enum": [
|
|
1136
|
-
"unknown",
|
|
1137
|
-
"yes",
|
|
1138
|
-
"no",
|
|
1139
|
-
"commercial",
|
|
1140
|
-
"residential"
|
|
1141
|
-
],
|
|
1369
|
+
"enum": ["unknown", "yes", "no", "commercial", "residential"],
|
|
1142
1370
|
"type": "string"
|
|
1143
1371
|
},
|
|
1144
1372
|
"AdvancedOptions": {
|
|
@@ -1175,8 +1403,8 @@
|
|
|
1175
1403
|
"nullable": true
|
|
1176
1404
|
}
|
|
1177
1405
|
},
|
|
1178
|
-
"additionalProperties": {
|
|
1179
|
-
"description": "This is a schemaless object. It is for open ended customizations unique to particular carriers. The documented
|
|
1406
|
+
"additionalProperties": {},
|
|
1407
|
+
"description": "This is a schemaless object. It is for open ended customizations unique to particular carriers. The documented keys are some common options shared by many carriers, but are not definitive. Advanced options you support will be defined in ShipEngine. If the field is absent it should be interpreted as the default value for any applicable options, e.g. false for booleans."
|
|
1180
1408
|
},
|
|
1181
1409
|
"Authorization": {
|
|
1182
1410
|
"type": "object",
|
|
@@ -1220,7 +1448,7 @@
|
|
|
1220
1448
|
},
|
|
1221
1449
|
"metadata": {
|
|
1222
1450
|
"type": "object",
|
|
1223
|
-
"additionalProperties": {
|
|
1451
|
+
"additionalProperties": {},
|
|
1224
1452
|
"nullable": true
|
|
1225
1453
|
}
|
|
1226
1454
|
},
|
|
@@ -1231,8 +1459,8 @@
|
|
|
1231
1459
|
"properties": {
|
|
1232
1460
|
"metadata": {
|
|
1233
1461
|
"type": "object",
|
|
1234
|
-
"additionalProperties": {
|
|
1235
|
-
"description": "This is an optional schemaless object that you may return with a successful response. Anything returned
|
|
1462
|
+
"additionalProperties": {},
|
|
1463
|
+
"description": "This is an optional schemaless object that you may return with a successful response. Anything returned under this key will be included in all future requests. For example, you may store additional static properties about the end user or their connection to the carrier. The maximum storage size for data under this key is 4KB.",
|
|
1236
1464
|
"nullable": true
|
|
1237
1465
|
}
|
|
1238
1466
|
},
|
|
@@ -1312,19 +1540,15 @@
|
|
|
1312
1540
|
},
|
|
1313
1541
|
"account_number": {
|
|
1314
1542
|
"type": "string",
|
|
1315
|
-
"description": "Specified if there is an account number associated with the Bill To Party, and the Bill To Party is
|
|
1543
|
+
"description": "Specified if there is an account number associated with the Bill To Party, and the Bill To Party is not the account holder.",
|
|
1316
1544
|
"nullable": true
|
|
1317
1545
|
}
|
|
1318
1546
|
},
|
|
1319
1547
|
"additionalProperties": false,
|
|
1320
|
-
"description": "Bill to is a generic object used for billing a part of the shipment, duties, taxes, or otherwise to a party
|
|
1548
|
+
"description": "Bill to is a generic object used for billing a part of the shipment, duties, taxes, or otherwise to a party other than the shipper (the shipper is considered the default party responsible). CarrierApi.Common.Request.CarrierApi.Common.Models.BillTo extends CarrierApi.Common.Models.Addresses.AddressBase since address fields are often required when associating billing to another account. Additionally, this allows for a contact to be specified, if necessary."
|
|
1321
1549
|
},
|
|
1322
1550
|
"BillToParty": {
|
|
1323
|
-
"enum": [
|
|
1324
|
-
"shipper",
|
|
1325
|
-
"recipient",
|
|
1326
|
-
"third_party_account"
|
|
1327
|
-
],
|
|
1551
|
+
"enum": ["shipper", "recipient", "third_party_account"],
|
|
1328
1552
|
"type": "string",
|
|
1329
1553
|
"description": "The type of party responsible for a given category of charges associated with a shipment, such as shipping charges or import duties."
|
|
1330
1554
|
},
|
|
@@ -1392,7 +1616,7 @@
|
|
|
1392
1616
|
"properties": {
|
|
1393
1617
|
"message": {
|
|
1394
1618
|
"type": "string",
|
|
1395
|
-
"description": "User facing text describing the cancellation process. May be left
|
|
1619
|
+
"description": "User facing text describing the cancellation process. May be left blank to present a default value.",
|
|
1396
1620
|
"nullable": true
|
|
1397
1621
|
},
|
|
1398
1622
|
"errors": {
|
|
@@ -1400,7 +1624,7 @@
|
|
|
1400
1624
|
"items": {
|
|
1401
1625
|
"type": "string"
|
|
1402
1626
|
},
|
|
1403
|
-
"description": "A list of errors preventing this notification from being cancelled
|
|
1627
|
+
"description": "A list of errors preventing this notification from being cancelled. If no errors are returned the void is considered successful. If any errors are returned the void is considered failed.",
|
|
1404
1628
|
"nullable": true
|
|
1405
1629
|
}
|
|
1406
1630
|
},
|
|
@@ -1505,12 +1729,12 @@
|
|
|
1505
1729
|
"properties": {
|
|
1506
1730
|
"service_code": {
|
|
1507
1731
|
"type": "string",
|
|
1508
|
-
"description": "The service code uniquely identifies a shipping service that you offer. Which service codes can be passed
|
|
1732
|
+
"description": "The service code uniquely identifies a shipping service that you offer. Which service codes can be passed to you will be configured in ShipEngine.",
|
|
1509
1733
|
"nullable": true
|
|
1510
1734
|
},
|
|
1511
1735
|
"ship_datetime": {
|
|
1512
1736
|
"type": "string",
|
|
1513
|
-
"description": "When the package is expected to ship. Not guaranteed to be in the future. Formatted per the
|
|
1737
|
+
"description": "When the package is expected to ship. Not guaranteed to be in the future. Formatted per the https://tools.ietf.org/html/rfc3339 spec. Will always be in UTC.",
|
|
1514
1738
|
"format": "date-time"
|
|
1515
1739
|
},
|
|
1516
1740
|
"confirmation": {
|
|
@@ -1524,7 +1748,7 @@
|
|
|
1524
1748
|
},
|
|
1525
1749
|
"is_test_label": {
|
|
1526
1750
|
"type": "boolean",
|
|
1527
|
-
"description": "Whether this request is the result of a test. When true the request must not result in any financial charges
|
|
1751
|
+
"description": "Whether this request is the result of a test. When true the request must not result in any financial charges to any party. If the field is absent it should be interpreted as false"
|
|
1528
1752
|
},
|
|
1529
1753
|
"advanced_options": {
|
|
1530
1754
|
"$ref": "#/components/schemas/AdvancedOptions"
|
|
@@ -1534,7 +1758,7 @@
|
|
|
1534
1758
|
},
|
|
1535
1759
|
"is_return_label": {
|
|
1536
1760
|
"type": "boolean",
|
|
1537
|
-
"description": "Whether this label is to return a previously shipped package. If the field is absent it should be
|
|
1761
|
+
"description": "Whether this label is to return a previously shipped package. If the field is absent it should be interpreted as false."
|
|
1538
1762
|
},
|
|
1539
1763
|
"packages": {
|
|
1540
1764
|
"type": "array",
|
|
@@ -1558,7 +1782,7 @@
|
|
|
1558
1782
|
},
|
|
1559
1783
|
"next_day": {
|
|
1560
1784
|
"type": "boolean",
|
|
1561
|
-
"description": "Whether this shipment is expected to use a next day service class. If the field is absent it
|
|
1785
|
+
"description": "Whether this shipment is expected to use a next day service class. If the field is absent it should be interpreted as false",
|
|
1562
1786
|
"nullable": true
|
|
1563
1787
|
},
|
|
1564
1788
|
"international": {
|
|
@@ -1582,7 +1806,7 @@
|
|
|
1582
1806
|
"items": {
|
|
1583
1807
|
"$ref": "#/components/schemas/Document"
|
|
1584
1808
|
},
|
|
1585
|
-
"description": "Attachments that may be required to be sent to the carrier, in particular customs documents or
|
|
1809
|
+
"description": "Attachments that may be required to be sent to the carrier, in particular customs documents or commercial invoices.",
|
|
1586
1810
|
"nullable": true
|
|
1587
1811
|
},
|
|
1588
1812
|
"bill_shipping_to": {
|
|
@@ -1617,7 +1841,7 @@
|
|
|
1617
1841
|
"items": {
|
|
1618
1842
|
"$ref": "#/components/schemas/Document"
|
|
1619
1843
|
},
|
|
1620
|
-
"description": "Shipment level documents should be used if documents are not returned at a package level
|
|
1844
|
+
"description": "Shipment level documents should be used if documents are not returned at a package level. DO NOT include duplicate documents intentionally, a document should only be added to the CreateLabelResponse or to the LabelPackage.",
|
|
1621
1845
|
"nullable": true
|
|
1622
1846
|
},
|
|
1623
1847
|
"packages": {
|
|
@@ -1625,7 +1849,7 @@
|
|
|
1625
1849
|
"items": {
|
|
1626
1850
|
"$ref": "#/components/schemas/LabelPackage"
|
|
1627
1851
|
},
|
|
1628
|
-
"description": "Package information returned for each requested package in the shipment
|
|
1852
|
+
"description": "Package information returned for each requested package in the shipment. Note: The order of the packages returned should match the order of the packages in the request.",
|
|
1629
1853
|
"nullable": true
|
|
1630
1854
|
},
|
|
1631
1855
|
"billing_line_items": {
|
|
@@ -1638,7 +1862,7 @@
|
|
|
1638
1862
|
},
|
|
1639
1863
|
"tracking_number": {
|
|
1640
1864
|
"type": "string",
|
|
1641
|
-
"description": "The carrier specific tracking identifier for this shipment; if a multi-package shipment, this should be
|
|
1865
|
+
"description": "The carrier specific tracking identifier for this shipment; if a multi-package shipment, this should be the lead tracking number.",
|
|
1642
1866
|
"nullable": true
|
|
1643
1867
|
},
|
|
1644
1868
|
"trackable": {
|
|
@@ -1656,7 +1880,7 @@
|
|
|
1656
1880
|
},
|
|
1657
1881
|
"estimated_delivery_datetime": {
|
|
1658
1882
|
"type": "string",
|
|
1659
|
-
"description": "The estimated date and time for when the shipment will be delivered. Formatted per the
|
|
1883
|
+
"description": "The estimated date and time for when the shipment will be delivered. Formatted per the https://tools.ietf.org/html/rfc3339 spec.",
|
|
1660
1884
|
"format": "date-time",
|
|
1661
1885
|
"nullable": true,
|
|
1662
1886
|
"example": "1937-01-01T12:00:27.87+00:20"
|
|
@@ -1705,13 +1929,13 @@
|
|
|
1705
1929
|
},
|
|
1706
1930
|
"open_datetime": {
|
|
1707
1931
|
"type": "string",
|
|
1708
|
-
"description": "The date and time of the earliest shipment being manifested. Formatted per the
|
|
1932
|
+
"description": "The date and time of the earliest shipment being manifested. Formatted per the https://tools.ietf.org/html/rfc3339 spec",
|
|
1709
1933
|
"format": "date-time",
|
|
1710
1934
|
"nullable": true
|
|
1711
1935
|
},
|
|
1712
1936
|
"close_datetime": {
|
|
1713
1937
|
"type": "string",
|
|
1714
|
-
"description": "The date and time of the last shipment being manifested. Formatted per the
|
|
1938
|
+
"description": "The date and time of the last shipment being manifested. Formatted per the https://tools.ietf.org/html/rfc3339 spec",
|
|
1715
1939
|
"format": "date-time"
|
|
1716
1940
|
},
|
|
1717
1941
|
"advanced_options": {
|
|
@@ -1793,7 +2017,7 @@
|
|
|
1793
2017
|
}
|
|
1794
2018
|
},
|
|
1795
2019
|
"additionalProperties": false,
|
|
1796
|
-
"description": "The credentials that will be used to access this carrier's services. These will be sent as a
|
|
2020
|
+
"description": "The credentials that will be used to access this carrier's services. These will be sent as a Basic Authorization header with all future requests."
|
|
1797
2021
|
},
|
|
1798
2022
|
"Customs": {
|
|
1799
2023
|
"type": "object",
|
|
@@ -1823,7 +2047,7 @@
|
|
|
1823
2047
|
"description": "Alpha-3 currency code complying with ISO 4217."
|
|
1824
2048
|
}
|
|
1825
2049
|
},
|
|
1826
|
-
"description": "Indicates how much the buyer paid for shipping, if any. This amount may be different than the shipping cost billed
|
|
2050
|
+
"description": "Indicates how much the buyer paid for shipping, if any. This amount may be different than the shipping cost billed to the shipper.",
|
|
1827
2051
|
"nullable": true
|
|
1828
2052
|
},
|
|
1829
2053
|
"duties_paid": {
|
|
@@ -1837,7 +2061,7 @@
|
|
|
1837
2061
|
"description": "Alpha-3 currency code complying with ISO 4217."
|
|
1838
2062
|
}
|
|
1839
2063
|
},
|
|
1840
|
-
"description": "The amount of duties paid by the shipper, if any. This is generally only necessary for DDP
|
|
2064
|
+
"description": "The amount of duties paid by the shipper, if any. This is generally only necessary for DDP (bill_duties_to_sender) shipments.",
|
|
1841
2065
|
"nullable": true
|
|
1842
2066
|
},
|
|
1843
2067
|
"bill_duties_to": {
|
|
@@ -1861,7 +2085,7 @@
|
|
|
1861
2085
|
"properties": {
|
|
1862
2086
|
"description": {
|
|
1863
2087
|
"type": "string",
|
|
1864
|
-
"description": "A user specified free form string describing this customs item. If the field is absent the user has
|
|
2088
|
+
"description": "A user specified free form string describing this customs item. If the field is absent the user has not specified a description.",
|
|
1865
2089
|
"nullable": true
|
|
1866
2090
|
},
|
|
1867
2091
|
"quantity": {
|
|
@@ -1880,7 +2104,7 @@
|
|
|
1880
2104
|
"description": "Alpha-3 currency code complying with ISO 4217."
|
|
1881
2105
|
}
|
|
1882
2106
|
},
|
|
1883
|
-
"description": "The user specified declared customs value of this customs item. Generally, this value needs to be greater
|
|
2107
|
+
"description": "The user specified declared customs value of this customs item. Generally, this value needs to be greater than 0 to be accepted through customs.",
|
|
1884
2108
|
"nullable": true
|
|
1885
2109
|
},
|
|
1886
2110
|
"country_of_origin": {
|
|
@@ -1911,10 +2135,7 @@
|
|
|
1911
2135
|
"description": "This model represents the customs declaration for a single item."
|
|
1912
2136
|
},
|
|
1913
2137
|
"CustomsNonDelivery": {
|
|
1914
|
-
"enum": [
|
|
1915
|
-
"return_to_sender",
|
|
1916
|
-
"treat_as_abandoned"
|
|
1917
|
-
],
|
|
2138
|
+
"enum": ["return_to_sender", "treat_as_abandoned"],
|
|
1918
2139
|
"type": "string",
|
|
1919
2140
|
"description": "What to do if the shipment is undeliverable."
|
|
1920
2141
|
},
|
|
@@ -1997,10 +2218,7 @@
|
|
|
1997
2218
|
"description": "This model represents the measurements for dimensions."
|
|
1998
2219
|
},
|
|
1999
2220
|
"DimensionUnit": {
|
|
2000
|
-
"enum": [
|
|
2001
|
-
"inches",
|
|
2002
|
-
"centimeters"
|
|
2003
|
-
],
|
|
2221
|
+
"enum": ["inches", "centimeters"],
|
|
2004
2222
|
"type": "string",
|
|
2005
2223
|
"description": "This model represents the supported units for dimensions."
|
|
2006
2224
|
},
|
|
@@ -2012,7 +2230,7 @@
|
|
|
2012
2230
|
"items": {
|
|
2013
2231
|
"$ref": "#/components/schemas/DocumentType"
|
|
2014
2232
|
},
|
|
2015
|
-
"description": "The document type(s) being returned. In most cases this is just a single document type; however, some
|
|
2233
|
+
"description": "The document type(s) being returned. In most cases this is just a single document type; however, some carriers return multiple document types in the same PDF or ZPL.",
|
|
2016
2234
|
"nullable": true
|
|
2017
2235
|
},
|
|
2018
2236
|
"data": {
|
|
@@ -2028,11 +2246,7 @@
|
|
|
2028
2246
|
"description": "Container for a document."
|
|
2029
2247
|
},
|
|
2030
2248
|
"DocumentFormat": {
|
|
2031
|
-
"enum": [
|
|
2032
|
-
"PDF",
|
|
2033
|
-
"ZPL",
|
|
2034
|
-
"PNG"
|
|
2035
|
-
],
|
|
2249
|
+
"enum": ["PDF", "ZPL", "PNG"],
|
|
2036
2250
|
"type": "string"
|
|
2037
2251
|
},
|
|
2038
2252
|
"DocumentType": {
|
|
@@ -2052,7 +2266,7 @@
|
|
|
2052
2266
|
"items": {
|
|
2053
2267
|
"$ref": "#/components/schemas/DetailedError"
|
|
2054
2268
|
},
|
|
2055
|
-
"description": "A list of detailed errors that occurred for this request
|
|
2269
|
+
"description": "A list of detailed errors that occurred for this request. Remove all personally identifiable information.",
|
|
2056
2270
|
"nullable": true
|
|
2057
2271
|
}
|
|
2058
2272
|
},
|
|
@@ -2080,7 +2294,7 @@
|
|
|
2080
2294
|
}
|
|
2081
2295
|
],
|
|
2082
2296
|
"additionalProperties": false,
|
|
2083
|
-
"description": "This provides any additional forms that go with the label. For example, customs forms. Exactly one of the
|
|
2297
|
+
"description": "This provides any additional forms that go with the label. For example, customs forms. Exactly one of the keys should be populated. Set href is the forms should be downloaded separately. Set data if the forms are returned directly in the response."
|
|
2084
2298
|
},
|
|
2085
2299
|
"FulfillmentPlanDetails": {
|
|
2086
2300
|
"type": "object",
|
|
@@ -2151,12 +2365,12 @@
|
|
|
2151
2365
|
"properties": {
|
|
2152
2366
|
"service_code": {
|
|
2153
2367
|
"type": "string",
|
|
2154
|
-
"description": "If present, a specific service is being requested, and that is the only rate required to fulfill the request
|
|
2368
|
+
"description": "If present, a specific service is being requested, and that is the only rate required to fulfill the request. The service code uniquely identifies a shipping service that you offer. Which service codes can be passed to you will be configured in ShipEngine.",
|
|
2155
2369
|
"nullable": true
|
|
2156
2370
|
},
|
|
2157
2371
|
"ship_datetime": {
|
|
2158
2372
|
"type": "string",
|
|
2159
|
-
"description": "When the package is expected to ship. Not guaranteed to be in the future. Formatted per the
|
|
2373
|
+
"description": "When the package is expected to ship. Not guaranteed to be in the future. Formatted per the https://tools.ietf.org/html/rfc3339 spec. Will always be in UTC.",
|
|
2160
2374
|
"format": "date-time"
|
|
2161
2375
|
},
|
|
2162
2376
|
"confirmation": {
|
|
@@ -2170,7 +2384,7 @@
|
|
|
2170
2384
|
},
|
|
2171
2385
|
"is_return_label": {
|
|
2172
2386
|
"type": "boolean",
|
|
2173
|
-
"description": "Whether this label is to return a previously shipped package. If the field is absent it should be
|
|
2387
|
+
"description": "Whether this label is to return a previously shipped package. If the field is absent it should be interpreted as false."
|
|
2174
2388
|
},
|
|
2175
2389
|
"packages": {
|
|
2176
2390
|
"type": "array",
|
|
@@ -2199,7 +2413,7 @@
|
|
|
2199
2413
|
},
|
|
2200
2414
|
"next_day": {
|
|
2201
2415
|
"type": "boolean",
|
|
2202
|
-
"description": "Whether this shipment is expected to use a next day service class. If the field is absent it
|
|
2416
|
+
"description": "Whether this shipment is expected to use a next day service class. If the field is absent it should be interpreted as false",
|
|
2203
2417
|
"nullable": true
|
|
2204
2418
|
},
|
|
2205
2419
|
"fulfillment_plan_details": {
|
|
@@ -2228,7 +2442,7 @@
|
|
|
2228
2442
|
"items": {
|
|
2229
2443
|
"$ref": "#/components/schemas/Rate"
|
|
2230
2444
|
},
|
|
2231
|
-
"description": "A list of rates for shipping services. If you use service codes there may be exactly one rate returned for
|
|
2445
|
+
"description": "A list of rates for shipping services. If you use service codes there may be exactly one rate returned for the requested service. If you use service codes there may be more than one rate to provide additional options. If you don't use service codes there may be one or more rates. If you don't provide real time rates you should return a single hard coded zero value rate.",
|
|
2232
2446
|
"nullable": true
|
|
2233
2447
|
}
|
|
2234
2448
|
},
|
|
@@ -2253,18 +2467,11 @@
|
|
|
2253
2467
|
"description": "A key value pair, allowing custom properties to be stored."
|
|
2254
2468
|
},
|
|
2255
2469
|
"InboundDataContentTypes": {
|
|
2256
|
-
"enum": [
|
|
2257
|
-
"tracking"
|
|
2258
|
-
],
|
|
2470
|
+
"enum": ["tracking"],
|
|
2259
2471
|
"type": "string"
|
|
2260
2472
|
},
|
|
2261
2473
|
"InsuranceProviders": {
|
|
2262
|
-
"enum": [
|
|
2263
|
-
"None",
|
|
2264
|
-
"ShipStation",
|
|
2265
|
-
"Carrier",
|
|
2266
|
-
"External"
|
|
2267
|
-
],
|
|
2474
|
+
"enum": ["None", "ShipStation", "Carrier", "External"],
|
|
2268
2475
|
"type": "string"
|
|
2269
2476
|
},
|
|
2270
2477
|
"InternalServerErrorResponse": {
|
|
@@ -2285,13 +2492,10 @@
|
|
|
2285
2492
|
}
|
|
2286
2493
|
],
|
|
2287
2494
|
"additionalProperties": false,
|
|
2288
|
-
"description": "This object provides the requested label that was just created. Exactly one of the keys should be populated
|
|
2495
|
+
"description": "This object provides the requested label that was just created. Exactly one of the keys should be populated. Set href if the label should be downloaded separately. Set data if the label is returned directly in the response."
|
|
2289
2496
|
},
|
|
2290
2497
|
"LabelLayouts": {
|
|
2291
|
-
"enum": [
|
|
2292
|
-
"4x6",
|
|
2293
|
-
"letter"
|
|
2294
|
-
],
|
|
2498
|
+
"enum": ["4x6", "letter"],
|
|
2295
2499
|
"type": "string"
|
|
2296
2500
|
},
|
|
2297
2501
|
"LabelMessage": {
|
|
@@ -2333,7 +2537,7 @@
|
|
|
2333
2537
|
"items": {
|
|
2334
2538
|
"$ref": "#/components/schemas/Document"
|
|
2335
2539
|
},
|
|
2336
|
-
"description": "Documents associated with this package, if documents are not specified at a package level, use the
|
|
2540
|
+
"description": "Documents associated with this package, if documents are not specified at a package level, use the Documents array at the CarrierApi.Common.Response.CreateLabelResponse level.",
|
|
2337
2541
|
"nullable": true
|
|
2338
2542
|
}
|
|
2339
2543
|
},
|
|
@@ -2627,7 +2831,7 @@
|
|
|
2627
2831
|
"properties": {
|
|
2628
2832
|
"service_code": {
|
|
2629
2833
|
"type": "string",
|
|
2630
|
-
"description": "The service code uniquely identifies a shipping service that you offer. Which service codes can be passed
|
|
2834
|
+
"description": "The service code uniquely identifies a shipping service that you offer. Which service codes can be passed to you will be configured in ShipEngine. If this field is missing, the rate will be discarded.",
|
|
2631
2835
|
"nullable": true
|
|
2632
2836
|
},
|
|
2633
2837
|
"package_type": {
|
|
@@ -2637,13 +2841,13 @@
|
|
|
2637
2841
|
},
|
|
2638
2842
|
"ship_datetime": {
|
|
2639
2843
|
"type": "string",
|
|
2640
|
-
"description": "When the package should ship for this rate to be valid. ** This differs from previous documentation
|
|
2844
|
+
"description": "When the package should ship for this rate to be valid. ** This differs from previous documentation Formatted per the https://tools.ietf.org/html/rfc3339 spec. Must be in UTC.",
|
|
2641
2845
|
"format": "date-time",
|
|
2642
2846
|
"nullable": true
|
|
2643
2847
|
},
|
|
2644
2848
|
"estimated_delivery_datetime": {
|
|
2645
2849
|
"type": "string",
|
|
2646
|
-
"description": "When the package(s) in this shipment are expected to arrive at their destination
|
|
2850
|
+
"description": "When the package(s) in this shipment are expected to arrive at their destination. Formatted per https://tools.ietf.org/html/rfc3339. Must be in UTC.",
|
|
2647
2851
|
"format": "date-time",
|
|
2648
2852
|
"nullable": true
|
|
2649
2853
|
},
|
|
@@ -2668,7 +2872,7 @@
|
|
|
2668
2872
|
"items": {
|
|
2669
2873
|
"type": "string"
|
|
2670
2874
|
},
|
|
2671
|
-
"description": "A list of discrete warnings. This should be data the end user needs to be aware of
|
|
2875
|
+
"description": "A list of discrete warnings. This should be data the end user needs to be aware of. These should not stop the request from succeeding, or a label being purchased with this rate.",
|
|
2672
2876
|
"nullable": true
|
|
2673
2877
|
},
|
|
2674
2878
|
"negotiated_rate": {
|
|
@@ -2718,8 +2922,8 @@
|
|
|
2718
2922
|
"properties": {
|
|
2719
2923
|
"registration_info": {
|
|
2720
2924
|
"type": "object",
|
|
2721
|
-
"additionalProperties": {
|
|
2722
|
-
"description": "This is a schemaless object used to contain any required fields for validating a users credentials or
|
|
2925
|
+
"additionalProperties": {},
|
|
2926
|
+
"description": "This is a schemaless object used to contain any required fields for validating a users credentials or registering a new account. These fields will be custom to the shipping service provider, and will be collected via a form and sent over as key value pairs.",
|
|
2723
2927
|
"nullable": true
|
|
2724
2928
|
}
|
|
2725
2929
|
},
|
|
@@ -2734,8 +2938,8 @@
|
|
|
2734
2938
|
},
|
|
2735
2939
|
"metadata": {
|
|
2736
2940
|
"type": "object",
|
|
2737
|
-
"additionalProperties": {
|
|
2738
|
-
"description": "This is an optional schemaless object that should be returned for persisted auth and user information
|
|
2941
|
+
"additionalProperties": {},
|
|
2942
|
+
"description": "This is an optional schemaless object that should be returned for persisted auth and user information. Anything returned under this key will be included in all future requests. For example, you may store additional static properties about the end user or their connection to the carrier. The maximum storage size for data under this key is 4KB.",
|
|
2739
2943
|
"nullable": true
|
|
2740
2944
|
}
|
|
2741
2945
|
},
|
|
@@ -2764,7 +2968,7 @@
|
|
|
2764
2968
|
"properties": {
|
|
2765
2969
|
"rma_number": {
|
|
2766
2970
|
"type": "string",
|
|
2767
|
-
"description": "A return merchandise authorization (RMA) is an associated number assigned to process the return, this
|
|
2971
|
+
"description": "A return merchandise authorization (RMA) is an associated number assigned to process the return, this number is often printed on the label, and used when the original shipper processes the inbound return.",
|
|
2768
2972
|
"nullable": true
|
|
2769
2973
|
}
|
|
2770
2974
|
},
|
|
@@ -2884,7 +3088,7 @@
|
|
|
2884
3088
|
}
|
|
2885
3089
|
],
|
|
2886
3090
|
"additionalProperties": false,
|
|
2887
|
-
"description": "The address that should be displayed as the return address, only if the shipping provider supports
|
|
3091
|
+
"description": "The address that should be displayed as the return address, only if the shipping provider supports this functionality."
|
|
2888
3092
|
},
|
|
2889
3093
|
"ShipmentIdentifier": {
|
|
2890
3094
|
"type": "object",
|
|
@@ -2974,7 +3178,7 @@
|
|
|
2974
3178
|
}
|
|
2975
3179
|
},
|
|
2976
3180
|
"additionalProperties": false,
|
|
2977
|
-
"description": "This model represents a shipment that has already been shipped, and contains
|
|
3181
|
+
"description": "This model represents a shipment that has already been shipped, and contains summary information about the shipment."
|
|
2978
3182
|
},
|
|
2979
3183
|
"ShipTo": {
|
|
2980
3184
|
"type": "object",
|
|
@@ -3015,29 +3219,12 @@
|
|
|
3015
3219
|
"description": "A list of standard error identifiers for errors the module can return"
|
|
3016
3220
|
},
|
|
3017
3221
|
"StandardizedStatusCodes": {
|
|
3018
|
-
"enum": [
|
|
3019
|
-
"UN",
|
|
3020
|
-
"AC",
|
|
3021
|
-
"IT",
|
|
3022
|
-
"DE",
|
|
3023
|
-
"EX",
|
|
3024
|
-
"AT",
|
|
3025
|
-
"NY"
|
|
3026
|
-
],
|
|
3222
|
+
"enum": ["UN", "AC", "IT", "DE", "EX", "AT", "NY"],
|
|
3027
3223
|
"type": "string",
|
|
3028
|
-
"description": "This represents the ShipEngine supported status codes for a shipment
|
|
3224
|
+
"description": "This represents the ShipEngine supported status codes for a shipment. UN - Unknown AC - Accepted IT - In Transit DE - Delivered EX - Exception AT - Delivery Attempted NY - Not Yet In System"
|
|
3029
3225
|
},
|
|
3030
3226
|
"TaxIdentificationType": {
|
|
3031
|
-
"enum": [
|
|
3032
|
-
"tin",
|
|
3033
|
-
"ein",
|
|
3034
|
-
"ssn",
|
|
3035
|
-
"vat",
|
|
3036
|
-
"eori",
|
|
3037
|
-
"ioss",
|
|
3038
|
-
"pan",
|
|
3039
|
-
"voec"
|
|
3040
|
-
],
|
|
3227
|
+
"enum": ["tin", "ein", "ssn", "vat", "eori", "ioss", "pan", "voec"],
|
|
3041
3228
|
"type": "string",
|
|
3042
3229
|
"description": "Specifies the supported tax identification types."
|
|
3043
3230
|
},
|
|
@@ -3337,10 +3524,7 @@
|
|
|
3337
3524
|
"description": "This model represents a response that the request was unauthorized to perform some action."
|
|
3338
3525
|
},
|
|
3339
3526
|
"UpdateMethods": {
|
|
3340
|
-
"enum": [
|
|
3341
|
-
"append",
|
|
3342
|
-
"replace"
|
|
3343
|
-
],
|
|
3527
|
+
"enum": ["append", "replace"],
|
|
3344
3528
|
"type": "string"
|
|
3345
3529
|
},
|
|
3346
3530
|
"ValidateInboundDataRequest": {
|
|
@@ -3369,7 +3553,7 @@
|
|
|
3369
3553
|
}
|
|
3370
3554
|
},
|
|
3371
3555
|
"additionalProperties": false,
|
|
3372
|
-
"description": "This model represents the payload that is sent to validate inbound data requests (e.g. webhooks) and determine
|
|
3556
|
+
"description": "This model represents the payload that is sent to validate inbound data requests (e.g. webhooks) and determine what type information is contained in the data."
|
|
3373
3557
|
},
|
|
3374
3558
|
"ValidateInboundDataResponse": {
|
|
3375
3559
|
"type": "object",
|
|
@@ -3469,7 +3653,7 @@
|
|
|
3469
3653
|
"items": {
|
|
3470
3654
|
"type": "string"
|
|
3471
3655
|
},
|
|
3472
|
-
"description": "A list of errors preventing this label from being voided. If no errors are returned the void is considered
|
|
3656
|
+
"description": "A list of errors preventing this label from being voided. If no errors are returned the void is considered successful. If any errors are returned the void is considered failed.",
|
|
3473
3657
|
"nullable": true
|
|
3474
3658
|
},
|
|
3475
3659
|
"billing_line_items": {
|
|
@@ -3510,12 +3694,7 @@
|
|
|
3510
3694
|
"description": "This model represents the weight of a package in its original unit, ounces, and grams."
|
|
3511
3695
|
},
|
|
3512
3696
|
"WeightUnit": {
|
|
3513
|
-
"enum": [
|
|
3514
|
-
"grams",
|
|
3515
|
-
"ounces",
|
|
3516
|
-
"kilograms",
|
|
3517
|
-
"pounds"
|
|
3518
|
-
],
|
|
3697
|
+
"enum": ["grams", "ounces", "kilograms", "pounds"],
|
|
3519
3698
|
"type": "string",
|
|
3520
3699
|
"description": "This model describes the possible units of weight."
|
|
3521
3700
|
}
|
|
@@ -3548,11 +3727,11 @@
|
|
|
3548
3727
|
},
|
|
3549
3728
|
{
|
|
3550
3729
|
"name": "Shipment Notifications",
|
|
3551
|
-
"description": "Shipment notifications were designed to notify a Pickup/Drop Off (PUDO) provider that a parcel is enroute to their location.
|
|
3730
|
+
"description": "Shipment notifications were designed to notify a Pickup/Drop Off (PUDO) provider that a parcel is enroute to their location. These endpoints allow for carrier agnostic PUDO locations to expect and plan for the arrival of the parcel."
|
|
3552
3731
|
},
|
|
3553
3732
|
{
|
|
3554
3733
|
"name": "Normalize Inbound Data",
|
|
3555
3734
|
"description": "Given inbound data, such as a webhook with tracking updates, return normalized information."
|
|
3556
3735
|
}
|
|
3557
3736
|
]
|
|
3558
|
-
}
|
|
3737
|
+
}
|