@gofynd/fdk-client-javascript 3.22.0 → 3.24.0
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/README.md +1 -1
- package/package.json +1 -1
- package/sdk/application/Cart/CartApplicationClient.d.ts +14 -14
- package/sdk/application/Cart/CartApplicationClient.js +124 -35
- package/sdk/application/Common/CommonApplicationClient.js +1 -1
- package/sdk/application/Logistic/LogisticApplicationClient.js +4 -2
- package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +17 -17
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +84 -13
- package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +121 -0
- package/sdk/platform/Cart/CartPlatformApplicationValidator.js +52 -0
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +7 -2
- package/sdk/platform/Catalog/CatalogPlatformModel.js +5 -2
- package/sdk/platform/Common/CommonPlatformClient.js +1 -1
- package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +96 -1
- package/sdk/platform/Configuration/ConfigurationPlatformModel.js +61 -0
- package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +0 -12
- package/sdk/platform/Content/ContentPlatformApplicationClient.js +0 -81
- package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +1 -10
- package/sdk/platform/Content/ContentPlatformApplicationValidator.js +0 -12
- package/sdk/platform/Order/OrderPlatformClient.d.ts +28 -0
- package/sdk/platform/Order/OrderPlatformClient.js +179 -3
- package/sdk/platform/Order/OrderPlatformModel.d.ts +155 -6
- package/sdk/platform/Order/OrderPlatformModel.js +105 -3
- package/sdk/platform/Order/OrderPlatformValidator.d.ts +33 -1
- package/sdk/platform/Order/OrderPlatformValidator.js +30 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +94 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +574 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +70 -1
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +81 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +14 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +85 -0
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +1382 -187
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +955 -155
- package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +10 -1
- package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +12 -0
- package/sdk/platform/User/UserPlatformModel.d.ts +14 -1
- package/sdk/platform/User/UserPlatformModel.js +16 -0
- package/sdk/public/Configuration/ConfigurationPublicClient.js +1 -1
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
const Joi = require("joi");
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* @typedef GenerateShipmentsAndCourierPartnerResult
|
|
5
|
+
* @property {string} [journey] - Describes the shipment's journey or route.
|
|
6
|
+
* @property {CourierPartnerToServiceability} [to_serviceability]
|
|
7
|
+
* @property {CourierPartnerShipments[]} [shipments] - List of shipments
|
|
8
|
+
* generated for the courier partner.
|
|
9
|
+
* @property {string} [payment_mode] - Specifies the mode of payment for the shipment.
|
|
10
|
+
* @property {string} [to_city] - The destination city for the shipment.
|
|
11
|
+
* @property {boolean} [is_cod_available] - Indicates if cash on delivery (COD)
|
|
12
|
+
* is available.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @typedef CourierPartnerDetails
|
|
17
|
+
* @property {LocationDetailsServiceability} to_serviceability
|
|
18
|
+
* @property {CourierPartnerShipments[]} shipments - A list of shipments for the
|
|
19
|
+
* courier partner request.
|
|
20
|
+
* @property {string} journey - The journey details for the courier partner request.
|
|
21
|
+
* @property {string} [payment_mode] - The payment mode for the courier partner request.
|
|
22
|
+
* @property {boolean} [skip_delivery_rules] - This flag decided whether to run
|
|
23
|
+
* delivery rules configuration for delivery rule fetch or not.
|
|
24
|
+
*/
|
|
25
|
+
|
|
3
26
|
/**
|
|
4
27
|
* @typedef PlatformShipmentsRequestSchema
|
|
5
28
|
* @property {string} journey - The journey or route for the shipment.
|
|
@@ -35,6 +58,7 @@ const Joi = require("joi");
|
|
|
35
58
|
* @property {boolean} [is_default] - Whether this is the default fulfillment option.
|
|
36
59
|
* @property {string} [type] - Type of fulfillment option.
|
|
37
60
|
* @property {string} [status] - Status of the fulfillment option.
|
|
61
|
+
* @property {FulfillmentOptionDefaultFor} [default_for]
|
|
38
62
|
* @property {BusinessUnit[]} [business_unit] - Name of the ordering-channel or
|
|
39
63
|
* business, e.g. storefront, storeos.
|
|
40
64
|
* @property {FulfillmentStores} [fulfillment_stores]
|
|
@@ -1303,6 +1327,306 @@ const Joi = require("joi");
|
|
|
1303
1327
|
* @property {string[]} [sort] - An array of strings specifying sorting preferences.
|
|
1304
1328
|
*/
|
|
1305
1329
|
|
|
1330
|
+
/**
|
|
1331
|
+
* @typedef StorePolygonServiceabilityRequestBody
|
|
1332
|
+
* @property {StorePolygonServiceabilityRequestData} data
|
|
1333
|
+
*/
|
|
1334
|
+
|
|
1335
|
+
/**
|
|
1336
|
+
* @typedef StorePolygonServiceabilityResult
|
|
1337
|
+
* @property {boolean} success - Indicates whether the polygon serviceability
|
|
1338
|
+
* operation was successful.
|
|
1339
|
+
* @property {StorePolygonServiceabilityStoreSummary[]} data - List of stores
|
|
1340
|
+
* for which polygon serviceability was successfully processed.
|
|
1341
|
+
* @property {StorePolygonServiceabilityError[]} errors - List of errors
|
|
1342
|
+
* encountered while processing individual entries, if any.
|
|
1343
|
+
* @property {string} identifier - Unique identifier for the polygon
|
|
1344
|
+
* serviceability request.
|
|
1345
|
+
* @property {StorePolygonServiceabilityError[]} failed_entries - List of
|
|
1346
|
+
* entries that failed during polygon serviceability processing.
|
|
1347
|
+
*/
|
|
1348
|
+
|
|
1349
|
+
/**
|
|
1350
|
+
* @typedef StorePolygonServiceabilityGetResult
|
|
1351
|
+
* @property {boolean} success - Indicates whether the polygon serviceability
|
|
1352
|
+
* fetch operation was successful.
|
|
1353
|
+
* @property {StorePolygonServiceabilityStore[]} data - List of stores with
|
|
1354
|
+
* their polygon-based serviceability details.
|
|
1355
|
+
* @property {StorePolygonServiceabilityError[]} errors - List of errors
|
|
1356
|
+
* encountered while processing individual entries, if any.
|
|
1357
|
+
* @property {string} identifier - Unique identifier for the polygon
|
|
1358
|
+
* serviceability request.
|
|
1359
|
+
* @property {StorePolygonServiceabilityError[]} failed_entries - List of
|
|
1360
|
+
* entries that failed during polygon serviceability processing.
|
|
1361
|
+
* @property {StorePolygonServiceabilityPagination} pagination - Pagination
|
|
1362
|
+
* details for the polygon serviceability result set.
|
|
1363
|
+
*/
|
|
1364
|
+
|
|
1365
|
+
/**
|
|
1366
|
+
* @typedef ZoneProductsBulkPatchDetails
|
|
1367
|
+
* @property {string} file_url - URL of the CSV file containing the zone
|
|
1368
|
+
* products bulk patch data.
|
|
1369
|
+
*/
|
|
1370
|
+
|
|
1371
|
+
/**
|
|
1372
|
+
* @typedef GetZoneProductsBulkPatchResult
|
|
1373
|
+
* @property {string} batch_id - A unique identifier for the performed batch operation.
|
|
1374
|
+
* @property {string} [file_path] - CDN path of the uploaded file.
|
|
1375
|
+
* @property {number} total - Total number of records in the batch.
|
|
1376
|
+
* @property {number} failed - Number of failed records in the batch.
|
|
1377
|
+
* @property {string} [error_file_url] - URL to the error file containing
|
|
1378
|
+
* details of failed records.
|
|
1379
|
+
* @property {string} action - The action performed during the bulk operation.
|
|
1380
|
+
* @property {string} updated_at - Timestamp when the batch was last updated.
|
|
1381
|
+
* @property {string} updated_by - User who last updated the batch.
|
|
1382
|
+
* @property {string} type - Type of the bulk operation.
|
|
1383
|
+
* @property {number} company_id - The unique identifier for the company.
|
|
1384
|
+
* @property {string} application_id - A unique identifier for the sales channel.
|
|
1385
|
+
* @property {string} stage - Current stage of the bulk operation.
|
|
1386
|
+
* @property {number} [partial] - Number of partially processed records.
|
|
1387
|
+
* @property {string} [result_file_url] - URL to the result file after
|
|
1388
|
+
* processing is complete.
|
|
1389
|
+
*/
|
|
1390
|
+
|
|
1391
|
+
/**
|
|
1392
|
+
* @typedef CourierPartnerToServiceability
|
|
1393
|
+
* @property {ServiceabilityLocation} [location]
|
|
1394
|
+
* @property {string} [pincode] - The pincode of the serviceability location.
|
|
1395
|
+
* @property {string} [sector] - The sector of the serviceability location.
|
|
1396
|
+
* @property {string} [country] - The country where the serviceability location
|
|
1397
|
+
* is situated.
|
|
1398
|
+
* @property {string} [country_iso_code] - The ISO code for the country.
|
|
1399
|
+
* @property {string} [state] - The state of the serviceability location.
|
|
1400
|
+
* @property {string} [city] - The city of the serviceability location.
|
|
1401
|
+
*/
|
|
1402
|
+
|
|
1403
|
+
/**
|
|
1404
|
+
* @typedef ServiceabilityLocation
|
|
1405
|
+
* @property {string} longitude - The longitude of the serviceability location.
|
|
1406
|
+
* @property {string} latitude - The latitude of the serviceability location.
|
|
1407
|
+
*/
|
|
1408
|
+
|
|
1409
|
+
/**
|
|
1410
|
+
* @typedef CourierPartnerShipments
|
|
1411
|
+
* @property {PromiseObject} [promise]
|
|
1412
|
+
* @property {boolean} [is_cod_available] - Indicates if cash on delivery (COD)
|
|
1413
|
+
* is available.
|
|
1414
|
+
* @property {boolean} [is_auto_assign] - Specifies if the shipment should be
|
|
1415
|
+
* automatically assigned.
|
|
1416
|
+
* @property {CourierPartnerShipmentsMeta} [meta]
|
|
1417
|
+
* @property {number} [volumetric_weight] - The volumetric weight of the shipment.
|
|
1418
|
+
* @property {number} [weight] - The actual weight of the shipment.
|
|
1419
|
+
* @property {ShipmentCourierPartnersResult[]} [courier_partners] - List of
|
|
1420
|
+
* courier partners associated with the shipment.
|
|
1421
|
+
* @property {number} fulfillment_id - The fulfillment Id.
|
|
1422
|
+
* @property {string} fulfillment_type - Fulfillment Type
|
|
1423
|
+
* @property {string[]} fulfillment_tags - Fulfillment level tags
|
|
1424
|
+
* @property {LocationDetailsServiceability} from_serviceability
|
|
1425
|
+
* @property {CourierPartnerShipmentsArticles[]} articles - A list of articles
|
|
1426
|
+
* in the courier partner shipment.
|
|
1427
|
+
* @property {boolean} is_mto - A boolean indicating if the courier partner
|
|
1428
|
+
* supports Made to Order service.
|
|
1429
|
+
* @property {string[]} ignore_scheme_ids - A list of scheme_id which we want to
|
|
1430
|
+
* ignore in courier_partner assignment.
|
|
1431
|
+
* @property {Object} [error] - Error Details
|
|
1432
|
+
*/
|
|
1433
|
+
|
|
1434
|
+
/**
|
|
1435
|
+
* @typedef PromiseObject
|
|
1436
|
+
* @property {string} [min] - The minimum promised delivery time in ISO 8601 format.
|
|
1437
|
+
* @property {string} [max] - The maximum promised delivery time in ISO 8601 format.
|
|
1438
|
+
* @property {PromiseData} customer_promise
|
|
1439
|
+
* @property {PromiseMeta} meta
|
|
1440
|
+
*/
|
|
1441
|
+
|
|
1442
|
+
/**
|
|
1443
|
+
* @typedef PromiseData
|
|
1444
|
+
* @property {string} [min] - The minimum promised delivery time in ISO 8601 format.
|
|
1445
|
+
* @property {string} [max] - The maximum promised delivery time in ISO 8601 format.
|
|
1446
|
+
*/
|
|
1447
|
+
|
|
1448
|
+
/**
|
|
1449
|
+
* @typedef PromiseMeta
|
|
1450
|
+
* @property {PromiseData} [seller_promise]
|
|
1451
|
+
* @property {CourierPartnerPromiseData} [courier_partner_promise]
|
|
1452
|
+
* @property {PromiseData} [customer_initial_promise]
|
|
1453
|
+
*/
|
|
1454
|
+
|
|
1455
|
+
/**
|
|
1456
|
+
* @typedef CourierPartnerPromiseData
|
|
1457
|
+
* @property {string} [min] - The minimum promised delivery time in ISO 8601 format.
|
|
1458
|
+
* @property {string} [max] - The maximum promised delivery time in ISO 8601 format.
|
|
1459
|
+
* @property {DeliveryTat} [attributes]
|
|
1460
|
+
*/
|
|
1461
|
+
|
|
1462
|
+
/**
|
|
1463
|
+
* @typedef DeliveryTat
|
|
1464
|
+
* @property {DeliveryTatSchema} [tat]
|
|
1465
|
+
*/
|
|
1466
|
+
|
|
1467
|
+
/**
|
|
1468
|
+
* @typedef DeliveryTatSchema
|
|
1469
|
+
* @property {number} [min] - The minimum tat in integer.
|
|
1470
|
+
* @property {number} [max] - The maximum tat in integer.
|
|
1471
|
+
*/
|
|
1472
|
+
|
|
1473
|
+
/**
|
|
1474
|
+
* @typedef CourierPartnerShipmentsMeta
|
|
1475
|
+
* @property {number} [shipment_cost] - The total cost associated with the
|
|
1476
|
+
* shipment, expressed as a floating-point number. This value includes all
|
|
1477
|
+
* applicable charges, such as transportation, handling, and any additional fees.
|
|
1478
|
+
*/
|
|
1479
|
+
|
|
1480
|
+
/**
|
|
1481
|
+
* @typedef ShipmentCourierPartnersResult
|
|
1482
|
+
* @property {string} extension_id - The Id of the courier partner.
|
|
1483
|
+
* @property {string} scheme_id - The scheme Id of the courier partner.
|
|
1484
|
+
* @property {AreaCode} area_code
|
|
1485
|
+
* @property {TAT} tat
|
|
1486
|
+
* @property {string} display_name - The display name of the courier partner.
|
|
1487
|
+
* @property {boolean} is_qc_enabled - A boolean indicating quality control by
|
|
1488
|
+
* the courier partner.
|
|
1489
|
+
* @property {boolean} is_self_ship - A boolean indicating it is self delivery DP support.
|
|
1490
|
+
* @property {boolean} [is_own_account] - Specifies if the courier partner
|
|
1491
|
+
* operates on its own account.
|
|
1492
|
+
* @property {number} [ndr_attempts] - The number of non-delivery report (NDR) attempts.
|
|
1493
|
+
* @property {string} [forward_pickup_cutoff] - Cutoff time for forward pickup (nullable).
|
|
1494
|
+
* @property {string} [reverse_pickup_cutoff] - Cutoff time for reverse pickup (nullable).
|
|
1495
|
+
* @property {number} [qc_shipment_item_quantity] - Quantity of items under
|
|
1496
|
+
* quality control (nullable).
|
|
1497
|
+
* @property {number} [non_qc_shipment_item_quantity] - Quantity of items not
|
|
1498
|
+
* under quality control (nullable).
|
|
1499
|
+
* @property {boolean} [dangerous_goods] - Specifies if the courier partner
|
|
1500
|
+
* operates on dangerous goods.
|
|
1501
|
+
* @property {boolean} [restricted_goods] - Specifies if the courier partner
|
|
1502
|
+
* operates on restricted goods.
|
|
1503
|
+
* @property {boolean} [fragile_goods] - Specifies if the courier partner
|
|
1504
|
+
* operates on fragile goods.
|
|
1505
|
+
* @property {boolean} [cold_storage_goods] - Specifies if the courier partner
|
|
1506
|
+
* operates on cold storage goods.
|
|
1507
|
+
* @property {string} [delivery_type] - Specifies type of courier partner.
|
|
1508
|
+
* @property {boolean} [is_cod] - Specifies if the courier partner operates on
|
|
1509
|
+
* cash on delivery orders.
|
|
1510
|
+
* @property {string} [transport_type] - Mode of transport associated with the
|
|
1511
|
+
* courier partner scheme.
|
|
1512
|
+
*/
|
|
1513
|
+
|
|
1514
|
+
/**
|
|
1515
|
+
* @typedef AreaCode
|
|
1516
|
+
* @property {string} [source] - The starting area code.
|
|
1517
|
+
* @property {string} [destination] - The ending area code.
|
|
1518
|
+
*/
|
|
1519
|
+
|
|
1520
|
+
/**
|
|
1521
|
+
* @typedef TAT
|
|
1522
|
+
* @property {number} [min] - The minimum tat in integer.
|
|
1523
|
+
* @property {number} [max] - The maximum tat in integer.
|
|
1524
|
+
*/
|
|
1525
|
+
|
|
1526
|
+
/**
|
|
1527
|
+
* @typedef LocationDetailsServiceability
|
|
1528
|
+
* @property {string} [pincode] - The pincode of the serviceability location.
|
|
1529
|
+
* @property {string} [sector] - The sector of the serviceability location.
|
|
1530
|
+
* @property {string} [state] - The state of the serviceability location.
|
|
1531
|
+
* @property {string} country - The country of the serviceability location.
|
|
1532
|
+
* @property {string} [city] - The city of the serviceability location.
|
|
1533
|
+
* @property {string} country_iso_code - The ISO code of the country.
|
|
1534
|
+
* @property {ServiceabilityLocation} [location]
|
|
1535
|
+
*/
|
|
1536
|
+
|
|
1537
|
+
/**
|
|
1538
|
+
* @typedef CourierPartnerShipmentsArticles
|
|
1539
|
+
* @property {string} [id] - A string serving as the unique identifier.
|
|
1540
|
+
* @property {Object} [delivery_slots] - Represents the delivery date and time
|
|
1541
|
+
* slots available for an article.
|
|
1542
|
+
* @property {Error} [error]
|
|
1543
|
+
* @property {number} [fulfillment_id] - The fulfillment Id.
|
|
1544
|
+
* @property {string[]} [fulfillment_tags] - Fulfillment level tags
|
|
1545
|
+
* @property {string} [fulfillment_type] - Fulfillment Type
|
|
1546
|
+
* @property {string} [group_id] - The group Id of the article.
|
|
1547
|
+
* @property {boolean} [is_gift] - A boolean indicating if the courier partner
|
|
1548
|
+
* supports gift shipments.
|
|
1549
|
+
* @property {boolean} [is_mto] - Flag indicating whether the shipment is MTO
|
|
1550
|
+
* (Make to Order).
|
|
1551
|
+
* @property {boolean} [is_set] - A boolean indicating whether the article is a set.
|
|
1552
|
+
* @property {number} [manufacturing_time] - The manufacturing time of the article.
|
|
1553
|
+
* @property {string} [manufacturing_time_unit] - The unit of measurement for
|
|
1554
|
+
* manufacturing time.
|
|
1555
|
+
* @property {number} [mto_quantity] - The Made to Order quantity of the article.
|
|
1556
|
+
* @property {string} [sla] - Service level agreement (SLA) for the article,
|
|
1557
|
+
* represented as a date-time
|
|
1558
|
+
* @property {number} [price_marked] - Marked price before discounts.
|
|
1559
|
+
* @property {CourierPartnerArticlesPromise} [promise]
|
|
1560
|
+
* @property {Object} [set] - Additional properties related to sets.
|
|
1561
|
+
* @property {CourierPartnerArticlesReturnReasons} [return_reason]
|
|
1562
|
+
* @property {number} [set_quantity] - It represents the number of set of this article
|
|
1563
|
+
* @property {number} quantity - The quantity of the shipment article.
|
|
1564
|
+
* @property {ArticleWeight} weight
|
|
1565
|
+
* @property {ArticleAttributes} [attributes]
|
|
1566
|
+
* @property {number} category_id - The category Id of the article.
|
|
1567
|
+
* @property {ArticleDimension} dimension
|
|
1568
|
+
* @property {number} brand_id - The brand Id of the article.
|
|
1569
|
+
* @property {number} item_id - The Item Id of the article.
|
|
1570
|
+
* @property {string} size - The size of the article.
|
|
1571
|
+
* @property {string[]} tags - Tags assigned to Item
|
|
1572
|
+
* @property {number} department_id - Department of the item
|
|
1573
|
+
* @property {number} price - Final Price of the article after discounts
|
|
1574
|
+
*/
|
|
1575
|
+
|
|
1576
|
+
/**
|
|
1577
|
+
* @typedef CourierPartnerArticlesPromise
|
|
1578
|
+
* @property {string} [min] - The minimum delivery promise date.
|
|
1579
|
+
* @property {string} [max] - The maximum delivery promise date.
|
|
1580
|
+
*/
|
|
1581
|
+
|
|
1582
|
+
/**
|
|
1583
|
+
* @typedef CourierPartnerArticlesReturnReasons
|
|
1584
|
+
* @property {number} [id] - The unique identifier for the return reason entry.
|
|
1585
|
+
* @property {CourierPartnerArticlesReturnReasonsMeta} [meta]
|
|
1586
|
+
* @property {string[]} [qc_type] - A list of quality check types that apply to
|
|
1587
|
+
* the return reasons.
|
|
1588
|
+
* @property {string[]} [reasons] - A list of return reasons for the article.
|
|
1589
|
+
* @property {boolean} [is_active] - A boolean indicating whether the return
|
|
1590
|
+
* reason is currently active.
|
|
1591
|
+
* @property {string} [display_name] - The display name for the return reason.
|
|
1592
|
+
* @property {string[]} [question_set] - A list of questions associated with the
|
|
1593
|
+
* return reason.
|
|
1594
|
+
* @property {string} [reason_other_text] - Any additional text for other return reasons.
|
|
1595
|
+
*/
|
|
1596
|
+
|
|
1597
|
+
/**
|
|
1598
|
+
* @typedef CourierPartnerArticlesReturnReasonsMeta
|
|
1599
|
+
* @property {boolean} [show_text_area] - A boolean indicating whether a text
|
|
1600
|
+
* area should be displayed for additional input regarding the return reason.
|
|
1601
|
+
*/
|
|
1602
|
+
|
|
1603
|
+
/**
|
|
1604
|
+
* @typedef ArticleWeight
|
|
1605
|
+
* @property {number} shipping - The weight(grams) of the article for shipping
|
|
1606
|
+
* purposes, typically measured in a specified unit.
|
|
1607
|
+
* @property {string} unit - The unit of measurement used for the weight value.
|
|
1608
|
+
* @property {boolean} is_default - A boolean indicating whether this weight is
|
|
1609
|
+
* the default weight for the article.
|
|
1610
|
+
*/
|
|
1611
|
+
|
|
1612
|
+
/**
|
|
1613
|
+
* @typedef ArticleAttributes
|
|
1614
|
+
* @property {string} battery_operated - Yes/no indicating whether the article
|
|
1615
|
+
* is powered by batteries.
|
|
1616
|
+
* @property {string} is_flammable - Yes/no indicating whether the article is
|
|
1617
|
+
* considered flammable or poses a fire hazard.
|
|
1618
|
+
*/
|
|
1619
|
+
|
|
1620
|
+
/**
|
|
1621
|
+
* @typedef ArticleDimension
|
|
1622
|
+
* @property {number} height - The height of the article.
|
|
1623
|
+
* @property {boolean} is_default - A boolean indicating whether this dimension
|
|
1624
|
+
* is the default dimension.
|
|
1625
|
+
* @property {number} length - The length of the article.
|
|
1626
|
+
* @property {string} unit - The unit of measurement used for the dimensions.
|
|
1627
|
+
* @property {number} width - The width of the article.
|
|
1628
|
+
*/
|
|
1629
|
+
|
|
1306
1630
|
/**
|
|
1307
1631
|
* @typedef PlatformLocationArticles
|
|
1308
1632
|
* @property {PlatformLocationArticle[]} articles - List of articles for this
|
|
@@ -1519,15 +1843,11 @@ const Joi = require("joi");
|
|
|
1519
1843
|
*/
|
|
1520
1844
|
|
|
1521
1845
|
/**
|
|
1522
|
-
* @typedef
|
|
1523
|
-
* @property {
|
|
1524
|
-
*
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
/**
|
|
1528
|
-
* @typedef TAT
|
|
1529
|
-
* @property {number} [min] - The minimum tat in integer.
|
|
1530
|
-
* @property {number} [max] - The maximum tat in integer.
|
|
1846
|
+
* @typedef FulfillmentOptionDefaultFor
|
|
1847
|
+
* @property {boolean} [storefront] - If set to true, this fulfillment option
|
|
1848
|
+
* will be default for storefront.
|
|
1849
|
+
* @property {boolean} [storeos] - If set to true, this fulfillment option will
|
|
1850
|
+
* be default for storeos.
|
|
1531
1851
|
*/
|
|
1532
1852
|
|
|
1533
1853
|
/**
|
|
@@ -1780,6 +2100,9 @@ const Joi = require("joi");
|
|
|
1780
2100
|
* zone, whether it's a list of categories, departments, tags, or item_ids.
|
|
1781
2101
|
* @property {Object[]} values - List of values representing the products or the
|
|
1782
2102
|
* type of products selected for the delivery zone.
|
|
2103
|
+
* @property {string} [action] - The action to perform on the product values -
|
|
2104
|
+
* 'add' to add values to the existing list, 'remove' to remove values from
|
|
2105
|
+
* the existing list.
|
|
1783
2106
|
*/
|
|
1784
2107
|
|
|
1785
2108
|
/**
|
|
@@ -2182,33 +2505,6 @@ const Joi = require("joi");
|
|
|
2182
2505
|
* @property {ArticleReturnReason} [return_reason]
|
|
2183
2506
|
*/
|
|
2184
2507
|
|
|
2185
|
-
/**
|
|
2186
|
-
* @typedef ArticleWeight
|
|
2187
|
-
* @property {number} shipping - The weight(grams) of the article for shipping
|
|
2188
|
-
* purposes, typically measured in a specified unit.
|
|
2189
|
-
* @property {string} unit - The unit of measurement used for the weight value.
|
|
2190
|
-
* @property {boolean} is_default - A boolean indicating whether this weight is
|
|
2191
|
-
* the default weight for the article.
|
|
2192
|
-
*/
|
|
2193
|
-
|
|
2194
|
-
/**
|
|
2195
|
-
* @typedef ArticleAttributes
|
|
2196
|
-
* @property {string} battery_operated - Yes/no indicating whether the article
|
|
2197
|
-
* is powered by batteries.
|
|
2198
|
-
* @property {string} is_flammable - Yes/no indicating whether the article is
|
|
2199
|
-
* considered flammable or poses a fire hazard.
|
|
2200
|
-
*/
|
|
2201
|
-
|
|
2202
|
-
/**
|
|
2203
|
-
* @typedef ArticleDimension
|
|
2204
|
-
* @property {number} height - The height of the article.
|
|
2205
|
-
* @property {boolean} is_default - A boolean indicating whether this dimension
|
|
2206
|
-
* is the default dimension.
|
|
2207
|
-
* @property {number} length - The length of the article.
|
|
2208
|
-
* @property {string} unit - The unit of measurement used for the dimensions.
|
|
2209
|
-
* @property {number} width - The width of the article.
|
|
2210
|
-
*/
|
|
2211
|
-
|
|
2212
2508
|
/**
|
|
2213
2509
|
* @typedef ArticleSet
|
|
2214
2510
|
* @property {string} [name] - The name of the article set.
|
|
@@ -2481,23 +2777,6 @@ const Joi = require("joi");
|
|
|
2481
2777
|
* specify the desired approach or criteria for selecting optimal locations.
|
|
2482
2778
|
*/
|
|
2483
2779
|
|
|
2484
|
-
/**
|
|
2485
|
-
* @typedef LocationDetailsServiceability
|
|
2486
|
-
* @property {string} [pincode] - The pincode of the serviceability location.
|
|
2487
|
-
* @property {string} [sector] - The sector of the serviceability location.
|
|
2488
|
-
* @property {string} [state] - The state of the serviceability location.
|
|
2489
|
-
* @property {string} country - The country of the serviceability location.
|
|
2490
|
-
* @property {string} [city] - The city of the serviceability location.
|
|
2491
|
-
* @property {string} country_iso_code - The ISO code of the country.
|
|
2492
|
-
* @property {ServiceabilityLocation} [location]
|
|
2493
|
-
*/
|
|
2494
|
-
|
|
2495
|
-
/**
|
|
2496
|
-
* @typedef ServiceabilityLocation
|
|
2497
|
-
* @property {string} longitude - The longitude of the serviceability location.
|
|
2498
|
-
* @property {string} latitude - The latitude of the serviceability location.
|
|
2499
|
-
*/
|
|
2500
|
-
|
|
2501
2780
|
/**
|
|
2502
2781
|
* @typedef OptimalLocationsArticles
|
|
2503
2782
|
* @property {number} item_id - Unique identifier for the item.
|
|
@@ -2798,50 +3077,181 @@ const Joi = require("joi");
|
|
|
2798
3077
|
* encountered errors during the batch processing.
|
|
2799
3078
|
*/
|
|
2800
3079
|
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
location_articles: Joi.array()
|
|
2807
|
-
.items(ServiceabilityPlatformModel.PlatformLocationArticles())
|
|
2808
|
-
.required(),
|
|
2809
|
-
to_serviceability: ServiceabilityPlatformModel.PlatformShipmentsToServiceability().required(),
|
|
2810
|
-
payment_mode: Joi.string().allow("").allow(null),
|
|
2811
|
-
});
|
|
2812
|
-
}
|
|
3080
|
+
/**
|
|
3081
|
+
* @typedef StorePolygonServiceabilityRequestData
|
|
3082
|
+
* @property {StorePolygonServiceabilityStore[]} stores - List of stores for
|
|
3083
|
+
* which polygon-based serviceability is being configured.
|
|
3084
|
+
*/
|
|
2813
3085
|
|
|
2814
|
-
|
|
2815
|
-
|
|
2816
|
-
|
|
2817
|
-
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
3086
|
+
/**
|
|
3087
|
+
* @typedef StorePolygonServiceabilityStore
|
|
3088
|
+
* @property {string} store_code - Unique identifier of the store.
|
|
3089
|
+
* @property {string} name - Name of the store.
|
|
3090
|
+
* @property {string} address - Address of the store.
|
|
3091
|
+
* @property {string} area_code - Area code associated with the store.
|
|
3092
|
+
* @property {boolean} is_active - Indicates whether the store is active.
|
|
3093
|
+
* @property {Object} [meta] - Additional metadata associated with the store.
|
|
3094
|
+
* @property {StorePolygonServiceabilityStoreCoordinates} coordinates
|
|
3095
|
+
* @property {StorePolygonServiceabilityConfig[]} serviceabilities - List of
|
|
3096
|
+
* polygon-based serviceability configurations for the store.
|
|
3097
|
+
* @property {string} [created_at] - Timestamp when the store entry was created.
|
|
3098
|
+
* @property {string} [updated_at] - Timestamp when the store entry was last updated.
|
|
3099
|
+
*/
|
|
2823
3100
|
|
|
2824
|
-
|
|
2825
|
-
|
|
2826
|
-
|
|
2827
|
-
|
|
2828
|
-
|
|
2829
|
-
value: Joi.string().allow("").required(),
|
|
2830
|
-
});
|
|
2831
|
-
}
|
|
3101
|
+
/**
|
|
3102
|
+
* @typedef StorePolygonServiceabilityStoreCoordinates
|
|
3103
|
+
* @property {number} lng - Longitude of the store.
|
|
3104
|
+
* @property {number} lat - Latitude of the store.
|
|
3105
|
+
*/
|
|
2832
3106
|
|
|
2833
|
-
|
|
2834
|
-
|
|
2835
|
-
|
|
2836
|
-
|
|
2837
|
-
|
|
2838
|
-
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
|
|
3107
|
+
/**
|
|
3108
|
+
* @typedef StorePolygonServiceabilityConfig
|
|
3109
|
+
* @property {string} name - Name of the polygon-based serviceability configuration.
|
|
3110
|
+
* @property {string} serviceability_type - Type of serviceability
|
|
3111
|
+
* configuration. Currently supports quick_commerce.
|
|
3112
|
+
* @property {StorePolygonServiceabilityPolygon} polygon
|
|
3113
|
+
* @property {Object} [meta] - Additional metadata associated with the
|
|
3114
|
+
* serviceability configuration.
|
|
3115
|
+
* @property {boolean} is_active - Indicates whether the serviceability
|
|
3116
|
+
* configuration is active.
|
|
3117
|
+
* @property {string} [uid] - Unique identifier of the serviceability configuration.
|
|
3118
|
+
* @property {string} [created_at] - Timestamp when the serviceability
|
|
3119
|
+
* configuration was created.
|
|
3120
|
+
* @property {string} [updated_at] - Timestamp when the serviceability
|
|
3121
|
+
* configuration was last updated.
|
|
3122
|
+
*/
|
|
3123
|
+
|
|
3124
|
+
/**
|
|
3125
|
+
* @typedef StorePolygonServiceabilityPolygon
|
|
3126
|
+
* @property {string} type - Type of the GeoJSON collection, typically FeatureCollection.
|
|
3127
|
+
* @property {StorePolygonServiceabilityFeature[]} features - List of GeoJSON
|
|
3128
|
+
* features defining the polygon.
|
|
3129
|
+
* @property {StorePolygonServiceabilityAttributes} [attributes]
|
|
3130
|
+
*/
|
|
3131
|
+
|
|
3132
|
+
/**
|
|
3133
|
+
* @typedef StorePolygonServiceabilityFeature
|
|
3134
|
+
* @property {string} type - Type of the feature, typically Feature.
|
|
3135
|
+
* @property {Object} [properties] - Additional properties for the feature.
|
|
3136
|
+
* @property {StorePolygonServiceabilityGeometry} geometry
|
|
3137
|
+
*/
|
|
3138
|
+
|
|
3139
|
+
/**
|
|
3140
|
+
* @typedef StorePolygonServiceabilityGeometry
|
|
3141
|
+
* @property {string} [type] - Type of geometry, typically Polygon.
|
|
3142
|
+
* @property {number[][][]} [coordinates] - List of polygon coordinates as
|
|
3143
|
+
* longitude and latitude pairs.
|
|
3144
|
+
*/
|
|
3145
|
+
|
|
3146
|
+
/**
|
|
3147
|
+
* @typedef StorePolygonServiceabilityAttributes
|
|
3148
|
+
* @property {string} [contour_type] - Type of contour used for the polygon,
|
|
3149
|
+
* either distance-based or manually defined.
|
|
3150
|
+
* @property {number} [travel_distance] - Travel distance used to derive the
|
|
3151
|
+
* polygon contour, typically in meters.
|
|
3152
|
+
* @property {StorePolygonServiceabilityReferenceCoordinates} [reference_coordinates]
|
|
3153
|
+
*/
|
|
3154
|
+
|
|
3155
|
+
/**
|
|
3156
|
+
* @typedef StorePolygonServiceabilityReferenceCoordinates
|
|
3157
|
+
* @property {number} lng - Longitude of the reference point.
|
|
3158
|
+
* @property {number} lat - Latitude of the reference point.
|
|
3159
|
+
*/
|
|
3160
|
+
|
|
3161
|
+
/**
|
|
3162
|
+
* @typedef StorePolygonServiceabilityStoreSummary
|
|
3163
|
+
* @property {string} store_code - Unique identifier of the store.
|
|
3164
|
+
* @property {string} [name] - Name of the store.
|
|
3165
|
+
*/
|
|
3166
|
+
|
|
3167
|
+
/**
|
|
3168
|
+
* @typedef StorePolygonServiceabilityError
|
|
3169
|
+
* @property {string} store_code - Store code identifier.
|
|
3170
|
+
* @property {string} message - Detailed error message describing the validation
|
|
3171
|
+
* failure for a specific record.
|
|
3172
|
+
* @property {string} [error_code] - Error code for the failure.
|
|
3173
|
+
*/
|
|
3174
|
+
|
|
3175
|
+
/**
|
|
3176
|
+
* @typedef StorePolygonServiceabilityPagination
|
|
3177
|
+
* @property {number} page_size - Number of records per page.
|
|
3178
|
+
* @property {number} page_number - The current page number.
|
|
3179
|
+
* @property {boolean} has_next - Indicates whether more pages are available.
|
|
3180
|
+
* @property {number} total_records - Total number of records matching the criteria.
|
|
3181
|
+
*/
|
|
3182
|
+
|
|
3183
|
+
class ServiceabilityPlatformModel {
|
|
3184
|
+
/** @returns {GenerateShipmentsAndCourierPartnerResult} */
|
|
3185
|
+
static GenerateShipmentsAndCourierPartnerResult() {
|
|
3186
|
+
return Joi.object({
|
|
3187
|
+
journey: Joi.string().allow(""),
|
|
3188
|
+
to_serviceability: ServiceabilityPlatformModel.CourierPartnerToServiceability(),
|
|
3189
|
+
shipments: Joi.array().items(
|
|
3190
|
+
ServiceabilityPlatformModel.CourierPartnerShipments()
|
|
3191
|
+
),
|
|
3192
|
+
payment_mode: Joi.string().allow(""),
|
|
3193
|
+
to_city: Joi.string().allow(""),
|
|
3194
|
+
is_cod_available: Joi.boolean(),
|
|
3195
|
+
});
|
|
3196
|
+
}
|
|
3197
|
+
|
|
3198
|
+
/** @returns {CourierPartnerDetails} */
|
|
3199
|
+
static CourierPartnerDetails() {
|
|
3200
|
+
return Joi.object({
|
|
3201
|
+
to_serviceability: ServiceabilityPlatformModel.LocationDetailsServiceability().required(),
|
|
3202
|
+
shipments: Joi.array()
|
|
3203
|
+
.items(ServiceabilityPlatformModel.CourierPartnerShipments())
|
|
3204
|
+
.required(),
|
|
3205
|
+
journey: Joi.string().allow("").required(),
|
|
3206
|
+
payment_mode: Joi.string().allow(""),
|
|
3207
|
+
skip_delivery_rules: Joi.boolean(),
|
|
3208
|
+
});
|
|
3209
|
+
}
|
|
3210
|
+
|
|
3211
|
+
/** @returns {PlatformShipmentsRequestSchema} */
|
|
3212
|
+
static PlatformShipmentsRequestSchema() {
|
|
3213
|
+
return Joi.object({
|
|
3214
|
+
journey: Joi.string().allow("").required(),
|
|
3215
|
+
location_articles: Joi.array()
|
|
3216
|
+
.items(ServiceabilityPlatformModel.PlatformLocationArticles())
|
|
3217
|
+
.required(),
|
|
3218
|
+
to_serviceability: ServiceabilityPlatformModel.PlatformShipmentsToServiceability().required(),
|
|
3219
|
+
payment_mode: Joi.string().allow("").allow(null),
|
|
3220
|
+
});
|
|
3221
|
+
}
|
|
3222
|
+
|
|
3223
|
+
/** @returns {PlatformShipmentsResponseSchema} */
|
|
3224
|
+
static PlatformShipmentsResponseSchema() {
|
|
3225
|
+
return Joi.object({
|
|
3226
|
+
is_cod_available: Joi.boolean().required(),
|
|
3227
|
+
shipments: Joi.array()
|
|
3228
|
+
.items(ServiceabilityPlatformModel.PlatformShipmentsSchema())
|
|
3229
|
+
.required(),
|
|
3230
|
+
});
|
|
3231
|
+
}
|
|
3232
|
+
|
|
3233
|
+
/** @returns {ShipmentsErrorResult} */
|
|
3234
|
+
static ShipmentsErrorResult() {
|
|
3235
|
+
return Joi.object({
|
|
3236
|
+
message: Joi.string().allow("").allow(null),
|
|
3237
|
+
type: Joi.string().allow("").required(),
|
|
3238
|
+
value: Joi.string().allow("").required(),
|
|
3239
|
+
});
|
|
3240
|
+
}
|
|
3241
|
+
|
|
3242
|
+
/** @returns {FulfillmentOption} */
|
|
3243
|
+
static FulfillmentOption() {
|
|
3244
|
+
return Joi.object({
|
|
3245
|
+
name: Joi.string().allow(""),
|
|
3246
|
+
slug: Joi.string().allow(""),
|
|
3247
|
+
company_id: Joi.number(),
|
|
3248
|
+
application_id: Joi.string().allow(""),
|
|
3249
|
+
description: Joi.string().allow(""),
|
|
3250
|
+
is_default: Joi.boolean(),
|
|
3251
|
+
type: Joi.string().allow(""),
|
|
3252
|
+
status: Joi.string().allow(""),
|
|
3253
|
+
default_for: ServiceabilityPlatformModel.FulfillmentOptionDefaultFor(),
|
|
3254
|
+
business_unit: Joi.array().items(
|
|
2845
3255
|
ServiceabilityPlatformModel.BusinessUnit()
|
|
2846
3256
|
),
|
|
2847
3257
|
fulfillment_stores: ServiceabilityPlatformModel.FulfillmentStores(),
|
|
@@ -4193,6 +4603,329 @@ class ServiceabilityPlatformModel {
|
|
|
4193
4603
|
});
|
|
4194
4604
|
}
|
|
4195
4605
|
|
|
4606
|
+
/** @returns {StorePolygonServiceabilityRequestBody} */
|
|
4607
|
+
static StorePolygonServiceabilityRequestBody() {
|
|
4608
|
+
return Joi.object({
|
|
4609
|
+
data: ServiceabilityPlatformModel.StorePolygonServiceabilityRequestData().required(),
|
|
4610
|
+
});
|
|
4611
|
+
}
|
|
4612
|
+
|
|
4613
|
+
/** @returns {StorePolygonServiceabilityResult} */
|
|
4614
|
+
static StorePolygonServiceabilityResult() {
|
|
4615
|
+
return Joi.object({
|
|
4616
|
+
success: Joi.boolean().required(),
|
|
4617
|
+
data: Joi.array()
|
|
4618
|
+
.items(
|
|
4619
|
+
ServiceabilityPlatformModel.StorePolygonServiceabilityStoreSummary()
|
|
4620
|
+
)
|
|
4621
|
+
.required(),
|
|
4622
|
+
errors: Joi.array()
|
|
4623
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityError())
|
|
4624
|
+
.required(),
|
|
4625
|
+
identifier: Joi.string().allow("").required(),
|
|
4626
|
+
failed_entries: Joi.array()
|
|
4627
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityError())
|
|
4628
|
+
.required(),
|
|
4629
|
+
});
|
|
4630
|
+
}
|
|
4631
|
+
|
|
4632
|
+
/** @returns {StorePolygonServiceabilityGetResult} */
|
|
4633
|
+
static StorePolygonServiceabilityGetResult() {
|
|
4634
|
+
return Joi.object({
|
|
4635
|
+
success: Joi.boolean().required(),
|
|
4636
|
+
data: Joi.array()
|
|
4637
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityStore())
|
|
4638
|
+
.required(),
|
|
4639
|
+
errors: Joi.array()
|
|
4640
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityError())
|
|
4641
|
+
.required(),
|
|
4642
|
+
identifier: Joi.string().allow("").required(),
|
|
4643
|
+
failed_entries: Joi.array()
|
|
4644
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityError())
|
|
4645
|
+
.required(),
|
|
4646
|
+
pagination: ServiceabilityPlatformModel.StorePolygonServiceabilityPagination().required(),
|
|
4647
|
+
});
|
|
4648
|
+
}
|
|
4649
|
+
|
|
4650
|
+
/** @returns {ZoneProductsBulkPatchDetails} */
|
|
4651
|
+
static ZoneProductsBulkPatchDetails() {
|
|
4652
|
+
return Joi.object({
|
|
4653
|
+
file_url: Joi.string().allow("").required(),
|
|
4654
|
+
});
|
|
4655
|
+
}
|
|
4656
|
+
|
|
4657
|
+
/** @returns {GetZoneProductsBulkPatchResult} */
|
|
4658
|
+
static GetZoneProductsBulkPatchResult() {
|
|
4659
|
+
return Joi.object({
|
|
4660
|
+
batch_id: Joi.string().allow("").required(),
|
|
4661
|
+
file_path: Joi.string().allow("").allow(null),
|
|
4662
|
+
total: Joi.number().required(),
|
|
4663
|
+
failed: Joi.number().required(),
|
|
4664
|
+
error_file_url: Joi.string().allow("").allow(null),
|
|
4665
|
+
action: Joi.string().allow("").required(),
|
|
4666
|
+
updated_at: Joi.string().allow("").required(),
|
|
4667
|
+
updated_by: Joi.string().allow("").required(),
|
|
4668
|
+
type: Joi.string().allow("").required(),
|
|
4669
|
+
company_id: Joi.number().required(),
|
|
4670
|
+
application_id: Joi.string().allow("").required(),
|
|
4671
|
+
stage: Joi.string().allow("").required(),
|
|
4672
|
+
partial: Joi.number(),
|
|
4673
|
+
result_file_url: Joi.string().allow("").allow(null),
|
|
4674
|
+
});
|
|
4675
|
+
}
|
|
4676
|
+
|
|
4677
|
+
/** @returns {CourierPartnerToServiceability} */
|
|
4678
|
+
static CourierPartnerToServiceability() {
|
|
4679
|
+
return Joi.object({
|
|
4680
|
+
location: ServiceabilityPlatformModel.ServiceabilityLocation(),
|
|
4681
|
+
pincode: Joi.string().allow(""),
|
|
4682
|
+
sector: Joi.string().allow(""),
|
|
4683
|
+
country: Joi.string().allow(""),
|
|
4684
|
+
country_iso_code: Joi.string().allow(""),
|
|
4685
|
+
state: Joi.string().allow(""),
|
|
4686
|
+
city: Joi.string().allow(""),
|
|
4687
|
+
});
|
|
4688
|
+
}
|
|
4689
|
+
|
|
4690
|
+
/** @returns {ServiceabilityLocation} */
|
|
4691
|
+
static ServiceabilityLocation() {
|
|
4692
|
+
return Joi.object({
|
|
4693
|
+
longitude: Joi.string().allow("").required(),
|
|
4694
|
+
latitude: Joi.string().allow("").required(),
|
|
4695
|
+
});
|
|
4696
|
+
}
|
|
4697
|
+
|
|
4698
|
+
/** @returns {CourierPartnerShipments} */
|
|
4699
|
+
static CourierPartnerShipments() {
|
|
4700
|
+
return Joi.object({
|
|
4701
|
+
promise: ServiceabilityPlatformModel.PromiseObject(),
|
|
4702
|
+
is_cod_available: Joi.boolean(),
|
|
4703
|
+
is_auto_assign: Joi.boolean(),
|
|
4704
|
+
meta: ServiceabilityPlatformModel.CourierPartnerShipmentsMeta(),
|
|
4705
|
+
volumetric_weight: Joi.number(),
|
|
4706
|
+
weight: Joi.number(),
|
|
4707
|
+
courier_partners: Joi.array().items(
|
|
4708
|
+
ServiceabilityPlatformModel.ShipmentCourierPartnersResult()
|
|
4709
|
+
),
|
|
4710
|
+
fulfillment_id: Joi.number().required(),
|
|
4711
|
+
fulfillment_type: Joi.string().allow("").required(),
|
|
4712
|
+
fulfillment_tags: Joi.array().items(Joi.string().allow("")).required(),
|
|
4713
|
+
from_serviceability: ServiceabilityPlatformModel.LocationDetailsServiceability().required(),
|
|
4714
|
+
articles: Joi.array()
|
|
4715
|
+
.items(ServiceabilityPlatformModel.CourierPartnerShipmentsArticles())
|
|
4716
|
+
.required(),
|
|
4717
|
+
is_mto: Joi.boolean().required(),
|
|
4718
|
+
ignore_scheme_ids: Joi.array().items(Joi.string().allow("")).required(),
|
|
4719
|
+
error: Joi.object().pattern(/\S/, Joi.any()),
|
|
4720
|
+
});
|
|
4721
|
+
}
|
|
4722
|
+
|
|
4723
|
+
/** @returns {PromiseObject} */
|
|
4724
|
+
static PromiseObject() {
|
|
4725
|
+
return Joi.object({
|
|
4726
|
+
min: Joi.string().allow(""),
|
|
4727
|
+
max: Joi.string().allow(""),
|
|
4728
|
+
customer_promise: ServiceabilityPlatformModel.PromiseData().required(),
|
|
4729
|
+
meta: ServiceabilityPlatformModel.PromiseMeta().required(),
|
|
4730
|
+
});
|
|
4731
|
+
}
|
|
4732
|
+
|
|
4733
|
+
/** @returns {PromiseData} */
|
|
4734
|
+
static PromiseData() {
|
|
4735
|
+
return Joi.object({
|
|
4736
|
+
min: Joi.string().allow(""),
|
|
4737
|
+
max: Joi.string().allow(""),
|
|
4738
|
+
});
|
|
4739
|
+
}
|
|
4740
|
+
|
|
4741
|
+
/** @returns {PromiseMeta} */
|
|
4742
|
+
static PromiseMeta() {
|
|
4743
|
+
return Joi.object({
|
|
4744
|
+
seller_promise: ServiceabilityPlatformModel.PromiseData(),
|
|
4745
|
+
courier_partner_promise: ServiceabilityPlatformModel.CourierPartnerPromiseData(),
|
|
4746
|
+
customer_initial_promise: ServiceabilityPlatformModel.PromiseData(),
|
|
4747
|
+
});
|
|
4748
|
+
}
|
|
4749
|
+
|
|
4750
|
+
/** @returns {CourierPartnerPromiseData} */
|
|
4751
|
+
static CourierPartnerPromiseData() {
|
|
4752
|
+
return Joi.object({
|
|
4753
|
+
min: Joi.string().allow("").allow(null),
|
|
4754
|
+
max: Joi.string().allow("").allow(null),
|
|
4755
|
+
attributes: ServiceabilityPlatformModel.DeliveryTat(),
|
|
4756
|
+
});
|
|
4757
|
+
}
|
|
4758
|
+
|
|
4759
|
+
/** @returns {DeliveryTat} */
|
|
4760
|
+
static DeliveryTat() {
|
|
4761
|
+
return Joi.object({
|
|
4762
|
+
tat: ServiceabilityPlatformModel.DeliveryTatSchema(),
|
|
4763
|
+
});
|
|
4764
|
+
}
|
|
4765
|
+
|
|
4766
|
+
/** @returns {DeliveryTatSchema} */
|
|
4767
|
+
static DeliveryTatSchema() {
|
|
4768
|
+
return Joi.object({
|
|
4769
|
+
min: Joi.number(),
|
|
4770
|
+
max: Joi.number(),
|
|
4771
|
+
});
|
|
4772
|
+
}
|
|
4773
|
+
|
|
4774
|
+
/** @returns {CourierPartnerShipmentsMeta} */
|
|
4775
|
+
static CourierPartnerShipmentsMeta() {
|
|
4776
|
+
return Joi.object({
|
|
4777
|
+
shipment_cost: Joi.number(),
|
|
4778
|
+
});
|
|
4779
|
+
}
|
|
4780
|
+
|
|
4781
|
+
/** @returns {ShipmentCourierPartnersResult} */
|
|
4782
|
+
static ShipmentCourierPartnersResult() {
|
|
4783
|
+
return Joi.object({
|
|
4784
|
+
extension_id: Joi.string().allow("").required(),
|
|
4785
|
+
scheme_id: Joi.string().allow("").required(),
|
|
4786
|
+
area_code: ServiceabilityPlatformModel.AreaCode().required(),
|
|
4787
|
+
tat: ServiceabilityPlatformModel.TAT().required(),
|
|
4788
|
+
display_name: Joi.string().allow("").required(),
|
|
4789
|
+
is_qc_enabled: Joi.boolean().required(),
|
|
4790
|
+
is_self_ship: Joi.boolean().required(),
|
|
4791
|
+
is_own_account: Joi.boolean(),
|
|
4792
|
+
ndr_attempts: Joi.number(),
|
|
4793
|
+
forward_pickup_cutoff: Joi.string().allow("").allow(null),
|
|
4794
|
+
reverse_pickup_cutoff: Joi.string().allow("").allow(null),
|
|
4795
|
+
qc_shipment_item_quantity: Joi.number().allow(null),
|
|
4796
|
+
non_qc_shipment_item_quantity: Joi.number().allow(null),
|
|
4797
|
+
dangerous_goods: Joi.boolean(),
|
|
4798
|
+
restricted_goods: Joi.boolean(),
|
|
4799
|
+
fragile_goods: Joi.boolean(),
|
|
4800
|
+
cold_storage_goods: Joi.boolean(),
|
|
4801
|
+
delivery_type: Joi.string().allow(""),
|
|
4802
|
+
is_cod: Joi.boolean(),
|
|
4803
|
+
transport_type: Joi.string().allow(""),
|
|
4804
|
+
});
|
|
4805
|
+
}
|
|
4806
|
+
|
|
4807
|
+
/** @returns {AreaCode} */
|
|
4808
|
+
static AreaCode() {
|
|
4809
|
+
return Joi.object({
|
|
4810
|
+
source: Joi.string().allow(""),
|
|
4811
|
+
destination: Joi.string().allow(""),
|
|
4812
|
+
});
|
|
4813
|
+
}
|
|
4814
|
+
|
|
4815
|
+
/** @returns {TAT} */
|
|
4816
|
+
static TAT() {
|
|
4817
|
+
return Joi.object({
|
|
4818
|
+
min: Joi.number(),
|
|
4819
|
+
max: Joi.number(),
|
|
4820
|
+
});
|
|
4821
|
+
}
|
|
4822
|
+
|
|
4823
|
+
/** @returns {LocationDetailsServiceability} */
|
|
4824
|
+
static LocationDetailsServiceability() {
|
|
4825
|
+
return Joi.object({
|
|
4826
|
+
pincode: Joi.string().allow(""),
|
|
4827
|
+
sector: Joi.string().allow(""),
|
|
4828
|
+
state: Joi.string().allow(""),
|
|
4829
|
+
country: Joi.string().allow("").required(),
|
|
4830
|
+
city: Joi.string().allow(""),
|
|
4831
|
+
country_iso_code: Joi.string().allow("").required(),
|
|
4832
|
+
location: ServiceabilityPlatformModel.ServiceabilityLocation(),
|
|
4833
|
+
});
|
|
4834
|
+
}
|
|
4835
|
+
|
|
4836
|
+
/** @returns {CourierPartnerShipmentsArticles} */
|
|
4837
|
+
static CourierPartnerShipmentsArticles() {
|
|
4838
|
+
return Joi.object({
|
|
4839
|
+
id: Joi.string().allow(""),
|
|
4840
|
+
delivery_slots: Joi.object().pattern(/\S/, Joi.any()),
|
|
4841
|
+
error: ServiceabilityPlatformModel.Error(),
|
|
4842
|
+
fulfillment_id: Joi.number(),
|
|
4843
|
+
fulfillment_tags: Joi.array().items(Joi.string().allow("")),
|
|
4844
|
+
fulfillment_type: Joi.string().allow(""),
|
|
4845
|
+
group_id: Joi.string().allow(""),
|
|
4846
|
+
is_gift: Joi.boolean(),
|
|
4847
|
+
is_mto: Joi.boolean(),
|
|
4848
|
+
is_set: Joi.boolean(),
|
|
4849
|
+
manufacturing_time: Joi.number(),
|
|
4850
|
+
manufacturing_time_unit: Joi.string().allow(""),
|
|
4851
|
+
mto_quantity: Joi.number(),
|
|
4852
|
+
sla: Joi.string().allow(""),
|
|
4853
|
+
price_marked: Joi.number(),
|
|
4854
|
+
promise: ServiceabilityPlatformModel.CourierPartnerArticlesPromise(),
|
|
4855
|
+
set: Joi.object().pattern(/\S/, Joi.any()),
|
|
4856
|
+
return_reason: ServiceabilityPlatformModel.CourierPartnerArticlesReturnReasons(),
|
|
4857
|
+
set_quantity: Joi.number(),
|
|
4858
|
+
quantity: Joi.number().required(),
|
|
4859
|
+
weight: ServiceabilityPlatformModel.ArticleWeight().required(),
|
|
4860
|
+
attributes: ServiceabilityPlatformModel.ArticleAttributes(),
|
|
4861
|
+
category_id: Joi.number().required(),
|
|
4862
|
+
dimension: ServiceabilityPlatformModel.ArticleDimension().required(),
|
|
4863
|
+
brand_id: Joi.number().required(),
|
|
4864
|
+
item_id: Joi.number().required(),
|
|
4865
|
+
size: Joi.string().allow("").required(),
|
|
4866
|
+
tags: Joi.array().items(Joi.string().allow("")).required(),
|
|
4867
|
+
department_id: Joi.number().required(),
|
|
4868
|
+
price: Joi.number().required(),
|
|
4869
|
+
});
|
|
4870
|
+
}
|
|
4871
|
+
|
|
4872
|
+
/** @returns {CourierPartnerArticlesPromise} */
|
|
4873
|
+
static CourierPartnerArticlesPromise() {
|
|
4874
|
+
return Joi.object({
|
|
4875
|
+
min: Joi.string().allow(""),
|
|
4876
|
+
max: Joi.string().allow(""),
|
|
4877
|
+
});
|
|
4878
|
+
}
|
|
4879
|
+
|
|
4880
|
+
/** @returns {CourierPartnerArticlesReturnReasons} */
|
|
4881
|
+
static CourierPartnerArticlesReturnReasons() {
|
|
4882
|
+
return Joi.object({
|
|
4883
|
+
id: Joi.number(),
|
|
4884
|
+
meta: ServiceabilityPlatformModel.CourierPartnerArticlesReturnReasonsMeta(),
|
|
4885
|
+
qc_type: Joi.array().items(Joi.string().allow("")),
|
|
4886
|
+
reasons: Joi.array().items(Joi.string().allow("")),
|
|
4887
|
+
is_active: Joi.boolean(),
|
|
4888
|
+
display_name: Joi.string().allow(""),
|
|
4889
|
+
question_set: Joi.array().items(Joi.string().allow("")),
|
|
4890
|
+
reason_other_text: Joi.string().allow(""),
|
|
4891
|
+
});
|
|
4892
|
+
}
|
|
4893
|
+
|
|
4894
|
+
/** @returns {CourierPartnerArticlesReturnReasonsMeta} */
|
|
4895
|
+
static CourierPartnerArticlesReturnReasonsMeta() {
|
|
4896
|
+
return Joi.object({
|
|
4897
|
+
show_text_area: Joi.boolean(),
|
|
4898
|
+
});
|
|
4899
|
+
}
|
|
4900
|
+
|
|
4901
|
+
/** @returns {ArticleWeight} */
|
|
4902
|
+
static ArticleWeight() {
|
|
4903
|
+
return Joi.object({
|
|
4904
|
+
shipping: Joi.number().required(),
|
|
4905
|
+
unit: Joi.string().allow("").required(),
|
|
4906
|
+
is_default: Joi.boolean().required(),
|
|
4907
|
+
});
|
|
4908
|
+
}
|
|
4909
|
+
|
|
4910
|
+
/** @returns {ArticleAttributes} */
|
|
4911
|
+
static ArticleAttributes() {
|
|
4912
|
+
return Joi.object({
|
|
4913
|
+
battery_operated: Joi.string().allow("").required(),
|
|
4914
|
+
is_flammable: Joi.string().allow("").required(),
|
|
4915
|
+
});
|
|
4916
|
+
}
|
|
4917
|
+
|
|
4918
|
+
/** @returns {ArticleDimension} */
|
|
4919
|
+
static ArticleDimension() {
|
|
4920
|
+
return Joi.object({
|
|
4921
|
+
height: Joi.number().required(),
|
|
4922
|
+
is_default: Joi.boolean().required(),
|
|
4923
|
+
length: Joi.number().required(),
|
|
4924
|
+
unit: Joi.string().allow("").required(),
|
|
4925
|
+
width: Joi.number().required(),
|
|
4926
|
+
});
|
|
4927
|
+
}
|
|
4928
|
+
|
|
4196
4929
|
/** @returns {PlatformLocationArticles} */
|
|
4197
4930
|
static PlatformLocationArticles() {
|
|
4198
4931
|
return Joi.object({
|
|
@@ -4433,19 +5166,11 @@ class ServiceabilityPlatformModel {
|
|
|
4433
5166
|
});
|
|
4434
5167
|
}
|
|
4435
5168
|
|
|
4436
|
-
/** @returns {
|
|
4437
|
-
static
|
|
5169
|
+
/** @returns {FulfillmentOptionDefaultFor} */
|
|
5170
|
+
static FulfillmentOptionDefaultFor() {
|
|
4438
5171
|
return Joi.object({
|
|
4439
|
-
|
|
4440
|
-
|
|
4441
|
-
});
|
|
4442
|
-
}
|
|
4443
|
-
|
|
4444
|
-
/** @returns {TAT} */
|
|
4445
|
-
static TAT() {
|
|
4446
|
-
return Joi.object({
|
|
4447
|
-
min: Joi.number(),
|
|
4448
|
-
max: Joi.number(),
|
|
5172
|
+
storefront: Joi.boolean(),
|
|
5173
|
+
storeos: Joi.boolean(),
|
|
4449
5174
|
});
|
|
4450
5175
|
}
|
|
4451
5176
|
|
|
@@ -4731,6 +5456,7 @@ class ServiceabilityPlatformModel {
|
|
|
4731
5456
|
return Joi.object({
|
|
4732
5457
|
type: Joi.string().allow("").required(),
|
|
4733
5458
|
values: Joi.array().items(Joi.any()).required(),
|
|
5459
|
+
action: Joi.string().allow(""),
|
|
4734
5460
|
});
|
|
4735
5461
|
}
|
|
4736
5462
|
|
|
@@ -5170,34 +5896,6 @@ class ServiceabilityPlatformModel {
|
|
|
5170
5896
|
});
|
|
5171
5897
|
}
|
|
5172
5898
|
|
|
5173
|
-
/** @returns {ArticleWeight} */
|
|
5174
|
-
static ArticleWeight() {
|
|
5175
|
-
return Joi.object({
|
|
5176
|
-
shipping: Joi.number().required(),
|
|
5177
|
-
unit: Joi.string().allow("").required(),
|
|
5178
|
-
is_default: Joi.boolean().required(),
|
|
5179
|
-
});
|
|
5180
|
-
}
|
|
5181
|
-
|
|
5182
|
-
/** @returns {ArticleAttributes} */
|
|
5183
|
-
static ArticleAttributes() {
|
|
5184
|
-
return Joi.object({
|
|
5185
|
-
battery_operated: Joi.string().allow("").required(),
|
|
5186
|
-
is_flammable: Joi.string().allow("").required(),
|
|
5187
|
-
});
|
|
5188
|
-
}
|
|
5189
|
-
|
|
5190
|
-
/** @returns {ArticleDimension} */
|
|
5191
|
-
static ArticleDimension() {
|
|
5192
|
-
return Joi.object({
|
|
5193
|
-
height: Joi.number().required(),
|
|
5194
|
-
is_default: Joi.boolean().required(),
|
|
5195
|
-
length: Joi.number().required(),
|
|
5196
|
-
unit: Joi.string().allow("").required(),
|
|
5197
|
-
width: Joi.number().required(),
|
|
5198
|
-
});
|
|
5199
|
-
}
|
|
5200
|
-
|
|
5201
5899
|
/** @returns {ArticleSet} */
|
|
5202
5900
|
static ArticleSet() {
|
|
5203
5901
|
return Joi.object({
|
|
@@ -5513,27 +6211,6 @@ class ServiceabilityPlatformModel {
|
|
|
5513
6211
|
});
|
|
5514
6212
|
}
|
|
5515
6213
|
|
|
5516
|
-
/** @returns {LocationDetailsServiceability} */
|
|
5517
|
-
static LocationDetailsServiceability() {
|
|
5518
|
-
return Joi.object({
|
|
5519
|
-
pincode: Joi.string().allow(""),
|
|
5520
|
-
sector: Joi.string().allow(""),
|
|
5521
|
-
state: Joi.string().allow(""),
|
|
5522
|
-
country: Joi.string().allow("").required(),
|
|
5523
|
-
city: Joi.string().allow(""),
|
|
5524
|
-
country_iso_code: Joi.string().allow("").required(),
|
|
5525
|
-
location: ServiceabilityPlatformModel.ServiceabilityLocation(),
|
|
5526
|
-
});
|
|
5527
|
-
}
|
|
5528
|
-
|
|
5529
|
-
/** @returns {ServiceabilityLocation} */
|
|
5530
|
-
static ServiceabilityLocation() {
|
|
5531
|
-
return Joi.object({
|
|
5532
|
-
longitude: Joi.string().allow("").required(),
|
|
5533
|
-
latitude: Joi.string().allow("").required(),
|
|
5534
|
-
});
|
|
5535
|
-
}
|
|
5536
|
-
|
|
5537
6214
|
/** @returns {OptimalLocationsArticles} */
|
|
5538
6215
|
static OptimalLocationsArticles() {
|
|
5539
6216
|
return Joi.object({
|
|
@@ -5845,5 +6522,128 @@ class ServiceabilityPlatformModel {
|
|
|
5845
6522
|
total_error_count: Joi.number(),
|
|
5846
6523
|
});
|
|
5847
6524
|
}
|
|
6525
|
+
|
|
6526
|
+
/** @returns {StorePolygonServiceabilityRequestData} */
|
|
6527
|
+
static StorePolygonServiceabilityRequestData() {
|
|
6528
|
+
return Joi.object({
|
|
6529
|
+
stores: Joi.array()
|
|
6530
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityStore())
|
|
6531
|
+
.required(),
|
|
6532
|
+
});
|
|
6533
|
+
}
|
|
6534
|
+
|
|
6535
|
+
/** @returns {StorePolygonServiceabilityStore} */
|
|
6536
|
+
static StorePolygonServiceabilityStore() {
|
|
6537
|
+
return Joi.object({
|
|
6538
|
+
store_code: Joi.string().allow("").required(),
|
|
6539
|
+
name: Joi.string().allow("").required(),
|
|
6540
|
+
address: Joi.string().allow("").required(),
|
|
6541
|
+
area_code: Joi.string().allow("").required(),
|
|
6542
|
+
is_active: Joi.boolean().required(),
|
|
6543
|
+
meta: Joi.object().pattern(/\S/, Joi.any()),
|
|
6544
|
+
coordinates: ServiceabilityPlatformModel.StorePolygonServiceabilityStoreCoordinates().required(),
|
|
6545
|
+
serviceabilities: Joi.array()
|
|
6546
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityConfig())
|
|
6547
|
+
.required(),
|
|
6548
|
+
created_at: Joi.string().allow(""),
|
|
6549
|
+
updated_at: Joi.string().allow(""),
|
|
6550
|
+
});
|
|
6551
|
+
}
|
|
6552
|
+
|
|
6553
|
+
/** @returns {StorePolygonServiceabilityStoreCoordinates} */
|
|
6554
|
+
static StorePolygonServiceabilityStoreCoordinates() {
|
|
6555
|
+
return Joi.object({
|
|
6556
|
+
lng: Joi.number().required(),
|
|
6557
|
+
lat: Joi.number().required(),
|
|
6558
|
+
});
|
|
6559
|
+
}
|
|
6560
|
+
|
|
6561
|
+
/** @returns {StorePolygonServiceabilityConfig} */
|
|
6562
|
+
static StorePolygonServiceabilityConfig() {
|
|
6563
|
+
return Joi.object({
|
|
6564
|
+
name: Joi.string().allow("").required(),
|
|
6565
|
+
serviceability_type: Joi.string().allow("").required(),
|
|
6566
|
+
polygon: ServiceabilityPlatformModel.StorePolygonServiceabilityPolygon().required(),
|
|
6567
|
+
meta: Joi.object().pattern(/\S/, Joi.any()),
|
|
6568
|
+
is_active: Joi.boolean().required(),
|
|
6569
|
+
uid: Joi.string().allow(""),
|
|
6570
|
+
created_at: Joi.string().allow(""),
|
|
6571
|
+
updated_at: Joi.string().allow(""),
|
|
6572
|
+
});
|
|
6573
|
+
}
|
|
6574
|
+
|
|
6575
|
+
/** @returns {StorePolygonServiceabilityPolygon} */
|
|
6576
|
+
static StorePolygonServiceabilityPolygon() {
|
|
6577
|
+
return Joi.object({
|
|
6578
|
+
type: Joi.string().allow("").required(),
|
|
6579
|
+
features: Joi.array()
|
|
6580
|
+
.items(ServiceabilityPlatformModel.StorePolygonServiceabilityFeature())
|
|
6581
|
+
.required(),
|
|
6582
|
+
attributes: ServiceabilityPlatformModel.StorePolygonServiceabilityAttributes(),
|
|
6583
|
+
});
|
|
6584
|
+
}
|
|
6585
|
+
|
|
6586
|
+
/** @returns {StorePolygonServiceabilityFeature} */
|
|
6587
|
+
static StorePolygonServiceabilityFeature() {
|
|
6588
|
+
return Joi.object({
|
|
6589
|
+
type: Joi.string().allow("").required(),
|
|
6590
|
+
properties: Joi.object().pattern(/\S/, Joi.any()),
|
|
6591
|
+
geometry: ServiceabilityPlatformModel.StorePolygonServiceabilityGeometry().required(),
|
|
6592
|
+
});
|
|
6593
|
+
}
|
|
6594
|
+
|
|
6595
|
+
/** @returns {StorePolygonServiceabilityGeometry} */
|
|
6596
|
+
static StorePolygonServiceabilityGeometry() {
|
|
6597
|
+
return Joi.object({
|
|
6598
|
+
type: Joi.string().allow(""),
|
|
6599
|
+
coordinates: Joi.array().items(
|
|
6600
|
+
Joi.array().items(Joi.array().items(Joi.number()))
|
|
6601
|
+
),
|
|
6602
|
+
});
|
|
6603
|
+
}
|
|
6604
|
+
|
|
6605
|
+
/** @returns {StorePolygonServiceabilityAttributes} */
|
|
6606
|
+
static StorePolygonServiceabilityAttributes() {
|
|
6607
|
+
return Joi.object({
|
|
6608
|
+
contour_type: Joi.string().allow(""),
|
|
6609
|
+
travel_distance: Joi.number(),
|
|
6610
|
+
reference_coordinates: ServiceabilityPlatformModel.StorePolygonServiceabilityReferenceCoordinates(),
|
|
6611
|
+
});
|
|
6612
|
+
}
|
|
6613
|
+
|
|
6614
|
+
/** @returns {StorePolygonServiceabilityReferenceCoordinates} */
|
|
6615
|
+
static StorePolygonServiceabilityReferenceCoordinates() {
|
|
6616
|
+
return Joi.object({
|
|
6617
|
+
lng: Joi.number().required(),
|
|
6618
|
+
lat: Joi.number().required(),
|
|
6619
|
+
});
|
|
6620
|
+
}
|
|
6621
|
+
|
|
6622
|
+
/** @returns {StorePolygonServiceabilityStoreSummary} */
|
|
6623
|
+
static StorePolygonServiceabilityStoreSummary() {
|
|
6624
|
+
return Joi.object({
|
|
6625
|
+
store_code: Joi.string().allow("").required(),
|
|
6626
|
+
name: Joi.string().allow(""),
|
|
6627
|
+
});
|
|
6628
|
+
}
|
|
6629
|
+
|
|
6630
|
+
/** @returns {StorePolygonServiceabilityError} */
|
|
6631
|
+
static StorePolygonServiceabilityError() {
|
|
6632
|
+
return Joi.object({
|
|
6633
|
+
store_code: Joi.string().allow("").required(),
|
|
6634
|
+
message: Joi.string().allow("").required(),
|
|
6635
|
+
error_code: Joi.string().allow(""),
|
|
6636
|
+
});
|
|
6637
|
+
}
|
|
6638
|
+
|
|
6639
|
+
/** @returns {StorePolygonServiceabilityPagination} */
|
|
6640
|
+
static StorePolygonServiceabilityPagination() {
|
|
6641
|
+
return Joi.object({
|
|
6642
|
+
page_size: Joi.number().required(),
|
|
6643
|
+
page_number: Joi.number().required(),
|
|
6644
|
+
has_next: Joi.boolean().required(),
|
|
6645
|
+
total_records: Joi.number().required(),
|
|
6646
|
+
});
|
|
6647
|
+
}
|
|
5848
6648
|
}
|
|
5849
6649
|
module.exports = ServiceabilityPlatformModel;
|