@gofynd/fdk-client-javascript 1.4.2-beta.1 → 1.4.2-beta.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/README.md +1 -1
- package/package.json +1 -1
- package/sdk/application/Cart/CartApplicationModel.d.ts +1742 -1726
- package/sdk/application/Cart/CartApplicationModel.js +1497 -1481
- package/sdk/application/Catalog/CatalogApplicationModel.d.ts +1917 -1917
- package/sdk/application/Catalog/CatalogApplicationModel.js +1611 -1611
- package/sdk/application/Common/CommonApplicationModel.d.ts +235 -235
- package/sdk/application/Common/CommonApplicationModel.js +172 -172
- package/sdk/application/Communication/CommunicationApplicationModel.d.ts +72 -72
- package/sdk/application/Communication/CommunicationApplicationModel.js +64 -64
- package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +1614 -1614
- package/sdk/application/Configuration/ConfigurationApplicationModel.js +1151 -1151
- package/sdk/application/Content/ContentApplicationModel.d.ts +797 -797
- package/sdk/application/Content/ContentApplicationModel.js +757 -757
- package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +79 -79
- package/sdk/application/FileStorage/FileStorageApplicationModel.js +84 -84
- package/sdk/application/Lead/LeadApplicationModel.d.ts +417 -417
- package/sdk/application/Lead/LeadApplicationModel.js +301 -301
- package/sdk/application/Logistic/LogisticApplicationModel.d.ts +666 -666
- package/sdk/application/Logistic/LogisticApplicationModel.js +601 -601
- package/sdk/application/Order/OrderApplicationModel.d.ts +846 -846
- package/sdk/application/Order/OrderApplicationModel.js +822 -822
- package/sdk/application/Payment/PaymentApplicationClient.d.ts +5 -5
- package/sdk/application/Payment/PaymentApplicationClient.js +10 -10
- package/sdk/application/Payment/PaymentApplicationModel.d.ts +2155 -2150
- package/sdk/application/Payment/PaymentApplicationModel.js +1460 -1458
- package/sdk/application/Payment/PaymentApplicationValidator.d.ts +5 -5
- package/sdk/application/Payment/PaymentApplicationValidator.js +3 -3
- package/sdk/application/PosCart/PosCartApplicationModel.d.ts +1462 -1462
- package/sdk/application/PosCart/PosCartApplicationModel.js +1260 -1260
- package/sdk/application/Rewards/RewardsApplicationModel.d.ts +214 -214
- package/sdk/application/Rewards/RewardsApplicationModel.js +211 -211
- package/sdk/application/Share/ShareApplicationModel.d.ts +114 -114
- package/sdk/application/Share/ShareApplicationModel.js +121 -121
- package/sdk/application/Theme/ThemeApplicationModel.d.ts +895 -895
- package/sdk/application/Theme/ThemeApplicationModel.js +684 -684
- package/sdk/application/User/UserApplicationModel.d.ts +762 -762
- package/sdk/application/User/UserApplicationModel.js +738 -738
- package/sdk/partner/FileStorage/FileStoragePartnerModel.d.ts +63 -63
- package/sdk/partner/FileStorage/FileStoragePartnerModel.js +65 -65
- package/sdk/partner/Lead/LeadPartnerModel.d.ts +661 -661
- package/sdk/partner/Lead/LeadPartnerModel.js +491 -491
- package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +223 -223
- package/sdk/partner/Logistics/LogisticsPartnerModel.js +235 -235
- package/sdk/partner/Theme/ThemePartnerModel.d.ts +1087 -1087
- package/sdk/partner/Theme/ThemePartnerModel.js +819 -819
- package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +386 -386
- package/sdk/partner/Webhook/WebhookPartnerModel.js +342 -342
- package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +123 -123
- package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +109 -109
- package/sdk/platform/Billing/BillingPlatformModel.d.ts +801 -801
- package/sdk/platform/Billing/BillingPlatformModel.js +783 -783
- package/sdk/platform/Cart/CartPlatformModel.d.ts +3333 -3317
- package/sdk/platform/Cart/CartPlatformModel.js +2936 -2920
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +1013 -1013
- package/sdk/platform/Catalog/CatalogPlatformModel.js +923 -923
- package/sdk/platform/Common/CommonPlatformModel.d.ts +255 -255
- package/sdk/platform/Common/CommonPlatformModel.js +187 -187
- package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +1238 -1238
- package/sdk/platform/Communication/CommunicationPlatformModel.js +1273 -1273
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +661 -661
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +692 -692
- package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +3198 -3198
- package/sdk/platform/Configuration/ConfigurationPlatformModel.js +2247 -2247
- package/sdk/platform/Content/ContentPlatformModel.d.ts +1833 -1833
- package/sdk/platform/Content/ContentPlatformModel.js +1837 -1837
- package/sdk/platform/Discount/DiscountPlatformModel.d.ts +245 -245
- package/sdk/platform/Discount/DiscountPlatformModel.js +248 -248
- package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +865 -865
- package/sdk/platform/FileStorage/FileStoragePlatformModel.js +877 -877
- package/sdk/platform/Finance/FinancePlatformModel.d.ts +1044 -1044
- package/sdk/platform/Finance/FinancePlatformModel.js +974 -974
- package/sdk/platform/Inventory/InventoryPlatformModel.d.ts +942 -942
- package/sdk/platform/Inventory/InventoryPlatformModel.js +1003 -1003
- package/sdk/platform/Lead/LeadPlatformModel.d.ts +608 -608
- package/sdk/platform/Lead/LeadPlatformModel.js +465 -465
- package/sdk/platform/Order/OrderPlatformModel.d.ts +5180 -5176
- package/sdk/platform/Order/OrderPlatformModel.js +4740 -4736
- package/sdk/platform/Partner/PartnerPlatformModel.d.ts +22 -22
- package/sdk/platform/Partner/PartnerPlatformModel.js +22 -22
- package/sdk/platform/Payment/PaymentPlatformModel.d.ts +2670 -2660
- package/sdk/platform/Payment/PaymentPlatformModel.js +1831 -1827
- package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +204 -204
- package/sdk/platform/Rewards/RewardsPlatformModel.js +199 -199
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +1505 -1507
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +1532 -1536
- package/sdk/platform/Share/SharePlatformModel.d.ts +147 -147
- package/sdk/platform/Share/SharePlatformModel.js +139 -139
- package/sdk/platform/Theme/ThemePlatformModel.d.ts +1046 -1046
- package/sdk/platform/Theme/ThemePlatformModel.js +789 -789
- package/sdk/platform/User/UserPlatformModel.d.ts +758 -758
- package/sdk/platform/User/UserPlatformModel.js +643 -643
- package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +439 -439
- package/sdk/platform/Webhook/WebhookPlatformModel.js +364 -364
- package/sdk/public/Billing/BillingPublicModel.d.ts +55 -55
- package/sdk/public/Billing/BillingPublicModel.js +51 -51
- package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +237 -237
- package/sdk/public/Configuration/ConfigurationPublicModel.js +174 -174
- package/sdk/public/Content/ContentPublicModel.d.ts +26 -26
- package/sdk/public/Content/ContentPublicModel.js +28 -28
- package/sdk/public/Inventory/InventoryPublicModel.d.ts +237 -237
- package/sdk/public/Inventory/InventoryPublicModel.js +257 -257
- package/sdk/public/Partner/PartnerPublicModel.d.ts +104 -104
- package/sdk/public/Partner/PartnerPublicModel.js +113 -113
- package/sdk/public/Webhook/WebhookPublicModel.d.ts +87 -87
- package/sdk/public/Webhook/WebhookPublicModel.js +93 -93
|
@@ -1,425 +1,212 @@
|
|
|
1
1
|
const Joi = require("joi");
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* @typedef
|
|
5
|
-
* @property {
|
|
6
|
-
* @property {string} [application_id] - Alphanumeric ID allotted to a sales
|
|
7
|
-
* channel application created within a business account
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @typedef AppCurrencyResponse
|
|
12
|
-
* @property {string} [_id]
|
|
13
|
-
* @property {string} [application] - Alphanumeric ID allotted to an application
|
|
14
|
-
* (sales channel website) created within a business account
|
|
15
|
-
* @property {string} [created_at]
|
|
16
|
-
* @property {DefaultCurrency} [default_currency]
|
|
17
|
-
* @property {string} [modified_at]
|
|
18
|
-
* @property {Currency[]} [supported_currency]
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @typedef AppFeature
|
|
23
|
-
* @property {number} [__v] - Version key for tracking revisions. Default value is zero
|
|
24
|
-
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
25
|
-
* for the sales channel features
|
|
26
|
-
* @property {string} [app] - Application ID of the sales channel
|
|
27
|
-
* @property {CartFeature} [cart]
|
|
28
|
-
* @property {CommonFeature} [common]
|
|
29
|
-
* @property {string} [created_at] - ISO 8601 timestamp showing the date when
|
|
30
|
-
* the features were configured
|
|
31
|
-
* @property {HomePageFeature} [home_page]
|
|
32
|
-
* @property {LandingPageFeature} [landing_page]
|
|
33
|
-
* @property {string} [modified_at] - ISO 8601 timestamp of last known
|
|
34
|
-
* modifications to the sales channel feature configuration
|
|
35
|
-
* @property {OrderFeature} [order]
|
|
36
|
-
* @property {PcrFeature} [pcr]
|
|
37
|
-
* @property {ProductDetailFeature} [product_detail]
|
|
38
|
-
* @property {QrFeature} [qr]
|
|
39
|
-
* @property {RegistrationPageFeature} [registration_page]
|
|
40
|
-
*/
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* @typedef AppFeatureResponse
|
|
44
|
-
* @property {AppFeature} [feature]
|
|
4
|
+
* @typedef ApplicationAboutResponse
|
|
5
|
+
* @property {ApplicationInfo} [application_info]
|
|
45
6
|
*/
|
|
46
7
|
|
|
47
8
|
/**
|
|
48
|
-
* @typedef
|
|
49
|
-
* @property {
|
|
9
|
+
* @typedef ApplicationInfo
|
|
10
|
+
* @property {CompanyInfo} [company_info]
|
|
11
|
+
* @property {OwnerInfo} [owner_info]
|
|
50
12
|
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
51
|
-
* of
|
|
52
|
-
* @property {string} [app_type] - It shows application is live or in development mode.
|
|
53
|
-
* @property {ApplicationAuth} [auth]
|
|
54
|
-
* @property {SecureUrl} [banner]
|
|
55
|
-
* @property {number} [cache_ttl] - An integer value that specifies the number
|
|
56
|
-
* of seconds until the key expires
|
|
57
|
-
* @property {string} [channel_type] - It indicates different channel types like
|
|
58
|
-
* store, website-and-mobile-apps. Default value is store
|
|
59
|
-
* @property {number} [company_id] - Numeric ID allotted to a business account
|
|
60
|
-
* where the sales channel exists
|
|
61
|
-
* @property {ApplicationCors} [cors]
|
|
62
|
-
* @property {string} [created_at] - ISO 8601 timestamp of sales channel creation
|
|
63
|
-
* @property {string} [description] - It contains detailed information about the
|
|
64
|
-
* sales channel.
|
|
13
|
+
* of application information
|
|
65
14
|
* @property {Domain} [domain]
|
|
66
|
-
* @property {
|
|
67
|
-
* @property {
|
|
68
|
-
* @property {
|
|
69
|
-
*
|
|
70
|
-
* internal or not
|
|
71
|
-
* @property {SecureUrl} [logo]
|
|
72
|
-
* @property {ApplicationMeta[]} [meta]
|
|
73
|
-
* @property {SecureUrl} [mobile_logo]
|
|
74
|
-
* @property {string} [mode]
|
|
75
|
-
* @property {string} [modified_at] - ISO 8601 timestamp of sales channel updation
|
|
15
|
+
* @property {ApplicationWebsite} [website]
|
|
16
|
+
* @property {ApplicationCors} [cors]
|
|
17
|
+
* @property {string} [description] - It contains details information about the
|
|
18
|
+
* sales channel
|
|
76
19
|
* @property {string} [name] - Name of the sales channel, e.g. Zenz Fashion
|
|
77
|
-
* @property {
|
|
78
|
-
* of owner who owns the application
|
|
79
|
-
* @property {ApplicationRedirections[]} [redirections]
|
|
80
|
-
* @property {string} [slug]
|
|
81
|
-
* @property {string} [status]
|
|
20
|
+
* @property {ApplicationMeta[]} [meta]
|
|
82
21
|
* @property {string} [token] - Random generated fix length string for sales
|
|
83
22
|
* channel. It is required and auto-generated.
|
|
23
|
+
* @property {string} [secret] - Random generated fix length string for sales
|
|
24
|
+
* channel. It is required and auto-generated.
|
|
25
|
+
* @property {string} [created_at] - ISO 8601 timestamp of sales channel
|
|
26
|
+
* information creation
|
|
27
|
+
* @property {SecureUrl} [banner]
|
|
28
|
+
* @property {SecureUrl} [logo]
|
|
29
|
+
* @property {boolean} [is_active] - Indicates whether sales channel is active
|
|
30
|
+
* or not active
|
|
31
|
+
* @property {string} [mode]
|
|
84
32
|
* @property {TokenSchema[]} [tokens]
|
|
85
|
-
* @property {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
* @typedef ApplicationAboutResponse
|
|
90
|
-
* @property {ApplicationInfo} [application_info]
|
|
33
|
+
* @property {Domain[]} [domains]
|
|
34
|
+
* @property {SecureUrl} [favicon]
|
|
35
|
+
* @property {SecureUrl} [mobile_logo]
|
|
36
|
+
* @property {string} [slug]
|
|
91
37
|
*/
|
|
92
38
|
|
|
93
39
|
/**
|
|
94
|
-
* @typedef
|
|
95
|
-
* @property {
|
|
40
|
+
* @typedef CompanyInfo
|
|
41
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
42
|
+
* of company information
|
|
43
|
+
* @property {number} [uid] - Company UID
|
|
44
|
+
* @property {string} [created_on] - ISO 8601 timestamp of company information creation
|
|
45
|
+
* @property {boolean} [is_active] - Indicates company is active or not active
|
|
46
|
+
* @property {string} [name] - Name of the company, Reliance Retail Limited
|
|
47
|
+
* @property {CompanyAboutAddress[]} [addresses]
|
|
48
|
+
* @property {string[]} [notification_emails]
|
|
96
49
|
*/
|
|
97
50
|
|
|
98
51
|
/**
|
|
99
|
-
* @typedef
|
|
100
|
-
* @property {string
|
|
52
|
+
* @typedef OwnerInfo
|
|
53
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
54
|
+
* of owner info
|
|
55
|
+
* @property {UserEmail[]} [emails]
|
|
56
|
+
* @property {UserPhoneNumber[]} [phone_numbers]
|
|
57
|
+
* @property {string} [first_name] - First name of the owner
|
|
58
|
+
* @property {string} [last_name] - Last name of the owner
|
|
59
|
+
* @property {string} [profile_pic] - Hosted URL of profile pic
|
|
101
60
|
*/
|
|
102
61
|
|
|
103
62
|
/**
|
|
104
|
-
* @typedef
|
|
105
|
-
* @property {string} [
|
|
106
|
-
*
|
|
107
|
-
* @property {SecureUrl} [banner]
|
|
108
|
-
* @property {number} [company_id]
|
|
109
|
-
* @property {string} [description] - It gives a detailed information about the
|
|
110
|
-
* sales channel. It is required.
|
|
111
|
-
* @property {Domain} [domain]
|
|
112
|
-
* @property {Domain[]} [domains]
|
|
113
|
-
* @property {SecureUrl} [favicon]
|
|
114
|
-
* @property {SecureUrl} [logo]
|
|
115
|
-
* @property {SecureUrl} [mobile_logo]
|
|
116
|
-
* @property {string} name - Name of the sales channel. It is required.
|
|
117
|
-
* @property {string} [slug]
|
|
63
|
+
* @typedef SupportedLanguage
|
|
64
|
+
* @property {string} [name] - Name of the supported language, e.g. हिन्दी
|
|
65
|
+
* @property {string} [code] - Unique code of supported language, e.g. hi-IN
|
|
118
66
|
*/
|
|
119
67
|
|
|
120
68
|
/**
|
|
121
|
-
* @typedef
|
|
122
|
-
* @property {
|
|
123
|
-
* of application information
|
|
124
|
-
* @property {SecureUrl} [banner]
|
|
125
|
-
* @property {CompanyInfo} [company_info]
|
|
126
|
-
* @property {ApplicationCors} [cors]
|
|
127
|
-
* @property {string} [created_at] - ISO 8601 timestamp of sales channel
|
|
128
|
-
* information creation
|
|
129
|
-
* @property {string} [description] - It contains details information about the
|
|
130
|
-
* sales channel
|
|
131
|
-
* @property {Domain} [domain]
|
|
132
|
-
* @property {Domain[]} [domains]
|
|
133
|
-
* @property {SecureUrl} [favicon]
|
|
134
|
-
* @property {boolean} [is_active] - Indicates whether sales channel is active
|
|
135
|
-
* or not active
|
|
136
|
-
* @property {SecureUrl} [logo]
|
|
137
|
-
* @property {ApplicationMeta[]} [meta]
|
|
138
|
-
* @property {SecureUrl} [mobile_logo]
|
|
139
|
-
* @property {string} [mode]
|
|
140
|
-
* @property {string} [name] - Name of the sales channel, e.g. Zenz Fashion
|
|
141
|
-
* @property {OwnerInfo} [owner_info]
|
|
142
|
-
* @property {string} [secret] - Random generated fix length string for sales
|
|
143
|
-
* channel. It is required and auto-generated.
|
|
144
|
-
* @property {string} [slug]
|
|
145
|
-
* @property {string} [token] - Random generated fix length string for sales
|
|
146
|
-
* channel. It is required and auto-generated.
|
|
147
|
-
* @property {TokenSchema[]} [tokens]
|
|
148
|
-
* @property {ApplicationWebsite} [website]
|
|
69
|
+
* @typedef LanguageResponse
|
|
70
|
+
* @property {SupportedLanguage[]} [items]
|
|
149
71
|
*/
|
|
150
72
|
|
|
151
73
|
/**
|
|
152
|
-
* @typedef
|
|
153
|
-
* @property {
|
|
154
|
-
* @property {string} [_id] - Unique identifier (24-digit Mongo Object ID) of
|
|
155
|
-
* the application information
|
|
156
|
-
* @property {InformationAddress} [address]
|
|
157
|
-
* @property {string} [application] - Alphanumeric ID allotted to a sales
|
|
158
|
-
* channel application created within a business account
|
|
159
|
-
* @property {BusinessHighlights[]} [business_highlights]
|
|
160
|
-
* @property {string} [copyright_text] - Copyright statement usually seen at the
|
|
161
|
-
* site's footer
|
|
162
|
-
* @property {string} [created_at] - ISO 8601 timestamp of creation of the
|
|
163
|
-
* application information
|
|
164
|
-
* @property {Links[]} [links]
|
|
165
|
-
* @property {string} [modified_at] - ISO 8601 timestamp of updation of the
|
|
166
|
-
* application information
|
|
167
|
-
* @property {SocialLinks} [social_links]
|
|
168
|
-
* @property {InformationSupport} [support]
|
|
74
|
+
* @typedef AppStaffResponse
|
|
75
|
+
* @property {AppStaff[]} [staff_users]
|
|
169
76
|
*/
|
|
170
77
|
|
|
171
78
|
/**
|
|
172
|
-
* @typedef
|
|
173
|
-
* @property {
|
|
174
|
-
* @property {
|
|
79
|
+
* @typedef AppStaffListResponse
|
|
80
|
+
* @property {Page} [page]
|
|
81
|
+
* @property {AppStaff[]} [items]
|
|
175
82
|
*/
|
|
176
83
|
|
|
177
84
|
/**
|
|
178
|
-
* @typedef
|
|
179
|
-
* @property {
|
|
180
|
-
* @property {string} [redirect_to] - New domain URL of the sales channel. Users
|
|
181
|
-
* will be automatically redirected from old domain to new domain.
|
|
182
|
-
* @property {string} [type] - It shows domain redirection type. Permanent
|
|
183
|
-
* redirection is for long time period redirection, and temporary redirection
|
|
184
|
-
* for a short time period.
|
|
85
|
+
* @typedef OrderingStoreSelectRequest
|
|
86
|
+
* @property {OrderingStoreSelect} ordering_store
|
|
185
87
|
*/
|
|
186
88
|
|
|
187
89
|
/**
|
|
188
|
-
* @typedef
|
|
189
|
-
* @property {
|
|
190
|
-
* @property {boolean} [enabled] - Shows whether sales channel website URL is
|
|
191
|
-
* enabled or not
|
|
90
|
+
* @typedef OrderingStoreSelect
|
|
91
|
+
* @property {number} uid - Ordering store unique uid. It is required.
|
|
192
92
|
*/
|
|
193
93
|
|
|
194
94
|
/**
|
|
195
95
|
* @typedef AppStaff
|
|
196
96
|
* @property {string} [_id] - The unique identifier for the sales channel staff member
|
|
97
|
+
* @property {boolean} [order_incent] - This is a boolean value. `true` to
|
|
98
|
+
* retrieve the staff members eligible for getting incentives on orders.
|
|
99
|
+
* @property {number[]} [stores]
|
|
197
100
|
* @property {string} [application] - The unique identifier (24-digit Mongo
|
|
198
101
|
* Object ID) of the current sales channel
|
|
102
|
+
* @property {string} [title] - Tittle for the staff member like owner, staff.
|
|
103
|
+
* @property {string} [user] - Mongo ID of the staff. Helps in retrieving the
|
|
104
|
+
* details of a particular staff member.
|
|
199
105
|
* @property {string} [employee_code] - Employee code of sales channel staff
|
|
200
106
|
* member. It has unique value.
|
|
201
107
|
* @property {string} [first_name] - First name the staff member
|
|
202
108
|
* @property {string} [last_name] - Last name the staff member
|
|
203
|
-
* @property {boolean} [order_incent] - This is a boolean value. `true` to
|
|
204
|
-
* retrieve the staff members eligible for getting incentives on orders.
|
|
205
109
|
* @property {string} [profile_pic_url] - Profile image hosted url of the staff member
|
|
206
|
-
* @property {number[]} [stores]
|
|
207
|
-
* @property {string} [title] - Tittle for the staff member like owner, staff.
|
|
208
|
-
* @property {string} [user] - Mongo ID of the staff. Helps in retrieving the
|
|
209
|
-
* details of a particular staff member.
|
|
210
|
-
*/
|
|
211
|
-
|
|
212
|
-
/**
|
|
213
|
-
* @typedef AppStaffListResponse
|
|
214
|
-
* @property {AppStaff[]} [items]
|
|
215
|
-
* @property {Page} [page]
|
|
216
|
-
*/
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* @typedef AppStaffResponse
|
|
220
|
-
* @property {AppStaff[]} [staff_users]
|
|
221
110
|
*/
|
|
222
111
|
|
|
223
112
|
/**
|
|
224
113
|
* @typedef AppTokenResponse
|
|
225
|
-
* @property {
|
|
114
|
+
* @property {Tokens} [tokens]
|
|
226
115
|
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
227
116
|
* of the token
|
|
228
117
|
* @property {string} [application] - Alphanumeric ID allotted to the current
|
|
229
118
|
* application created within the current business account
|
|
230
119
|
* @property {string} [created_at] - ISO 8601 timestamp of token creation
|
|
231
120
|
* @property {string} [modified_at] - ISO 8601 timestamp of token updation
|
|
232
|
-
* @property {
|
|
121
|
+
* @property {number} [__v] - Version key for tracking revisions. Default value is zero.
|
|
233
122
|
*/
|
|
234
123
|
|
|
235
124
|
/**
|
|
236
|
-
* @typedef
|
|
237
|
-
* @property {
|
|
238
|
-
* @property {
|
|
239
|
-
* @property {
|
|
125
|
+
* @typedef Tokens
|
|
126
|
+
* @property {Firebase} [firebase]
|
|
127
|
+
* @property {Moengage} [moengage]
|
|
128
|
+
* @property {Segment} [segment]
|
|
129
|
+
* @property {Gtm} [gtm]
|
|
130
|
+
* @property {Freshchat} [freshchat]
|
|
131
|
+
* @property {Safetynet} [safetynet]
|
|
132
|
+
* @property {FyndRewards} [fynd_rewards]
|
|
133
|
+
* @property {GoogleMap} [google_map]
|
|
240
134
|
*/
|
|
241
135
|
|
|
242
136
|
/**
|
|
243
|
-
* @typedef
|
|
244
|
-
* @property {
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
* business highlight
|
|
248
|
-
* @property {string} [sub_title] - Detailed information about the highlight
|
|
249
|
-
* @property {string} [title] - Title of the business highlight, e.g. Superfast Delivery
|
|
250
|
-
*/
|
|
251
|
-
|
|
252
|
-
/**
|
|
253
|
-
* @typedef CartFeature
|
|
254
|
-
* @property {boolean} [google_map] - Allow adding of Google Maps. Default value is true.
|
|
255
|
-
* @property {boolean} [gst_input] - Shows whether customer is allowed to enter
|
|
256
|
-
* GST on the cart page for claiming input credits
|
|
257
|
-
* @property {boolean} [placing_for_customer] - Shows whether the staff is
|
|
258
|
-
* placing order on behalf of customer. Default value is true.
|
|
259
|
-
* @property {boolean} [revenue_engine_coupon] - Allow coupon apply and credits,
|
|
260
|
-
* together. Default value is false.
|
|
261
|
-
* @property {boolean} [staff_selection] - Shows whether staff selection is
|
|
262
|
-
* enabled on cart page
|
|
263
|
-
*/
|
|
264
|
-
|
|
265
|
-
/**
|
|
266
|
-
* @typedef CommonFeature
|
|
267
|
-
* @property {CommunicationOptinDialogFeature} [communication_optin_dialog]
|
|
268
|
-
* @property {CompareProductsFeature} [compare_products]
|
|
269
|
-
* @property {CurrencyFeature} [currency]
|
|
270
|
-
* @property {DeploymentStoreSelectionFeature} [deployment_store_selection]
|
|
271
|
-
* @property {FeedbackFeature} [feedback]
|
|
272
|
-
* @property {InternationalShipping} [international_shipping]
|
|
273
|
-
* @property {ListingPageFeature} [listing_page]
|
|
274
|
-
* @property {ListingPriceFeature} [listing_price]
|
|
275
|
-
* @property {RevenueEngineFeature} [revenue_engine]
|
|
276
|
-
* @property {RewardPointsConfig} [reward_points]
|
|
277
|
-
*/
|
|
278
|
-
|
|
279
|
-
/**
|
|
280
|
-
* @typedef CommunicationOptinDialogFeature
|
|
281
|
-
* @property {boolean} [visibility] - Shows whether WhatsApp communication is enabled
|
|
282
|
-
*/
|
|
283
|
-
|
|
284
|
-
/**
|
|
285
|
-
* @typedef CompanyAboutAddress
|
|
286
|
-
* @property {string} [address_type] - Indicates different office types like
|
|
287
|
-
* office, registered, and home.
|
|
288
|
-
* @property {string} [address1] - Primary address line of the company
|
|
289
|
-
* @property {string} [address2] - Secondary address line of the company
|
|
290
|
-
* @property {string} [city] - City name, e.g. Mumbai
|
|
291
|
-
* @property {string} [country] - Country name, e.g. India
|
|
292
|
-
* @property {number} [pincode] - 6-digit PIN code of the city, e.g. 400001
|
|
293
|
-
* @property {string} [state] - State name, e.g. Maharashtra
|
|
294
|
-
*/
|
|
295
|
-
|
|
296
|
-
/**
|
|
297
|
-
* @typedef CompanyInfo
|
|
298
|
-
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
299
|
-
* of company information
|
|
300
|
-
* @property {CompanyAboutAddress[]} [addresses]
|
|
301
|
-
* @property {string} [created_on] - ISO 8601 timestamp of company information creation
|
|
302
|
-
* @property {boolean} [is_active] - Indicates company is active or not active
|
|
303
|
-
* @property {string} [name] - Name of the company, Reliance Retail Limited
|
|
304
|
-
* @property {string[]} [notification_emails]
|
|
305
|
-
* @property {number} [uid] - Company UID
|
|
306
|
-
*/
|
|
307
|
-
|
|
308
|
-
/**
|
|
309
|
-
* @typedef CompareProductsFeature
|
|
310
|
-
* @property {boolean} [enabled] - Shows whether product comparison feature is
|
|
311
|
-
* enabled on PDP
|
|
137
|
+
* @typedef Firebase
|
|
138
|
+
* @property {Credentials} [credentials]
|
|
139
|
+
* @property {boolean} [enabled] - Shows whether Firebase integration is enabled
|
|
140
|
+
* or disabled for the sales channel
|
|
312
141
|
*/
|
|
313
142
|
|
|
314
143
|
/**
|
|
315
144
|
* @typedef Credentials
|
|
145
|
+
* @property {Ios} [ios]
|
|
316
146
|
* @property {Android} [android]
|
|
317
|
-
* @property {string} [
|
|
318
|
-
*
|
|
319
|
-
* @property {string} [application_id] - Alphanumeric ID allotted to the current
|
|
320
|
-
* application created within the current business account
|
|
147
|
+
* @property {string} [project_id] - Project ID for Firebase integration.
|
|
148
|
+
* Project ID is a unique identifier for a project and is used only within the console.
|
|
321
149
|
* @property {string} [gcm_sender_id] - Google Cloud Manager's Sender ID for
|
|
322
150
|
* Firebase. It is a unique numerical value which is created when you
|
|
323
151
|
* configure your project in the Google Developers Console/Google Cloud Console.
|
|
324
|
-
* @property {
|
|
325
|
-
*
|
|
326
|
-
*
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
/**
|
|
330
|
-
* @typedef Credit
|
|
331
|
-
* @property {boolean} [enabled] - Shows whether reward points should be credited
|
|
332
|
-
*/
|
|
333
|
-
|
|
334
|
-
/**
|
|
335
|
-
* @typedef CurrenciesResponse
|
|
336
|
-
* @property {Currency[]} [items]
|
|
337
|
-
*/
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* @typedef Currency
|
|
341
|
-
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
342
|
-
* of the current sales channel supported currency
|
|
343
|
-
* @property {string} [code] - 3-character currency code, e.g. INR, USD, EUR.
|
|
344
|
-
* @property {string} [country_code]
|
|
345
|
-
* @property {string} [country_name]
|
|
346
|
-
* @property {string} [created_at] - ISO 8601 timestamp of sales channel support
|
|
347
|
-
* currency creation
|
|
348
|
-
* @property {number} [decimal_digits] - Acceptable decimal limits for a given
|
|
349
|
-
* currency, e.g. 1.05$ means upto 2 decimal digits can be accepted as a valid
|
|
350
|
-
* value of a currency.
|
|
351
|
-
* @property {boolean} [is_active] - Shows currency is enabled or not in current
|
|
352
|
-
* sales channel
|
|
353
|
-
* @property {string} [modified_at] - ISO 8601 timestamp of sales channel
|
|
354
|
-
* support currency updation
|
|
355
|
-
* @property {string} [name] - Name of the currency, e.g Indian Rupee
|
|
356
|
-
* @property {string} [symbol] - Unique symbol for identifying the currency, e.g. ₹
|
|
152
|
+
* @property {string} [application_id] - Alphanumeric ID allotted to the current
|
|
153
|
+
* application created within the current business account
|
|
154
|
+
* @property {string} [api_key] - An API key is a unique string that's used to
|
|
155
|
+
* route requests to your Firebase project when interacting with Firebase.
|
|
357
156
|
*/
|
|
358
157
|
|
|
359
158
|
/**
|
|
360
|
-
* @typedef
|
|
361
|
-
* @property {string} [
|
|
362
|
-
*
|
|
363
|
-
* @property {string} [
|
|
364
|
-
* code with price. For explicit or all currency selection.
|
|
365
|
-
* @property {string[]} [value] - 3-letter currency code
|
|
159
|
+
* @typedef Ios
|
|
160
|
+
* @property {string} [application_id] - Alphanumeric ID allotted to a sales
|
|
161
|
+
* channel application created within a business account
|
|
162
|
+
* @property {string} [api_key] - Firebase secret credential API key for IOS
|
|
366
163
|
*/
|
|
367
164
|
|
|
368
165
|
/**
|
|
369
|
-
* @typedef
|
|
370
|
-
* @property {
|
|
371
|
-
*
|
|
372
|
-
* @property {string} [
|
|
166
|
+
* @typedef Android
|
|
167
|
+
* @property {string} [application_id] - Alphanumeric ID allotted to a sales
|
|
168
|
+
* channel application created within a business account
|
|
169
|
+
* @property {string} [api_key] - Firebase secret credential API key for Android
|
|
373
170
|
*/
|
|
374
171
|
|
|
375
172
|
/**
|
|
376
|
-
* @typedef
|
|
377
|
-
* @property {
|
|
378
|
-
*
|
|
379
|
-
*
|
|
380
|
-
* of the default currency
|
|
173
|
+
* @typedef Moengage
|
|
174
|
+
* @property {MoengageCredentials} [credentials]
|
|
175
|
+
* @property {boolean} [enabled] - Shows whether MoEngage integation is enabled
|
|
176
|
+
* or disabled for the sales channel
|
|
381
177
|
*/
|
|
382
178
|
|
|
383
179
|
/**
|
|
384
|
-
* @typedef
|
|
385
|
-
* @property {
|
|
386
|
-
*
|
|
387
|
-
*
|
|
388
|
-
* type delivery, store selection is compulsory. For soft type, delivery store
|
|
389
|
-
* selection is optional.
|
|
180
|
+
* @typedef MoengageCredentials
|
|
181
|
+
* @property {string} [app_id] - APP ID provided by MoEngage to identify a
|
|
182
|
+
* specific app. The app_id for your MoEngage account is available on the
|
|
183
|
+
* MoEngage Dashboard.
|
|
390
184
|
*/
|
|
391
185
|
|
|
392
186
|
/**
|
|
393
|
-
* @typedef
|
|
394
|
-
* @property {
|
|
395
|
-
*
|
|
396
|
-
*
|
|
397
|
-
* @property {boolean} [is_primary] - Domain is primary or not. Primary domain
|
|
398
|
-
* is the default/main domain.
|
|
399
|
-
* @property {boolean} [is_shortlink] - Shortlink is present or not for the domain
|
|
400
|
-
* @property {string} [name]
|
|
401
|
-
* @property {boolean} [verified] - Domain is verified or not. TXT and A records
|
|
402
|
-
* should propagate correctly.
|
|
187
|
+
* @typedef Segment
|
|
188
|
+
* @property {SegmentCredentials} [credentials]
|
|
189
|
+
* @property {boolean} [enabled] - Shows whether Segment integration is enabled
|
|
190
|
+
* or disabled for the sales channel
|
|
403
191
|
*/
|
|
404
192
|
|
|
405
193
|
/**
|
|
406
|
-
* @typedef
|
|
407
|
-
* @property {string} [
|
|
408
|
-
*
|
|
409
|
-
*
|
|
194
|
+
* @typedef SegmentCredentials
|
|
195
|
+
* @property {string} [write_key] - The unique identifier for a source that
|
|
196
|
+
* tells Segment from which source data is coming from, to which workspace the
|
|
197
|
+
* data belongs, and which destinations should receive the data.
|
|
410
198
|
*/
|
|
411
199
|
|
|
412
200
|
/**
|
|
413
|
-
* @typedef
|
|
414
|
-
* @property {
|
|
415
|
-
*
|
|
201
|
+
* @typedef Gtm
|
|
202
|
+
* @property {GtmCredentials} [credentials]
|
|
203
|
+
* @property {boolean} [enabled] - Shows whether GTM integration is enabled or
|
|
204
|
+
* disabled for the sales channel
|
|
416
205
|
*/
|
|
417
206
|
|
|
418
207
|
/**
|
|
419
|
-
* @typedef
|
|
420
|
-
* @property {
|
|
421
|
-
* @property {boolean} [enabled] - Shows whether Firebase integration is enabled
|
|
422
|
-
* or disabled for the sales channel
|
|
208
|
+
* @typedef GtmCredentials
|
|
209
|
+
* @property {string} [api_key] - Secret credential API key for GTM
|
|
423
210
|
*/
|
|
424
211
|
|
|
425
212
|
/**
|
|
@@ -438,6 +225,19 @@ const Joi = require("joi");
|
|
|
438
225
|
* @property {string} [web_token] - Web token used for accessing the Freshchat APIs
|
|
439
226
|
*/
|
|
440
227
|
|
|
228
|
+
/**
|
|
229
|
+
* @typedef Safetynet
|
|
230
|
+
* @property {SafetynetCredentials} [credentials]
|
|
231
|
+
* @property {boolean} [enabled] - Shows whether Safetynet integration is
|
|
232
|
+
* enabled or disabled for the sales channel
|
|
233
|
+
*/
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* @typedef SafetynetCredentials
|
|
237
|
+
* @property {string} [api_key] - Secret credential API key for Safetynet. This
|
|
238
|
+
* API key is used for calling the methods of Safetynet APIs.
|
|
239
|
+
*/
|
|
240
|
+
|
|
441
241
|
/**
|
|
442
242
|
* @typedef FyndRewards
|
|
443
243
|
* @property {FyndRewardsCredentials} [credentials]
|
|
@@ -460,77 +260,100 @@ const Joi = require("joi");
|
|
|
460
260
|
*/
|
|
461
261
|
|
|
462
262
|
/**
|
|
463
|
-
* @typedef
|
|
464
|
-
* @property {
|
|
465
|
-
* @property {
|
|
466
|
-
* @property {string} [title] - Name of the social media platform, e.g. Google+
|
|
263
|
+
* @typedef RewardPointsConfig
|
|
264
|
+
* @property {Credit} [credit]
|
|
265
|
+
* @property {Debit} [debit]
|
|
467
266
|
*/
|
|
468
267
|
|
|
469
268
|
/**
|
|
470
|
-
* @typedef
|
|
471
|
-
* @property {
|
|
472
|
-
* @property {boolean} [enabled] - Shows whether GTM integration is enabled or
|
|
473
|
-
* disabled for the sales channel
|
|
269
|
+
* @typedef Credit
|
|
270
|
+
* @property {boolean} [enabled] - Shows whether reward points should be credited
|
|
474
271
|
*/
|
|
475
272
|
|
|
476
273
|
/**
|
|
477
|
-
* @typedef
|
|
478
|
-
* @property {
|
|
274
|
+
* @typedef Debit
|
|
275
|
+
* @property {boolean} [enabled] - Shows whether reward points are available for debit
|
|
276
|
+
* @property {boolean} [auto_apply] - Allow automatic debit of reward points
|
|
277
|
+
* @property {string} [strategy_channel] - Strategy channel for debiting reward points
|
|
479
278
|
*/
|
|
480
279
|
|
|
481
280
|
/**
|
|
482
|
-
* @typedef
|
|
483
|
-
* @property {
|
|
484
|
-
*
|
|
281
|
+
* @typedef ProductDetailFeature
|
|
282
|
+
* @property {string[]} [similar] - Configuration to show similar products,
|
|
283
|
+
* other products from same seller, other products in same category, other
|
|
284
|
+
* products in same price range, etc.
|
|
285
|
+
* @property {boolean} [seller_selection] - Shows whether the customers can
|
|
286
|
+
* choose the seller on PDP
|
|
287
|
+
* @property {boolean} [update_product_meta] - Allow user to update product
|
|
288
|
+
* meta. Default value is true.
|
|
289
|
+
* @property {boolean} [request_product] - Indicates whether customers can
|
|
290
|
+
* request for a product. Default value is false.
|
|
485
291
|
*/
|
|
486
292
|
|
|
487
293
|
/**
|
|
488
|
-
* @typedef
|
|
489
|
-
* @property {string
|
|
490
|
-
* @property {
|
|
491
|
-
* @property {
|
|
492
|
-
* @property {InformationLoc} [loc]
|
|
493
|
-
* @property {InformationPhone[]} [phone]
|
|
494
|
-
* @property {number} [pincode] - 6-digit PIN Code of the city, e.g. 400001
|
|
294
|
+
* @typedef LaunchPage
|
|
295
|
+
* @property {string} [page_type] - Type of the launch page
|
|
296
|
+
* @property {Object} [params] - Launch page params. It can be nullable.
|
|
297
|
+
* @property {Object} [query] - Query related to launch page. It can be nullable.
|
|
495
298
|
*/
|
|
496
299
|
|
|
497
300
|
/**
|
|
498
|
-
* @typedef
|
|
499
|
-
* @property {
|
|
500
|
-
* @property {
|
|
301
|
+
* @typedef LandingPageFeature
|
|
302
|
+
* @property {LaunchPage} [launch_page]
|
|
303
|
+
* @property {boolean} [continue_as_guest] - Shows whether a guest can checkout
|
|
304
|
+
* from cart without logging in
|
|
305
|
+
* @property {string} [login_btn_text] - Shows the text displayed over the login button
|
|
306
|
+
* @property {boolean} [show_domain_textbox] - Shows whether a textbox for
|
|
307
|
+
* entering domain is available
|
|
308
|
+
* @property {boolean} [show_register_btn] - Shows whether register button is
|
|
309
|
+
* available in the login/landing page
|
|
501
310
|
*/
|
|
502
311
|
|
|
503
312
|
/**
|
|
504
|
-
* @typedef
|
|
505
|
-
* @property {
|
|
506
|
-
*
|
|
507
|
-
*/
|
|
508
|
-
|
|
509
|
-
/**
|
|
510
|
-
* @typedef InformationSupport
|
|
511
|
-
* @property {InformationSupportEmail[]} [email]
|
|
512
|
-
* @property {InformationSupportPhone[]} [phone]
|
|
513
|
-
* @property {string} [timing] - Working hours of support team, e.g. 9 AM to 9 PM
|
|
313
|
+
* @typedef RegistrationPageFeature
|
|
314
|
+
* @property {boolean} [ask_store_address] - Shows whether a form to collect the
|
|
315
|
+
* address of the store, should be displayed upon visiting the website
|
|
514
316
|
*/
|
|
515
317
|
|
|
516
318
|
/**
|
|
517
|
-
* @typedef
|
|
518
|
-
* @property {
|
|
519
|
-
* @property {
|
|
319
|
+
* @typedef AppFeature
|
|
320
|
+
* @property {ProductDetailFeature} [product_detail]
|
|
321
|
+
* @property {LandingPageFeature} [landing_page]
|
|
322
|
+
* @property {RegistrationPageFeature} [registration_page]
|
|
323
|
+
* @property {HomePageFeature} [home_page]
|
|
324
|
+
* @property {CommonFeature} [common]
|
|
325
|
+
* @property {CartFeature} [cart]
|
|
326
|
+
* @property {QrFeature} [qr]
|
|
327
|
+
* @property {PcrFeature} [pcr]
|
|
328
|
+
* @property {OrderFeature} [order]
|
|
329
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
330
|
+
* for the sales channel features
|
|
331
|
+
* @property {string} [app] - Application ID of the sales channel
|
|
332
|
+
* @property {string} [created_at] - ISO 8601 timestamp showing the date when
|
|
333
|
+
* the features were configured
|
|
334
|
+
* @property {string} [modified_at] - ISO 8601 timestamp of last known
|
|
335
|
+
* modifications to the sales channel feature configuration
|
|
336
|
+
* @property {number} [__v] - Version key for tracking revisions. Default value is zero
|
|
520
337
|
*/
|
|
521
338
|
|
|
522
339
|
/**
|
|
523
|
-
* @typedef
|
|
524
|
-
* @property {
|
|
525
|
-
*
|
|
526
|
-
* @property {string} [number] - 10-digit mobile number
|
|
340
|
+
* @typedef HomePageFeature
|
|
341
|
+
* @property {boolean} [order_processing] - Shows whether order processing is
|
|
342
|
+
* enabled or not enabled
|
|
527
343
|
*/
|
|
528
344
|
|
|
529
345
|
/**
|
|
530
|
-
* @typedef
|
|
531
|
-
* @property {
|
|
532
|
-
* @property {
|
|
533
|
-
* @property {
|
|
346
|
+
* @typedef CommonFeature
|
|
347
|
+
* @property {CommunicationOptinDialogFeature} [communication_optin_dialog]
|
|
348
|
+
* @property {DeploymentStoreSelectionFeature} [deployment_store_selection]
|
|
349
|
+
* @property {ListingPriceFeature} [listing_price]
|
|
350
|
+
* @property {CurrencyFeature} [currency]
|
|
351
|
+
* @property {RevenueEngineFeature} [revenue_engine]
|
|
352
|
+
* @property {FeedbackFeature} [feedback]
|
|
353
|
+
* @property {CompareProductsFeature} [compare_products]
|
|
354
|
+
* @property {RewardPointsConfig} [reward_points]
|
|
355
|
+
* @property {ListingPageFeature} [listing_page]
|
|
356
|
+
* @property {InternationalShipping} [international_shipping]
|
|
534
357
|
*/
|
|
535
358
|
|
|
536
359
|
/**
|
|
@@ -539,1335 +362,1512 @@ const Joi = require("joi");
|
|
|
539
362
|
*/
|
|
540
363
|
|
|
541
364
|
/**
|
|
542
|
-
* @typedef
|
|
543
|
-
* @property {
|
|
365
|
+
* @typedef CommunicationOptinDialogFeature
|
|
366
|
+
* @property {boolean} [visibility] - Shows whether WhatsApp communication is enabled
|
|
544
367
|
*/
|
|
545
368
|
|
|
546
369
|
/**
|
|
547
|
-
* @typedef
|
|
548
|
-
* @property {
|
|
549
|
-
*
|
|
550
|
-
*
|
|
370
|
+
* @typedef DeploymentStoreSelectionFeature
|
|
371
|
+
* @property {boolean} [enabled] - Shows whether selection of store (for
|
|
372
|
+
* deploying the application) is permitted
|
|
373
|
+
* @property {string} [type] - Permitted values are 'hard' and 'soft'. For hard
|
|
374
|
+
* type delivery, store selection is compulsory. For soft type, delivery store
|
|
375
|
+
* selection is optional.
|
|
551
376
|
*/
|
|
552
377
|
|
|
553
378
|
/**
|
|
554
|
-
* @typedef
|
|
555
|
-
* @property {
|
|
556
|
-
*
|
|
557
|
-
*
|
|
558
|
-
* @property {string} [
|
|
559
|
-
*
|
|
560
|
-
* entering domain is available
|
|
561
|
-
* @property {boolean} [show_register_btn] - Shows whether register button is
|
|
562
|
-
* available in the login/landing page
|
|
379
|
+
* @typedef ListingPriceFeature
|
|
380
|
+
* @property {string} [value] - Shows which price to display on PLP if one
|
|
381
|
+
* product has multiple prices (for each size), valid values are 'min', 'max',
|
|
382
|
+
* 'range'. Default value is range.
|
|
383
|
+
* @property {string} [sort] - Sorting of listing price with min or max value.
|
|
384
|
+
* Default value is min.
|
|
563
385
|
*/
|
|
564
386
|
|
|
565
387
|
/**
|
|
566
|
-
* @typedef
|
|
567
|
-
* @property {
|
|
388
|
+
* @typedef ListingPageFeature
|
|
389
|
+
* @property {string} [sort_on]
|
|
568
390
|
*/
|
|
569
391
|
|
|
570
392
|
/**
|
|
571
|
-
* @typedef
|
|
572
|
-
* @property {string} [
|
|
573
|
-
* @property {
|
|
574
|
-
*
|
|
393
|
+
* @typedef CurrencyFeature
|
|
394
|
+
* @property {string[]} [value] - 3-letter currency code
|
|
395
|
+
* @property {string} [type] - If 'explicit', currency formatting shows currency
|
|
396
|
+
* code with price. For explicit or all currency selection.
|
|
397
|
+
* @property {string} [default_currency] - 3-letter code of the default currency
|
|
398
|
+
* used in the application. Default vaule is 'INR'.
|
|
575
399
|
*/
|
|
576
400
|
|
|
577
401
|
/**
|
|
578
|
-
* @typedef
|
|
579
|
-
* @property {
|
|
580
|
-
* @property {string} [link] - Web URL of brand's LinkedIn channel
|
|
581
|
-
* @property {string} [title] - Name of the social media platform, e.g. LinkedIn
|
|
402
|
+
* @typedef RevenueEngineFeature
|
|
403
|
+
* @property {boolean} [enabled] - Enable revenue engine. Default value is false.
|
|
582
404
|
*/
|
|
583
405
|
|
|
584
406
|
/**
|
|
585
|
-
* @typedef
|
|
586
|
-
* @property {
|
|
587
|
-
*
|
|
407
|
+
* @typedef FeedbackFeature
|
|
408
|
+
* @property {boolean} [enabled] - Shows whether customer feedback is enabled on
|
|
409
|
+
* PDP. Default value is false.
|
|
588
410
|
*/
|
|
589
411
|
|
|
590
412
|
/**
|
|
591
|
-
* @typedef
|
|
592
|
-
* @property {
|
|
413
|
+
* @typedef CompareProductsFeature
|
|
414
|
+
* @property {boolean} [enabled] - Shows whether product comparison feature is
|
|
415
|
+
* enabled on PDP
|
|
593
416
|
*/
|
|
594
417
|
|
|
595
418
|
/**
|
|
596
|
-
* @typedef
|
|
597
|
-
* @property {
|
|
598
|
-
*
|
|
599
|
-
* @property {
|
|
600
|
-
*
|
|
601
|
-
*
|
|
419
|
+
* @typedef CartFeature
|
|
420
|
+
* @property {boolean} [gst_input] - Shows whether customer is allowed to enter
|
|
421
|
+
* GST on the cart page for claiming input credits
|
|
422
|
+
* @property {boolean} [staff_selection] - Shows whether staff selection is
|
|
423
|
+
* enabled on cart page
|
|
424
|
+
* @property {boolean} [placing_for_customer] - Shows whether the staff is
|
|
425
|
+
* placing order on behalf of customer. Default value is true.
|
|
426
|
+
* @property {boolean} [google_map] - Allow adding of Google Maps. Default value is true.
|
|
427
|
+
* @property {boolean} [revenue_engine_coupon] - Allow coupon apply and credits,
|
|
428
|
+
* together. Default value is false.
|
|
602
429
|
*/
|
|
603
430
|
|
|
604
431
|
/**
|
|
605
|
-
* @typedef
|
|
606
|
-
* @property {
|
|
607
|
-
*
|
|
608
|
-
*
|
|
432
|
+
* @typedef QrFeature
|
|
433
|
+
* @property {boolean} [application] - Shows whether sharing of mobile app via
|
|
434
|
+
* QR code is allowed. Default value is false.
|
|
435
|
+
* @property {boolean} [products] - Shows whether sharing product via QR code is
|
|
436
|
+
* allowed. Default value is false.
|
|
437
|
+
* @property {boolean} [collections] - Shows whether sharing collection via QR
|
|
438
|
+
* code is allowed. Default value is false.
|
|
609
439
|
*/
|
|
610
440
|
|
|
611
441
|
/**
|
|
612
|
-
* @typedef
|
|
613
|
-
* @property {
|
|
614
|
-
* specific app. The app_id for your MoEngage account is available on the
|
|
615
|
-
* MoEngage Dashboard.
|
|
442
|
+
* @typedef PcrFeature
|
|
443
|
+
* @property {boolean} [staff_selection] - Allow staff selection. Default value is false.
|
|
616
444
|
*/
|
|
617
445
|
|
|
618
446
|
/**
|
|
619
|
-
* @typedef
|
|
620
|
-
* @property {
|
|
447
|
+
* @typedef OrderFeature
|
|
448
|
+
* @property {boolean} [buy_again] - Allow buy again option for order. Default
|
|
449
|
+
* value is false.
|
|
621
450
|
*/
|
|
622
451
|
|
|
623
452
|
/**
|
|
624
|
-
* @typedef
|
|
625
|
-
* @property {
|
|
626
|
-
* @property {string} [address2] - Address of the opted store
|
|
627
|
-
* @property {string} [city] - City of the opted store, e.g. Mumbai
|
|
628
|
-
* @property {string} [country] - Country of the opted store, e.g. India
|
|
629
|
-
* @property {StoreLatLong} [lat_long]
|
|
630
|
-
* @property {number} [pincode] - 6-digit PIN code of the opted store location
|
|
631
|
-
* @property {string} [state] - State of the opted store, e.g. Maharashtra
|
|
453
|
+
* @typedef AppFeatureResponse
|
|
454
|
+
* @property {AppFeature} [feature]
|
|
632
455
|
*/
|
|
633
456
|
|
|
634
457
|
/**
|
|
635
|
-
* @typedef
|
|
636
|
-
* @property {
|
|
637
|
-
*
|
|
458
|
+
* @typedef Currency
|
|
459
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
460
|
+
* of the current sales channel supported currency
|
|
461
|
+
* @property {boolean} [is_active] - Shows currency is enabled or not in current
|
|
462
|
+
* sales channel
|
|
463
|
+
* @property {string} [name] - Name of the currency, e.g Indian Rupee
|
|
464
|
+
* @property {string} [code] - 3-character currency code, e.g. INR, USD, EUR.
|
|
465
|
+
* @property {string} [created_at] - ISO 8601 timestamp of sales channel support
|
|
466
|
+
* currency creation
|
|
467
|
+
* @property {string} [modified_at] - ISO 8601 timestamp of sales channel
|
|
468
|
+
* support currency updation
|
|
469
|
+
* @property {number} [decimal_digits] - Acceptable decimal limits for a given
|
|
470
|
+
* currency, e.g. 1.05$ means upto 2 decimal digits can be accepted as a valid
|
|
471
|
+
* value of a currency.
|
|
472
|
+
* @property {string} [symbol] - Unique symbol for identifying the currency, e.g. ₹
|
|
473
|
+
* @property {string} [country_name]
|
|
474
|
+
* @property {string} [country_code]
|
|
638
475
|
*/
|
|
639
476
|
|
|
640
477
|
/**
|
|
641
|
-
* @typedef
|
|
478
|
+
* @typedef Domain
|
|
479
|
+
* @property {boolean} [verified] - Domain is verified or not. TXT and A records
|
|
480
|
+
* should propagate correctly.
|
|
481
|
+
* @property {boolean} [is_primary] - Domain is primary or not. Primary domain
|
|
482
|
+
* is the default/main domain.
|
|
483
|
+
* @property {boolean} [is_shortlink] - Shortlink is present or not for the domain
|
|
642
484
|
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
643
|
-
* of the
|
|
644
|
-
* @property {
|
|
645
|
-
* @property {
|
|
646
|
-
* @property {string} [display_name] - Display name of the ordering store
|
|
647
|
-
* @property {string} [name] - Store name of the ordering store
|
|
648
|
-
* @property {number} [pincode] - 6-digit PIN Code of the ordering store, e.g. 400001
|
|
649
|
-
* @property {string} [store_code] - Store code of the ordering store, e.g. MUM-102
|
|
650
|
-
* @property {string} [store_type] - Store type of the ordering store, e.g.
|
|
651
|
-
* high_street, mall, warehouse
|
|
652
|
-
* @property {number} [uid] - Ordering store UID
|
|
485
|
+
* of the sales channel domain
|
|
486
|
+
* @property {string} [name]
|
|
487
|
+
* @property {boolean} [is_predefined] - Domain is hosting domain or not.
|
|
653
488
|
*/
|
|
654
489
|
|
|
655
490
|
/**
|
|
656
|
-
* @typedef
|
|
657
|
-
* @property {
|
|
658
|
-
*
|
|
659
|
-
* @property {string} [
|
|
660
|
-
* of the ordering store
|
|
661
|
-
* @property {boolean} [all_stores] - Allow all stores of the ordering stores
|
|
662
|
-
* @property {string} [app] - Alphanumeric ID allotted to an application (sales
|
|
663
|
-
* channel website) created within a business account
|
|
664
|
-
* @property {number[]} [deployed_stores]
|
|
665
|
-
* @property {boolean} [enabled] - Allow ordering stores for current sales channel
|
|
666
|
-
* @property {OrderingStore[]} [items]
|
|
667
|
-
* @property {Page} [page]
|
|
668
|
-
* @property {string} [type] - For hard type delivery, store selection is
|
|
669
|
-
* compulsory. For soft type, delivery store selection is optional.
|
|
491
|
+
* @typedef ApplicationWebsite
|
|
492
|
+
* @property {boolean} [enabled] - Shows whether sales channel website URL is
|
|
493
|
+
* enabled or not
|
|
494
|
+
* @property {string} [basepath] - Base path for the current sales channel website
|
|
670
495
|
*/
|
|
671
496
|
|
|
672
497
|
/**
|
|
673
|
-
* @typedef
|
|
674
|
-
* @property {
|
|
498
|
+
* @typedef ApplicationCors
|
|
499
|
+
* @property {string[]} [domains]
|
|
675
500
|
*/
|
|
676
501
|
|
|
677
502
|
/**
|
|
678
|
-
* @typedef
|
|
679
|
-
* @property {
|
|
503
|
+
* @typedef ApplicationAuth
|
|
504
|
+
* @property {boolean} [enabled] - Shows sales channel auth is enabled or not enabled.
|
|
680
505
|
*/
|
|
681
506
|
|
|
682
507
|
/**
|
|
683
|
-
* @typedef
|
|
684
|
-
* @property {string} [
|
|
685
|
-
*
|
|
686
|
-
*
|
|
687
|
-
* @property {string} [
|
|
688
|
-
*
|
|
689
|
-
*
|
|
690
|
-
* @property {string} [profile_pic] - Hosted URL of profile pic
|
|
508
|
+
* @typedef ApplicationRedirections
|
|
509
|
+
* @property {string} [redirect_from] - Old domain url of the sales channel
|
|
510
|
+
* @property {string} [redirect_to] - New domain URL of the sales channel. Users
|
|
511
|
+
* will be automatically redirected from old domain to new domain.
|
|
512
|
+
* @property {string} [type] - It shows domain redirection type. Permanent
|
|
513
|
+
* redirection is for long time period redirection, and temporary redirection
|
|
514
|
+
* for a short time period.
|
|
691
515
|
*/
|
|
692
516
|
|
|
693
517
|
/**
|
|
694
|
-
* @typedef
|
|
695
|
-
* @property {
|
|
696
|
-
* @property {
|
|
697
|
-
* @property {boolean} [has_previous]
|
|
698
|
-
* @property {number} [item_total]
|
|
699
|
-
* @property {string} [next_id]
|
|
700
|
-
* @property {number} [size]
|
|
701
|
-
* @property {string} type
|
|
518
|
+
* @typedef ApplicationMeta
|
|
519
|
+
* @property {string} [name] - Indicates to name of application meta
|
|
520
|
+
* @property {string} [value] - Value related to application meta name
|
|
702
521
|
*/
|
|
703
522
|
|
|
704
523
|
/**
|
|
705
|
-
* @typedef
|
|
706
|
-
* @property {
|
|
524
|
+
* @typedef SecureUrl
|
|
525
|
+
* @property {string} [secure_url] - Hosted URL of the image
|
|
707
526
|
*/
|
|
708
527
|
|
|
709
528
|
/**
|
|
710
|
-
* @typedef
|
|
711
|
-
* @property {
|
|
712
|
-
* @property {
|
|
713
|
-
* @property {
|
|
529
|
+
* @typedef Application
|
|
530
|
+
* @property {ApplicationWebsite} [website]
|
|
531
|
+
* @property {ApplicationCors} [cors]
|
|
532
|
+
* @property {ApplicationAuth} [auth]
|
|
533
|
+
* @property {string} [description] - It contains detailed information about the
|
|
534
|
+
* sales channel.
|
|
535
|
+
* @property {string} [channel_type] - It indicates different channel types like
|
|
536
|
+
* store, website-and-mobile-apps. Default value is store
|
|
537
|
+
* @property {number} [cache_ttl] - An integer value that specifies the number
|
|
538
|
+
* of seconds until the key expires
|
|
539
|
+
* @property {boolean} [is_internal] - Indicates whether a sales channel is
|
|
540
|
+
* internal or not
|
|
541
|
+
* @property {boolean} [is_active] - Indicates sales channel is active or not active
|
|
542
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
543
|
+
* of the sales channel
|
|
544
|
+
* @property {string} [name] - Name of the sales channel, e.g. Zenz Fashion
|
|
545
|
+
* @property {string} [owner] - The unique identifier (24-digit Mongo Object ID)
|
|
546
|
+
* of owner who owns the application
|
|
547
|
+
* @property {number} [company_id] - Numeric ID allotted to a business account
|
|
548
|
+
* where the sales channel exists
|
|
549
|
+
* @property {string} [token] - Random generated fix length string for sales
|
|
550
|
+
* channel. It is required and auto-generated.
|
|
551
|
+
* @property {ApplicationRedirections[]} [redirections]
|
|
552
|
+
* @property {ApplicationMeta[]} [meta]
|
|
553
|
+
* @property {string} [created_at] - ISO 8601 timestamp of sales channel creation
|
|
554
|
+
* @property {string} [modified_at] - ISO 8601 timestamp of sales channel updation
|
|
555
|
+
* @property {number} [__v] - Version key for tracking revisions. Default value is zero.
|
|
556
|
+
* @property {SecureUrl} [banner]
|
|
557
|
+
* @property {SecureUrl} [logo]
|
|
558
|
+
* @property {SecureUrl} [favicon]
|
|
559
|
+
* @property {Domain[]} [domains]
|
|
560
|
+
* @property {string} [app_type] - It shows application is live or in development mode.
|
|
561
|
+
* @property {SecureUrl} [mobile_logo]
|
|
562
|
+
* @property {Domain} [domain]
|
|
563
|
+
* @property {string} [slug]
|
|
564
|
+
* @property {string} [mode]
|
|
565
|
+
* @property {string} [status]
|
|
566
|
+
* @property {TokenSchema[]} [tokens]
|
|
714
567
|
*/
|
|
715
568
|
|
|
716
569
|
/**
|
|
717
|
-
* @typedef
|
|
718
|
-
* @property {
|
|
719
|
-
*
|
|
720
|
-
* @property {
|
|
721
|
-
* choose the seller on PDP
|
|
722
|
-
* @property {string[]} [similar] - Configuration to show similar products,
|
|
723
|
-
* other products from same seller, other products in same category, other
|
|
724
|
-
* products in same price range, etc.
|
|
725
|
-
* @property {boolean} [update_product_meta] - Allow user to update product
|
|
726
|
-
* meta. Default value is true.
|
|
570
|
+
* @typedef TokenSchema
|
|
571
|
+
* @property {string} [token]
|
|
572
|
+
* @property {Object} [created_by]
|
|
573
|
+
* @property {string} [created_at] - ISO 8601 timestamp of when token created
|
|
727
574
|
*/
|
|
728
575
|
|
|
729
576
|
/**
|
|
730
|
-
* @typedef
|
|
731
|
-
* @property {
|
|
732
|
-
* QR code is allowed. Default value is false.
|
|
733
|
-
* @property {boolean} [collections] - Shows whether sharing collection via QR
|
|
734
|
-
* code is allowed. Default value is false.
|
|
735
|
-
* @property {boolean} [products] - Shows whether sharing product via QR code is
|
|
736
|
-
* allowed. Default value is false.
|
|
577
|
+
* @typedef NotFound
|
|
578
|
+
* @property {string} [message] - Response message for not found
|
|
737
579
|
*/
|
|
738
580
|
|
|
739
581
|
/**
|
|
740
|
-
* @typedef
|
|
741
|
-
* @property {
|
|
742
|
-
* address of the store, should be displayed upon visiting the website
|
|
582
|
+
* @typedef InvalidPayloadRequest
|
|
583
|
+
* @property {string} [message] - Error message when request body payload is improper
|
|
743
584
|
*/
|
|
744
585
|
|
|
745
586
|
/**
|
|
746
|
-
* @typedef
|
|
747
|
-
* @property {
|
|
587
|
+
* @typedef UnhandledError
|
|
588
|
+
* @property {string} [message]
|
|
748
589
|
*/
|
|
749
590
|
|
|
750
591
|
/**
|
|
751
|
-
* @typedef
|
|
752
|
-
* @property {
|
|
753
|
-
* @property {Debit} [debit]
|
|
592
|
+
* @typedef SuccessMessageResponse
|
|
593
|
+
* @property {string} [message] - Success message shown to the user (in a string format)
|
|
754
594
|
*/
|
|
755
595
|
|
|
756
596
|
/**
|
|
757
|
-
* @typedef
|
|
758
|
-
* @property {
|
|
759
|
-
* @property {
|
|
760
|
-
*
|
|
597
|
+
* @typedef CompanyAboutAddress
|
|
598
|
+
* @property {number} [pincode] - 6-digit PIN code of the city, e.g. 400001
|
|
599
|
+
* @property {string} [address1] - Primary address line of the company
|
|
600
|
+
* @property {string} [address2] - Secondary address line of the company
|
|
601
|
+
* @property {string} [city] - City name, e.g. Mumbai
|
|
602
|
+
* @property {string} [state] - State name, e.g. Maharashtra
|
|
603
|
+
* @property {string} [country] - Country name, e.g. India
|
|
604
|
+
* @property {string} [address_type] - Indicates different office types like
|
|
605
|
+
* office, registered, and home.
|
|
761
606
|
*/
|
|
762
607
|
|
|
763
608
|
/**
|
|
764
|
-
* @typedef
|
|
765
|
-
* @property {
|
|
766
|
-
*
|
|
609
|
+
* @typedef UserEmail
|
|
610
|
+
* @property {boolean} [active] - Current email is active or not active
|
|
611
|
+
* @property {boolean} [primary] - Indicates current email is primay email or
|
|
612
|
+
* not primary email of user
|
|
613
|
+
* @property {boolean} [verified] - Indicates current email is verified email or
|
|
614
|
+
* not verified email
|
|
615
|
+
* @property {string} [email] - Email address of the user
|
|
767
616
|
*/
|
|
768
617
|
|
|
769
618
|
/**
|
|
770
|
-
* @typedef
|
|
771
|
-
* @property {
|
|
619
|
+
* @typedef UserPhoneNumber
|
|
620
|
+
* @property {boolean} [active] - Current phone number is active or not active
|
|
621
|
+
* @property {boolean} [primary] - Indicates current phone number is primay or
|
|
622
|
+
* not primary of user
|
|
623
|
+
* @property {boolean} [verified] - Indicates current phone number is verified
|
|
624
|
+
* or not verified
|
|
625
|
+
* @property {number} [country_code] - Country code, e.g. +91
|
|
626
|
+
* @property {string} [phone] - Phone number of the user
|
|
772
627
|
*/
|
|
773
628
|
|
|
774
629
|
/**
|
|
775
|
-
* @typedef
|
|
776
|
-
* @property {
|
|
777
|
-
* @property {
|
|
778
|
-
*
|
|
630
|
+
* @typedef Page
|
|
631
|
+
* @property {number} [item_total]
|
|
632
|
+
* @property {string} [next_id]
|
|
633
|
+
* @property {boolean} [has_previous]
|
|
634
|
+
* @property {boolean} [has_next]
|
|
635
|
+
* @property {number} [current]
|
|
636
|
+
* @property {string} type
|
|
637
|
+
* @property {number} [size]
|
|
779
638
|
*/
|
|
780
639
|
|
|
781
640
|
/**
|
|
782
|
-
* @typedef
|
|
783
|
-
* @property {
|
|
784
|
-
*
|
|
785
|
-
*
|
|
641
|
+
* @typedef ApplicationInformation
|
|
642
|
+
* @property {InformationAddress} [address]
|
|
643
|
+
* @property {InformationSupport} [support]
|
|
644
|
+
* @property {SocialLinks} [social_links]
|
|
645
|
+
* @property {Links[]} [links]
|
|
646
|
+
* @property {string} [copyright_text] - Copyright statement usually seen at the
|
|
647
|
+
* site's footer
|
|
648
|
+
* @property {string} [_id] - Unique identifier (24-digit Mongo Object ID) of
|
|
649
|
+
* the application information
|
|
650
|
+
* @property {BusinessHighlights[]} [business_highlights]
|
|
651
|
+
* @property {string} [application] - Alphanumeric ID allotted to a sales
|
|
652
|
+
* channel application created within a business account
|
|
653
|
+
* @property {string} [created_at] - ISO 8601 timestamp of creation of the
|
|
654
|
+
* application information
|
|
655
|
+
* @property {string} [modified_at] - ISO 8601 timestamp of updation of the
|
|
656
|
+
* application information
|
|
657
|
+
* @property {number} [__v] - Version key for tracking revisions. Default value is zero.
|
|
786
658
|
*/
|
|
787
659
|
|
|
788
660
|
/**
|
|
789
|
-
* @typedef
|
|
790
|
-
* @property {
|
|
791
|
-
* @property {
|
|
792
|
-
* @property {
|
|
793
|
-
* @property {
|
|
794
|
-
* @property {
|
|
795
|
-
* @property {
|
|
796
|
-
* @property {TwitterLink} [twitter]
|
|
797
|
-
* @property {VimeoLink} [vimeo]
|
|
798
|
-
* @property {YoutubeLink} [youtube]
|
|
661
|
+
* @typedef InformationAddress
|
|
662
|
+
* @property {InformationLoc} [loc]
|
|
663
|
+
* @property {string[]} [address_line] - Contact address of the sales channel
|
|
664
|
+
* @property {InformationPhone[]} [phone]
|
|
665
|
+
* @property {string} [city] - Name of the city, e.g. Mumbai
|
|
666
|
+
* @property {string} [country] - Name of the country, e.g. India
|
|
667
|
+
* @property {number} [pincode] - 6-digit PIN Code of the city, e.g. 400001
|
|
799
668
|
*/
|
|
800
669
|
|
|
801
670
|
/**
|
|
802
|
-
* @typedef
|
|
803
|
-
* @property {
|
|
804
|
-
* @property {string} [
|
|
671
|
+
* @typedef InformationPhone
|
|
672
|
+
* @property {string} [code] - Country code for contact number, e.g. +91 (for India)
|
|
673
|
+
* @property {string} [number] - 10-digit mobile number
|
|
805
674
|
*/
|
|
806
675
|
|
|
807
676
|
/**
|
|
808
|
-
* @typedef
|
|
809
|
-
* @property {string} [
|
|
677
|
+
* @typedef InformationSupportPhone
|
|
678
|
+
* @property {string} [code] - Country code for contact number, e.g. +91 (for India)
|
|
679
|
+
* @property {string} [number] - 10-digit mobile number
|
|
680
|
+
* @property {string} [key]
|
|
810
681
|
*/
|
|
811
682
|
|
|
812
683
|
/**
|
|
813
|
-
* @typedef
|
|
814
|
-
* @property {string} [
|
|
815
|
-
* @property {string} [
|
|
684
|
+
* @typedef InformationSupportEmail
|
|
685
|
+
* @property {string} [value] - Value of email.
|
|
686
|
+
* @property {string} [key]
|
|
816
687
|
*/
|
|
817
688
|
|
|
818
689
|
/**
|
|
819
|
-
* @typedef
|
|
820
|
-
* @property {
|
|
821
|
-
* @property {
|
|
822
|
-
* @property {FyndRewards} [fynd_rewards]
|
|
823
|
-
* @property {GoogleMap} [google_map]
|
|
824
|
-
* @property {Gtm} [gtm]
|
|
825
|
-
* @property {Moengage} [moengage]
|
|
826
|
-
* @property {Safetynet} [safetynet]
|
|
827
|
-
* @property {Segment} [segment]
|
|
690
|
+
* @typedef InformationLoc
|
|
691
|
+
* @property {string} [type] - Country code for contact number, e.g. +91 (for India)
|
|
692
|
+
* @property {number[]} [coordinates] - 10-digit mobile number
|
|
828
693
|
*/
|
|
829
694
|
|
|
830
695
|
/**
|
|
831
|
-
* @typedef
|
|
832
|
-
* @property {
|
|
833
|
-
* @property {
|
|
834
|
-
* @property {string} [
|
|
696
|
+
* @typedef InformationSupport
|
|
697
|
+
* @property {InformationSupportPhone[]} [phone]
|
|
698
|
+
* @property {InformationSupportEmail[]} [email]
|
|
699
|
+
* @property {string} [timing] - Working hours of support team, e.g. 9 AM to 9 PM
|
|
700
|
+
*/
|
|
701
|
+
|
|
702
|
+
/**
|
|
703
|
+
* @typedef SocialLinks
|
|
704
|
+
* @property {FacebookLink} [facebook]
|
|
705
|
+
* @property {InstagramLink} [instagram]
|
|
706
|
+
* @property {TwitterLink} [twitter]
|
|
707
|
+
* @property {PinterestLink} [pinterest]
|
|
708
|
+
* @property {GooglePlusLink} [google_plus]
|
|
709
|
+
* @property {YoutubeLink} [youtube]
|
|
710
|
+
* @property {LinkedInLink} [linked_in]
|
|
711
|
+
* @property {VimeoLink} [vimeo]
|
|
712
|
+
* @property {BlogLink} [blog_link]
|
|
713
|
+
*/
|
|
714
|
+
|
|
715
|
+
/**
|
|
716
|
+
* @typedef FacebookLink
|
|
717
|
+
* @property {string} [title] - Name of the social media platform, e.g. Facebook
|
|
718
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
719
|
+
* @property {string} [link] - Web URL of brand's Facebook page
|
|
720
|
+
*/
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
* @typedef InstagramLink
|
|
724
|
+
* @property {string} [title] - Name of the social media platform, e.g. Instagram
|
|
725
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
726
|
+
* @property {string} [link] - Web URL of brand's Instagram page
|
|
835
727
|
*/
|
|
836
728
|
|
|
837
729
|
/**
|
|
838
730
|
* @typedef TwitterLink
|
|
731
|
+
* @property {string} [title] - Name of the social media platform, e.g. Twitter
|
|
839
732
|
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
840
733
|
* @property {string} [link] - Web URL of brand's Twitter account
|
|
841
|
-
* @property {string} [title] - Name of the social media platform, e.g. Twitter
|
|
842
734
|
*/
|
|
843
735
|
|
|
844
736
|
/**
|
|
845
|
-
* @typedef
|
|
846
|
-
* @property {string} [
|
|
737
|
+
* @typedef PinterestLink
|
|
738
|
+
* @property {string} [title] - Name of the social media platform, e.g. Pinterest
|
|
739
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
740
|
+
* @property {string} [link] - Web URL of brand's Pinterest page
|
|
847
741
|
*/
|
|
848
742
|
|
|
849
743
|
/**
|
|
850
|
-
* @typedef
|
|
851
|
-
* @property {
|
|
852
|
-
* @property {string} [
|
|
853
|
-
* @property {
|
|
854
|
-
* not primary email of user
|
|
855
|
-
* @property {boolean} [verified] - Indicates current email is verified email or
|
|
856
|
-
* not verified email
|
|
744
|
+
* @typedef GooglePlusLink
|
|
745
|
+
* @property {string} [title] - Name of the social media platform, e.g. Google+
|
|
746
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
747
|
+
* @property {string} [link] - Web URL of brand's Google+ account
|
|
857
748
|
*/
|
|
858
749
|
|
|
859
750
|
/**
|
|
860
|
-
* @typedef
|
|
861
|
-
* @property {
|
|
862
|
-
* @property {
|
|
863
|
-
* @property {string} [
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
*
|
|
751
|
+
* @typedef YoutubeLink
|
|
752
|
+
* @property {string} [title] - Name of the social media platform, e.g. YouTube
|
|
753
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
754
|
+
* @property {string} [link] - Web URL of brand's YouTube channel
|
|
755
|
+
*/
|
|
756
|
+
|
|
757
|
+
/**
|
|
758
|
+
* @typedef LinkedInLink
|
|
759
|
+
* @property {string} [title] - Name of the social media platform, e.g. LinkedIn
|
|
760
|
+
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
761
|
+
* @property {string} [link] - Web URL of brand's LinkedIn channel
|
|
868
762
|
*/
|
|
869
763
|
|
|
870
764
|
/**
|
|
871
765
|
* @typedef VimeoLink
|
|
766
|
+
* @property {string} [title] - Name of the video hosting platform, e.g. Vimeo
|
|
872
767
|
* @property {string} [icon] - Hosted URL of social icon image shown on the website
|
|
873
768
|
* @property {string} [link] - Web URL of brand's Vimeo channel
|
|
874
|
-
* @property {string} [title] - Name of the video hosting platform, e.g. Vimeo
|
|
875
769
|
*/
|
|
876
770
|
|
|
877
771
|
/**
|
|
878
|
-
* @typedef
|
|
879
|
-
* @property {string} [
|
|
880
|
-
* @property {string} [
|
|
881
|
-
* @property {string} [
|
|
772
|
+
* @typedef BlogLink
|
|
773
|
+
* @property {string} [title] - Name of the brand's blog page
|
|
774
|
+
* @property {string} [icon] - Hosted URL of icon image shown on the website
|
|
775
|
+
* @property {string} [link] - Web URL of brand's blog page
|
|
776
|
+
*/
|
|
777
|
+
|
|
778
|
+
/**
|
|
779
|
+
* @typedef Links
|
|
780
|
+
* @property {string} [title] - Name of the related page or link
|
|
781
|
+
* @property {string} [link] - Web URL for redirecting to a related page
|
|
782
|
+
*/
|
|
783
|
+
|
|
784
|
+
/**
|
|
785
|
+
* @typedef BusinessHighlights
|
|
786
|
+
* @property {string} [_id] - Unique identifier (24-digit Mongo Object ID) of
|
|
787
|
+
* the related business
|
|
788
|
+
* @property {string} [title] - Title of the business highlight, e.g. Superfast Delivery
|
|
789
|
+
* @property {string} [icon] - Hosted URL of icon image representing the
|
|
790
|
+
* business highlight
|
|
791
|
+
* @property {string} [sub_title] - Detailed information about the highlight
|
|
792
|
+
*/
|
|
793
|
+
|
|
794
|
+
/**
|
|
795
|
+
* @typedef ApplicationDetail
|
|
796
|
+
* @property {string} name - Name of the sales channel. It is required.
|
|
797
|
+
* @property {string} [description] - It gives a detailed information about the
|
|
798
|
+
* sales channel. It is required.
|
|
799
|
+
* @property {SecureUrl} [logo]
|
|
800
|
+
* @property {SecureUrl} [mobile_logo]
|
|
801
|
+
* @property {SecureUrl} [favicon]
|
|
802
|
+
* @property {SecureUrl} [banner]
|
|
803
|
+
* @property {Domain} [domain]
|
|
804
|
+
* @property {Domain[]} [domains]
|
|
805
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
806
|
+
* for the sales channel details
|
|
807
|
+
* @property {string} [slug]
|
|
808
|
+
* @property {number} [company_id]
|
|
809
|
+
*/
|
|
810
|
+
|
|
811
|
+
/**
|
|
812
|
+
* @typedef CurrenciesResponse
|
|
813
|
+
* @property {Currency[]} [items]
|
|
814
|
+
*/
|
|
815
|
+
|
|
816
|
+
/**
|
|
817
|
+
* @typedef DefaultCurrency
|
|
818
|
+
* @property {string} [ref] - The unique identifier (24-digit Mongo Object ID)
|
|
819
|
+
* of the default currency
|
|
820
|
+
* @property {string} [code] - 3-character code of the default currency, e.g.
|
|
821
|
+
* INR, EUR, USD
|
|
822
|
+
*/
|
|
823
|
+
|
|
824
|
+
/**
|
|
825
|
+
* @typedef AppCurrencyResponse
|
|
826
|
+
* @property {string} [application] - Alphanumeric ID allotted to an application
|
|
827
|
+
* (sales channel website) created within a business account
|
|
828
|
+
* @property {DefaultCurrency} [default_currency]
|
|
829
|
+
* @property {Currency[]} [supported_currency]
|
|
830
|
+
* @property {string} [_id]
|
|
831
|
+
* @property {string} [created_at]
|
|
832
|
+
* @property {string} [modified_at]
|
|
833
|
+
*/
|
|
834
|
+
|
|
835
|
+
/**
|
|
836
|
+
* @typedef StoreLatLong
|
|
837
|
+
* @property {string} [type] - Coordinates type of the opted store
|
|
838
|
+
* @property {number[]} [coordinates]
|
|
839
|
+
*/
|
|
840
|
+
|
|
841
|
+
/**
|
|
842
|
+
* @typedef OptedStoreAddress
|
|
843
|
+
* @property {string} [state] - State of the opted store, e.g. Maharashtra
|
|
844
|
+
* @property {string} [address1] - Address of the opted store
|
|
845
|
+
* @property {StoreLatLong} [lat_long]
|
|
846
|
+
* @property {string} [address2] - Address of the opted store
|
|
847
|
+
* @property {number} [pincode] - 6-digit PIN code of the opted store location
|
|
848
|
+
* @property {string} [country] - Country of the opted store, e.g. India
|
|
849
|
+
* @property {string} [city] - City of the opted store, e.g. Mumbai
|
|
850
|
+
*/
|
|
851
|
+
|
|
852
|
+
/**
|
|
853
|
+
* @typedef OrderingStore
|
|
854
|
+
* @property {OptedStoreAddress} [address]
|
|
855
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
856
|
+
* of the ordering store
|
|
857
|
+
* @property {number} [uid] - Ordering store UID
|
|
858
|
+
* @property {string} [name] - Store name of the ordering store
|
|
859
|
+
* @property {string} [display_name] - Display name of the ordering store
|
|
860
|
+
* @property {string} [store_type] - Store type of the ordering store, e.g.
|
|
861
|
+
* high_street, mall, warehouse
|
|
862
|
+
* @property {string} [store_code] - Store code of the ordering store, e.g. MUM-102
|
|
863
|
+
* @property {number} [pincode] - 6-digit PIN Code of the ordering store, e.g. 400001
|
|
864
|
+
* @property {string} [code] - Code of the ordering store (usually same as Store Code)
|
|
865
|
+
*/
|
|
866
|
+
|
|
867
|
+
/**
|
|
868
|
+
* @typedef OrderingStores
|
|
869
|
+
* @property {Page} [page]
|
|
870
|
+
* @property {OrderingStore[]} [items]
|
|
871
|
+
* @property {number[]} [deployed_stores]
|
|
872
|
+
* @property {boolean} [all_stores] - Allow all stores of the ordering stores
|
|
873
|
+
* @property {boolean} [enabled] - Allow ordering stores for current sales channel
|
|
874
|
+
* @property {string} [type] - For hard type delivery, store selection is
|
|
875
|
+
* compulsory. For soft type, delivery store selection is optional.
|
|
876
|
+
* @property {string} [_id] - The unique identifier (24-digit Mongo Object ID)
|
|
877
|
+
* of the ordering store
|
|
878
|
+
* @property {string} [app] - Alphanumeric ID allotted to an application (sales
|
|
879
|
+
* channel website) created within a business account
|
|
880
|
+
* @property {number} [__v] - Version key for tracking ordering stores. Default
|
|
881
|
+
* value is zero.
|
|
882
882
|
*/
|
|
883
883
|
|
|
884
884
|
class ConfigurationApplicationModel {
|
|
885
|
-
/** @returns {
|
|
886
|
-
static
|
|
885
|
+
/** @returns {ApplicationAboutResponse} */
|
|
886
|
+
static ApplicationAboutResponse() {
|
|
887
887
|
return Joi.object({
|
|
888
|
-
|
|
889
|
-
application_id: Joi.string().allow(""),
|
|
888
|
+
application_info: ConfigurationApplicationModel.ApplicationInfo(),
|
|
890
889
|
});
|
|
891
890
|
}
|
|
892
891
|
|
|
893
|
-
/** @returns {
|
|
894
|
-
static
|
|
892
|
+
/** @returns {ApplicationInfo} */
|
|
893
|
+
static ApplicationInfo() {
|
|
895
894
|
return Joi.object({
|
|
895
|
+
company_info: ConfigurationApplicationModel.CompanyInfo(),
|
|
896
|
+
owner_info: ConfigurationApplicationModel.OwnerInfo(),
|
|
896
897
|
_id: Joi.string().allow(""),
|
|
897
|
-
|
|
898
|
+
domain: ConfigurationApplicationModel.Domain(),
|
|
899
|
+
website: ConfigurationApplicationModel.ApplicationWebsite(),
|
|
900
|
+
cors: ConfigurationApplicationModel.ApplicationCors(),
|
|
901
|
+
description: Joi.string().allow(""),
|
|
902
|
+
name: Joi.string().allow(""),
|
|
903
|
+
meta: Joi.array().items(ConfigurationApplicationModel.ApplicationMeta()),
|
|
904
|
+
token: Joi.string().allow(""),
|
|
905
|
+
secret: Joi.string().allow(""),
|
|
898
906
|
created_at: Joi.string().allow(""),
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
),
|
|
907
|
+
banner: ConfigurationApplicationModel.SecureUrl(),
|
|
908
|
+
logo: ConfigurationApplicationModel.SecureUrl(),
|
|
909
|
+
is_active: Joi.boolean(),
|
|
910
|
+
mode: Joi.string().allow(""),
|
|
911
|
+
tokens: Joi.array().items(ConfigurationApplicationModel.TokenSchema()),
|
|
912
|
+
domains: Joi.array().items(ConfigurationApplicationModel.Domain()),
|
|
913
|
+
favicon: ConfigurationApplicationModel.SecureUrl(),
|
|
914
|
+
mobile_logo: ConfigurationApplicationModel.SecureUrl(),
|
|
915
|
+
slug: Joi.string().allow(""),
|
|
904
916
|
});
|
|
905
917
|
}
|
|
906
918
|
|
|
907
|
-
/** @returns {
|
|
908
|
-
static
|
|
919
|
+
/** @returns {CompanyInfo} */
|
|
920
|
+
static CompanyInfo() {
|
|
909
921
|
return Joi.object({
|
|
910
|
-
__v: Joi.number(),
|
|
911
922
|
_id: Joi.string().allow(""),
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
pcr: ConfigurationApplicationModel.PcrFeature(),
|
|
921
|
-
product_detail: ConfigurationApplicationModel.ProductDetailFeature(),
|
|
922
|
-
qr: ConfigurationApplicationModel.QrFeature(),
|
|
923
|
-
registration_page: ConfigurationApplicationModel.RegistrationPageFeature(),
|
|
923
|
+
uid: Joi.number(),
|
|
924
|
+
created_on: Joi.string().allow(""),
|
|
925
|
+
is_active: Joi.boolean(),
|
|
926
|
+
name: Joi.string().allow(""),
|
|
927
|
+
addresses: Joi.array().items(
|
|
928
|
+
ConfigurationApplicationModel.CompanyAboutAddress()
|
|
929
|
+
),
|
|
930
|
+
notification_emails: Joi.array().items(Joi.string().allow("")),
|
|
924
931
|
});
|
|
925
932
|
}
|
|
926
933
|
|
|
927
|
-
/** @returns {
|
|
928
|
-
static
|
|
934
|
+
/** @returns {OwnerInfo} */
|
|
935
|
+
static OwnerInfo() {
|
|
929
936
|
return Joi.object({
|
|
930
|
-
|
|
937
|
+
_id: Joi.string().allow(""),
|
|
938
|
+
emails: Joi.array().items(ConfigurationApplicationModel.UserEmail()),
|
|
939
|
+
phone_numbers: Joi.array().items(
|
|
940
|
+
ConfigurationApplicationModel.UserPhoneNumber()
|
|
941
|
+
),
|
|
942
|
+
first_name: Joi.string().allow(""),
|
|
943
|
+
last_name: Joi.string().allow(""),
|
|
944
|
+
profile_pic: Joi.string().allow(""),
|
|
931
945
|
});
|
|
932
946
|
}
|
|
933
947
|
|
|
934
|
-
/** @returns {
|
|
935
|
-
static
|
|
948
|
+
/** @returns {SupportedLanguage} */
|
|
949
|
+
static SupportedLanguage() {
|
|
936
950
|
return Joi.object({
|
|
937
|
-
__v: Joi.number(),
|
|
938
|
-
_id: Joi.string().allow(""),
|
|
939
|
-
app_type: Joi.string().allow(""),
|
|
940
|
-
auth: ConfigurationApplicationModel.ApplicationAuth(),
|
|
941
|
-
banner: ConfigurationApplicationModel.SecureUrl(),
|
|
942
|
-
cache_ttl: Joi.number(),
|
|
943
|
-
channel_type: Joi.string().allow(""),
|
|
944
|
-
company_id: Joi.number(),
|
|
945
|
-
cors: ConfigurationApplicationModel.ApplicationCors(),
|
|
946
|
-
created_at: Joi.string().allow(""),
|
|
947
|
-
description: Joi.string().allow(""),
|
|
948
|
-
domain: ConfigurationApplicationModel.Domain(),
|
|
949
|
-
domains: Joi.array().items(ConfigurationApplicationModel.Domain()),
|
|
950
|
-
favicon: ConfigurationApplicationModel.SecureUrl(),
|
|
951
|
-
is_active: Joi.boolean(),
|
|
952
|
-
is_internal: Joi.boolean(),
|
|
953
|
-
logo: ConfigurationApplicationModel.SecureUrl(),
|
|
954
|
-
meta: Joi.array().items(ConfigurationApplicationModel.ApplicationMeta()),
|
|
955
|
-
mobile_logo: ConfigurationApplicationModel.SecureUrl(),
|
|
956
|
-
mode: Joi.string().allow(""),
|
|
957
|
-
modified_at: Joi.string().allow(""),
|
|
958
951
|
name: Joi.string().allow(""),
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
952
|
+
code: Joi.string().allow(""),
|
|
953
|
+
});
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
/** @returns {LanguageResponse} */
|
|
957
|
+
static LanguageResponse() {
|
|
958
|
+
return Joi.object({
|
|
959
|
+
items: Joi.array().items(
|
|
960
|
+
ConfigurationApplicationModel.SupportedLanguage()
|
|
962
961
|
),
|
|
963
|
-
slug: Joi.string().allow(""),
|
|
964
|
-
status: Joi.string().allow(""),
|
|
965
|
-
token: Joi.string().allow(""),
|
|
966
|
-
tokens: Joi.array().items(ConfigurationApplicationModel.TokenSchema()),
|
|
967
|
-
website: ConfigurationApplicationModel.ApplicationWebsite(),
|
|
968
962
|
});
|
|
969
963
|
}
|
|
970
964
|
|
|
971
|
-
/** @returns {
|
|
972
|
-
static
|
|
965
|
+
/** @returns {AppStaffResponse} */
|
|
966
|
+
static AppStaffResponse() {
|
|
973
967
|
return Joi.object({
|
|
974
|
-
|
|
968
|
+
staff_users: Joi.array().items(ConfigurationApplicationModel.AppStaff()),
|
|
969
|
+
});
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
/** @returns {AppStaffListResponse} */
|
|
973
|
+
static AppStaffListResponse() {
|
|
974
|
+
return Joi.object({
|
|
975
|
+
page: ConfigurationApplicationModel.Page(),
|
|
976
|
+
items: Joi.array().items(ConfigurationApplicationModel.AppStaff()),
|
|
975
977
|
});
|
|
976
978
|
}
|
|
977
979
|
|
|
978
|
-
/** @returns {
|
|
979
|
-
static
|
|
980
|
+
/** @returns {OrderingStoreSelectRequest} */
|
|
981
|
+
static OrderingStoreSelectRequest() {
|
|
980
982
|
return Joi.object({
|
|
981
|
-
|
|
983
|
+
ordering_store: ConfigurationApplicationModel.OrderingStoreSelect().required(),
|
|
982
984
|
});
|
|
983
985
|
}
|
|
984
986
|
|
|
985
|
-
/** @returns {
|
|
986
|
-
static
|
|
987
|
+
/** @returns {OrderingStoreSelect} */
|
|
988
|
+
static OrderingStoreSelect() {
|
|
987
989
|
return Joi.object({
|
|
988
|
-
|
|
990
|
+
uid: Joi.number().required(),
|
|
989
991
|
});
|
|
990
992
|
}
|
|
991
993
|
|
|
992
|
-
/** @returns {
|
|
993
|
-
static
|
|
994
|
+
/** @returns {AppStaff} */
|
|
995
|
+
static AppStaff() {
|
|
994
996
|
return Joi.object({
|
|
995
997
|
_id: Joi.string().allow(""),
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
slug: Joi.string().allow(""),
|
|
998
|
+
order_incent: Joi.boolean(),
|
|
999
|
+
stores: Joi.array().items(Joi.number()),
|
|
1000
|
+
application: Joi.string().allow(""),
|
|
1001
|
+
title: Joi.string().allow(""),
|
|
1002
|
+
user: Joi.string().allow(""),
|
|
1003
|
+
employee_code: Joi.string().allow(""),
|
|
1004
|
+
first_name: Joi.string().allow(""),
|
|
1005
|
+
last_name: Joi.string().allow(""),
|
|
1006
|
+
profile_pic_url: Joi.string().allow(""),
|
|
1006
1007
|
});
|
|
1007
1008
|
}
|
|
1008
1009
|
|
|
1009
|
-
/** @returns {
|
|
1010
|
-
static
|
|
1010
|
+
/** @returns {AppTokenResponse} */
|
|
1011
|
+
static AppTokenResponse() {
|
|
1011
1012
|
return Joi.object({
|
|
1013
|
+
tokens: ConfigurationApplicationModel.Tokens(),
|
|
1012
1014
|
_id: Joi.string().allow(""),
|
|
1013
|
-
|
|
1014
|
-
company_info: ConfigurationApplicationModel.CompanyInfo(),
|
|
1015
|
-
cors: ConfigurationApplicationModel.ApplicationCors(),
|
|
1015
|
+
application: Joi.string().allow(""),
|
|
1016
1016
|
created_at: Joi.string().allow(""),
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
domains: Joi.array().items(ConfigurationApplicationModel.Domain()),
|
|
1020
|
-
favicon: ConfigurationApplicationModel.SecureUrl(),
|
|
1021
|
-
is_active: Joi.boolean(),
|
|
1022
|
-
logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1023
|
-
meta: Joi.array().items(ConfigurationApplicationModel.ApplicationMeta()),
|
|
1024
|
-
mobile_logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1025
|
-
mode: Joi.string().allow(""),
|
|
1026
|
-
name: Joi.string().allow(""),
|
|
1027
|
-
owner_info: ConfigurationApplicationModel.OwnerInfo(),
|
|
1028
|
-
secret: Joi.string().allow(""),
|
|
1029
|
-
slug: Joi.string().allow(""),
|
|
1030
|
-
token: Joi.string().allow(""),
|
|
1031
|
-
tokens: Joi.array().items(ConfigurationApplicationModel.TokenSchema()),
|
|
1032
|
-
website: ConfigurationApplicationModel.ApplicationWebsite(),
|
|
1017
|
+
modified_at: Joi.string().allow(""),
|
|
1018
|
+
__v: Joi.number(),
|
|
1033
1019
|
});
|
|
1034
1020
|
}
|
|
1035
1021
|
|
|
1036
|
-
/** @returns {
|
|
1037
|
-
static
|
|
1022
|
+
/** @returns {Tokens} */
|
|
1023
|
+
static Tokens() {
|
|
1038
1024
|
return Joi.object({
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
),
|
|
1046
|
-
|
|
1047
|
-
created_at: Joi.string().allow(""),
|
|
1048
|
-
links: Joi.array().items(ConfigurationApplicationModel.Links()),
|
|
1049
|
-
modified_at: Joi.string().allow(""),
|
|
1050
|
-
social_links: ConfigurationApplicationModel.SocialLinks(),
|
|
1051
|
-
support: ConfigurationApplicationModel.InformationSupport(),
|
|
1025
|
+
firebase: ConfigurationApplicationModel.Firebase(),
|
|
1026
|
+
moengage: ConfigurationApplicationModel.Moengage(),
|
|
1027
|
+
segment: ConfigurationApplicationModel.Segment(),
|
|
1028
|
+
gtm: ConfigurationApplicationModel.Gtm(),
|
|
1029
|
+
freshchat: ConfigurationApplicationModel.Freshchat(),
|
|
1030
|
+
safetynet: ConfigurationApplicationModel.Safetynet(),
|
|
1031
|
+
fynd_rewards: ConfigurationApplicationModel.FyndRewards(),
|
|
1032
|
+
google_map: ConfigurationApplicationModel.GoogleMap(),
|
|
1052
1033
|
});
|
|
1053
1034
|
}
|
|
1054
1035
|
|
|
1055
|
-
/** @returns {
|
|
1056
|
-
static
|
|
1036
|
+
/** @returns {Firebase} */
|
|
1037
|
+
static Firebase() {
|
|
1057
1038
|
return Joi.object({
|
|
1058
|
-
|
|
1059
|
-
|
|
1039
|
+
credentials: ConfigurationApplicationModel.Credentials(),
|
|
1040
|
+
enabled: Joi.boolean(),
|
|
1060
1041
|
});
|
|
1061
1042
|
}
|
|
1062
1043
|
|
|
1063
|
-
/** @returns {
|
|
1064
|
-
static
|
|
1044
|
+
/** @returns {Credentials} */
|
|
1045
|
+
static Credentials() {
|
|
1065
1046
|
return Joi.object({
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1047
|
+
ios: ConfigurationApplicationModel.Ios(),
|
|
1048
|
+
android: ConfigurationApplicationModel.Android(),
|
|
1049
|
+
project_id: Joi.string().allow(""),
|
|
1050
|
+
gcm_sender_id: Joi.string().allow(""),
|
|
1051
|
+
application_id: Joi.string().allow(""),
|
|
1052
|
+
api_key: Joi.string().allow(""),
|
|
1069
1053
|
});
|
|
1070
1054
|
}
|
|
1071
1055
|
|
|
1072
|
-
/** @returns {
|
|
1073
|
-
static
|
|
1056
|
+
/** @returns {Ios} */
|
|
1057
|
+
static Ios() {
|
|
1074
1058
|
return Joi.object({
|
|
1075
|
-
|
|
1076
|
-
|
|
1059
|
+
application_id: Joi.string().allow(""),
|
|
1060
|
+
api_key: Joi.string().allow(""),
|
|
1077
1061
|
});
|
|
1078
1062
|
}
|
|
1079
1063
|
|
|
1080
|
-
/** @returns {
|
|
1081
|
-
static
|
|
1064
|
+
/** @returns {Android} */
|
|
1065
|
+
static Android() {
|
|
1082
1066
|
return Joi.object({
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
employee_code: Joi.string().allow(""),
|
|
1086
|
-
first_name: Joi.string().allow(""),
|
|
1087
|
-
last_name: Joi.string().allow(""),
|
|
1088
|
-
order_incent: Joi.boolean(),
|
|
1089
|
-
profile_pic_url: Joi.string().allow(""),
|
|
1090
|
-
stores: Joi.array().items(Joi.number()),
|
|
1091
|
-
title: Joi.string().allow(""),
|
|
1092
|
-
user: Joi.string().allow(""),
|
|
1067
|
+
application_id: Joi.string().allow(""),
|
|
1068
|
+
api_key: Joi.string().allow(""),
|
|
1093
1069
|
});
|
|
1094
1070
|
}
|
|
1095
1071
|
|
|
1096
|
-
/** @returns {
|
|
1097
|
-
static
|
|
1072
|
+
/** @returns {Moengage} */
|
|
1073
|
+
static Moengage() {
|
|
1098
1074
|
return Joi.object({
|
|
1099
|
-
|
|
1100
|
-
|
|
1075
|
+
credentials: ConfigurationApplicationModel.MoengageCredentials(),
|
|
1076
|
+
enabled: Joi.boolean(),
|
|
1101
1077
|
});
|
|
1102
1078
|
}
|
|
1103
1079
|
|
|
1104
|
-
/** @returns {
|
|
1105
|
-
static
|
|
1080
|
+
/** @returns {MoengageCredentials} */
|
|
1081
|
+
static MoengageCredentials() {
|
|
1106
1082
|
return Joi.object({
|
|
1107
|
-
|
|
1083
|
+
app_id: Joi.string().allow(""),
|
|
1108
1084
|
});
|
|
1109
1085
|
}
|
|
1110
1086
|
|
|
1111
|
-
/** @returns {
|
|
1112
|
-
static
|
|
1087
|
+
/** @returns {Segment} */
|
|
1088
|
+
static Segment() {
|
|
1113
1089
|
return Joi.object({
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
application: Joi.string().allow(""),
|
|
1117
|
-
created_at: Joi.string().allow(""),
|
|
1118
|
-
modified_at: Joi.string().allow(""),
|
|
1119
|
-
tokens: ConfigurationApplicationModel.Tokens(),
|
|
1090
|
+
credentials: ConfigurationApplicationModel.SegmentCredentials(),
|
|
1091
|
+
enabled: Joi.boolean(),
|
|
1120
1092
|
});
|
|
1121
1093
|
}
|
|
1122
1094
|
|
|
1123
|
-
/** @returns {
|
|
1124
|
-
static
|
|
1095
|
+
/** @returns {SegmentCredentials} */
|
|
1096
|
+
static SegmentCredentials() {
|
|
1125
1097
|
return Joi.object({
|
|
1126
|
-
|
|
1127
|
-
link: Joi.string().allow(""),
|
|
1128
|
-
title: Joi.string().allow(""),
|
|
1098
|
+
write_key: Joi.string().allow(""),
|
|
1129
1099
|
});
|
|
1130
1100
|
}
|
|
1131
1101
|
|
|
1132
|
-
/** @returns {
|
|
1133
|
-
static
|
|
1102
|
+
/** @returns {Gtm} */
|
|
1103
|
+
static Gtm() {
|
|
1134
1104
|
return Joi.object({
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
sub_title: Joi.string().allow(""),
|
|
1138
|
-
title: Joi.string().allow(""),
|
|
1105
|
+
credentials: ConfigurationApplicationModel.GtmCredentials(),
|
|
1106
|
+
enabled: Joi.boolean(),
|
|
1139
1107
|
});
|
|
1140
1108
|
}
|
|
1141
1109
|
|
|
1142
|
-
/** @returns {
|
|
1143
|
-
static
|
|
1110
|
+
/** @returns {GtmCredentials} */
|
|
1111
|
+
static GtmCredentials() {
|
|
1144
1112
|
return Joi.object({
|
|
1145
|
-
|
|
1146
|
-
gst_input: Joi.boolean(),
|
|
1147
|
-
placing_for_customer: Joi.boolean(),
|
|
1148
|
-
revenue_engine_coupon: Joi.boolean(),
|
|
1149
|
-
staff_selection: Joi.boolean(),
|
|
1113
|
+
api_key: Joi.string().allow(""),
|
|
1150
1114
|
});
|
|
1151
1115
|
}
|
|
1152
1116
|
|
|
1153
|
-
/** @returns {
|
|
1154
|
-
static
|
|
1117
|
+
/** @returns {Freshchat} */
|
|
1118
|
+
static Freshchat() {
|
|
1155
1119
|
return Joi.object({
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
currency: ConfigurationApplicationModel.CurrencyFeature(),
|
|
1159
|
-
deployment_store_selection: ConfigurationApplicationModel.DeploymentStoreSelectionFeature(),
|
|
1160
|
-
feedback: ConfigurationApplicationModel.FeedbackFeature(),
|
|
1161
|
-
international_shipping: ConfigurationApplicationModel.InternationalShipping(),
|
|
1162
|
-
listing_page: ConfigurationApplicationModel.ListingPageFeature(),
|
|
1163
|
-
listing_price: ConfigurationApplicationModel.ListingPriceFeature(),
|
|
1164
|
-
revenue_engine: ConfigurationApplicationModel.RevenueEngineFeature(),
|
|
1165
|
-
reward_points: ConfigurationApplicationModel.RewardPointsConfig(),
|
|
1120
|
+
credentials: ConfigurationApplicationModel.FreshchatCredentials(),
|
|
1121
|
+
enabled: Joi.boolean(),
|
|
1166
1122
|
});
|
|
1167
1123
|
}
|
|
1168
1124
|
|
|
1169
|
-
/** @returns {
|
|
1170
|
-
static
|
|
1125
|
+
/** @returns {FreshchatCredentials} */
|
|
1126
|
+
static FreshchatCredentials() {
|
|
1171
1127
|
return Joi.object({
|
|
1172
|
-
|
|
1128
|
+
app_id: Joi.string().allow(""),
|
|
1129
|
+
app_key: Joi.string().allow(""),
|
|
1130
|
+
web_token: Joi.string().allow(""),
|
|
1173
1131
|
});
|
|
1174
1132
|
}
|
|
1175
1133
|
|
|
1176
|
-
/** @returns {
|
|
1177
|
-
static
|
|
1134
|
+
/** @returns {Safetynet} */
|
|
1135
|
+
static Safetynet() {
|
|
1178
1136
|
return Joi.object({
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
address2: Joi.string().allow(""),
|
|
1182
|
-
city: Joi.string().allow(""),
|
|
1183
|
-
country: Joi.string().allow(""),
|
|
1184
|
-
pincode: Joi.number(),
|
|
1185
|
-
state: Joi.string().allow(""),
|
|
1137
|
+
credentials: ConfigurationApplicationModel.SafetynetCredentials(),
|
|
1138
|
+
enabled: Joi.boolean(),
|
|
1186
1139
|
});
|
|
1187
1140
|
}
|
|
1188
1141
|
|
|
1189
|
-
/** @returns {
|
|
1190
|
-
static
|
|
1142
|
+
/** @returns {SafetynetCredentials} */
|
|
1143
|
+
static SafetynetCredentials() {
|
|
1191
1144
|
return Joi.object({
|
|
1192
|
-
|
|
1193
|
-
addresses: Joi.array().items(
|
|
1194
|
-
ConfigurationApplicationModel.CompanyAboutAddress()
|
|
1195
|
-
),
|
|
1196
|
-
created_on: Joi.string().allow(""),
|
|
1197
|
-
is_active: Joi.boolean(),
|
|
1198
|
-
name: Joi.string().allow(""),
|
|
1199
|
-
notification_emails: Joi.array().items(Joi.string().allow("")),
|
|
1200
|
-
uid: Joi.number(),
|
|
1145
|
+
api_key: Joi.string().allow(""),
|
|
1201
1146
|
});
|
|
1202
1147
|
}
|
|
1203
1148
|
|
|
1204
|
-
/** @returns {
|
|
1205
|
-
static
|
|
1149
|
+
/** @returns {FyndRewards} */
|
|
1150
|
+
static FyndRewards() {
|
|
1206
1151
|
return Joi.object({
|
|
1207
|
-
|
|
1152
|
+
credentials: ConfigurationApplicationModel.FyndRewardsCredentials(),
|
|
1208
1153
|
});
|
|
1209
1154
|
}
|
|
1210
1155
|
|
|
1211
|
-
/** @returns {
|
|
1212
|
-
static
|
|
1156
|
+
/** @returns {FyndRewardsCredentials} */
|
|
1157
|
+
static FyndRewardsCredentials() {
|
|
1213
1158
|
return Joi.object({
|
|
1214
|
-
|
|
1215
|
-
api_key: Joi.string().allow(""),
|
|
1216
|
-
application_id: Joi.string().allow(""),
|
|
1217
|
-
gcm_sender_id: Joi.string().allow(""),
|
|
1218
|
-
ios: ConfigurationApplicationModel.Ios(),
|
|
1219
|
-
project_id: Joi.string().allow(""),
|
|
1159
|
+
public_key: Joi.string().allow(""),
|
|
1220
1160
|
});
|
|
1221
1161
|
}
|
|
1222
1162
|
|
|
1223
|
-
/** @returns {
|
|
1224
|
-
static
|
|
1163
|
+
/** @returns {GoogleMap} */
|
|
1164
|
+
static GoogleMap() {
|
|
1225
1165
|
return Joi.object({
|
|
1226
|
-
|
|
1166
|
+
credentials: ConfigurationApplicationModel.GoogleMapCredentials(),
|
|
1227
1167
|
});
|
|
1228
1168
|
}
|
|
1229
1169
|
|
|
1230
|
-
/** @returns {
|
|
1231
|
-
static
|
|
1170
|
+
/** @returns {GoogleMapCredentials} */
|
|
1171
|
+
static GoogleMapCredentials() {
|
|
1232
1172
|
return Joi.object({
|
|
1233
|
-
|
|
1173
|
+
api_key: Joi.string().allow(""),
|
|
1234
1174
|
});
|
|
1235
1175
|
}
|
|
1236
1176
|
|
|
1237
|
-
/** @returns {
|
|
1238
|
-
static
|
|
1177
|
+
/** @returns {RewardPointsConfig} */
|
|
1178
|
+
static RewardPointsConfig() {
|
|
1239
1179
|
return Joi.object({
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
country_code: Joi.string().allow(""),
|
|
1243
|
-
country_name: Joi.string().allow(""),
|
|
1244
|
-
created_at: Joi.string().allow(""),
|
|
1245
|
-
decimal_digits: Joi.number(),
|
|
1246
|
-
is_active: Joi.boolean(),
|
|
1247
|
-
modified_at: Joi.string().allow(""),
|
|
1248
|
-
name: Joi.string().allow(""),
|
|
1249
|
-
symbol: Joi.string().allow(""),
|
|
1180
|
+
credit: ConfigurationApplicationModel.Credit(),
|
|
1181
|
+
debit: ConfigurationApplicationModel.Debit(),
|
|
1250
1182
|
});
|
|
1251
1183
|
}
|
|
1252
1184
|
|
|
1253
|
-
/** @returns {
|
|
1254
|
-
static
|
|
1185
|
+
/** @returns {Credit} */
|
|
1186
|
+
static Credit() {
|
|
1255
1187
|
return Joi.object({
|
|
1256
|
-
|
|
1257
|
-
type: Joi.string().allow(""),
|
|
1258
|
-
value: Joi.array().items(Joi.string().allow("")),
|
|
1188
|
+
enabled: Joi.boolean(),
|
|
1259
1189
|
});
|
|
1260
1190
|
}
|
|
1261
1191
|
|
|
1262
1192
|
/** @returns {Debit} */
|
|
1263
1193
|
static Debit() {
|
|
1264
1194
|
return Joi.object({
|
|
1265
|
-
auto_apply: Joi.boolean(),
|
|
1266
1195
|
enabled: Joi.boolean(),
|
|
1196
|
+
auto_apply: Joi.boolean(),
|
|
1267
1197
|
strategy_channel: Joi.string().allow(""),
|
|
1268
1198
|
});
|
|
1269
1199
|
}
|
|
1270
1200
|
|
|
1271
|
-
/** @returns {
|
|
1272
|
-
static
|
|
1201
|
+
/** @returns {ProductDetailFeature} */
|
|
1202
|
+
static ProductDetailFeature() {
|
|
1273
1203
|
return Joi.object({
|
|
1274
|
-
|
|
1275
|
-
|
|
1204
|
+
similar: Joi.array().items(Joi.string().allow("")),
|
|
1205
|
+
seller_selection: Joi.boolean(),
|
|
1206
|
+
update_product_meta: Joi.boolean(),
|
|
1207
|
+
request_product: Joi.boolean(),
|
|
1276
1208
|
});
|
|
1277
1209
|
}
|
|
1278
1210
|
|
|
1279
|
-
/** @returns {
|
|
1280
|
-
static
|
|
1211
|
+
/** @returns {LaunchPage} */
|
|
1212
|
+
static LaunchPage() {
|
|
1281
1213
|
return Joi.object({
|
|
1282
|
-
|
|
1283
|
-
|
|
1214
|
+
page_type: Joi.string().allow(""),
|
|
1215
|
+
params: Joi.any(),
|
|
1216
|
+
query: Joi.any(),
|
|
1284
1217
|
});
|
|
1285
1218
|
}
|
|
1286
1219
|
|
|
1287
|
-
/** @returns {
|
|
1288
|
-
static
|
|
1220
|
+
/** @returns {LandingPageFeature} */
|
|
1221
|
+
static LandingPageFeature() {
|
|
1289
1222
|
return Joi.object({
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
verified: Joi.boolean(),
|
|
1223
|
+
launch_page: ConfigurationApplicationModel.LaunchPage(),
|
|
1224
|
+
continue_as_guest: Joi.boolean(),
|
|
1225
|
+
login_btn_text: Joi.string().allow(""),
|
|
1226
|
+
show_domain_textbox: Joi.boolean(),
|
|
1227
|
+
show_register_btn: Joi.boolean(),
|
|
1296
1228
|
});
|
|
1297
1229
|
}
|
|
1298
1230
|
|
|
1299
|
-
/** @returns {
|
|
1300
|
-
static
|
|
1231
|
+
/** @returns {RegistrationPageFeature} */
|
|
1232
|
+
static RegistrationPageFeature() {
|
|
1301
1233
|
return Joi.object({
|
|
1302
|
-
|
|
1303
|
-
link: Joi.string().allow(""),
|
|
1304
|
-
title: Joi.string().allow(""),
|
|
1234
|
+
ask_store_address: Joi.boolean(),
|
|
1305
1235
|
});
|
|
1306
1236
|
}
|
|
1307
1237
|
|
|
1308
|
-
/** @returns {
|
|
1309
|
-
static
|
|
1238
|
+
/** @returns {AppFeature} */
|
|
1239
|
+
static AppFeature() {
|
|
1310
1240
|
return Joi.object({
|
|
1311
|
-
|
|
1241
|
+
product_detail: ConfigurationApplicationModel.ProductDetailFeature(),
|
|
1242
|
+
landing_page: ConfigurationApplicationModel.LandingPageFeature(),
|
|
1243
|
+
registration_page: ConfigurationApplicationModel.RegistrationPageFeature(),
|
|
1244
|
+
home_page: ConfigurationApplicationModel.HomePageFeature(),
|
|
1245
|
+
common: ConfigurationApplicationModel.CommonFeature(),
|
|
1246
|
+
cart: ConfigurationApplicationModel.CartFeature(),
|
|
1247
|
+
qr: ConfigurationApplicationModel.QrFeature(),
|
|
1248
|
+
pcr: ConfigurationApplicationModel.PcrFeature(),
|
|
1249
|
+
order: ConfigurationApplicationModel.OrderFeature(),
|
|
1250
|
+
_id: Joi.string().allow(""),
|
|
1251
|
+
app: Joi.string().allow(""),
|
|
1252
|
+
created_at: Joi.string().allow(""),
|
|
1253
|
+
modified_at: Joi.string().allow(""),
|
|
1254
|
+
__v: Joi.number(),
|
|
1312
1255
|
});
|
|
1313
1256
|
}
|
|
1314
1257
|
|
|
1315
|
-
/** @returns {
|
|
1316
|
-
static
|
|
1258
|
+
/** @returns {HomePageFeature} */
|
|
1259
|
+
static HomePageFeature() {
|
|
1317
1260
|
return Joi.object({
|
|
1318
|
-
|
|
1319
|
-
enabled: Joi.boolean(),
|
|
1261
|
+
order_processing: Joi.boolean(),
|
|
1320
1262
|
});
|
|
1321
1263
|
}
|
|
1322
1264
|
|
|
1323
|
-
/** @returns {
|
|
1324
|
-
static
|
|
1265
|
+
/** @returns {CommonFeature} */
|
|
1266
|
+
static CommonFeature() {
|
|
1325
1267
|
return Joi.object({
|
|
1326
|
-
|
|
1327
|
-
|
|
1268
|
+
communication_optin_dialog: ConfigurationApplicationModel.CommunicationOptinDialogFeature(),
|
|
1269
|
+
deployment_store_selection: ConfigurationApplicationModel.DeploymentStoreSelectionFeature(),
|
|
1270
|
+
listing_price: ConfigurationApplicationModel.ListingPriceFeature(),
|
|
1271
|
+
currency: ConfigurationApplicationModel.CurrencyFeature(),
|
|
1272
|
+
revenue_engine: ConfigurationApplicationModel.RevenueEngineFeature(),
|
|
1273
|
+
feedback: ConfigurationApplicationModel.FeedbackFeature(),
|
|
1274
|
+
compare_products: ConfigurationApplicationModel.CompareProductsFeature(),
|
|
1275
|
+
reward_points: ConfigurationApplicationModel.RewardPointsConfig(),
|
|
1276
|
+
listing_page: ConfigurationApplicationModel.ListingPageFeature(),
|
|
1277
|
+
international_shipping: ConfigurationApplicationModel.InternationalShipping(),
|
|
1328
1278
|
});
|
|
1329
1279
|
}
|
|
1330
1280
|
|
|
1331
|
-
/** @returns {
|
|
1332
|
-
static
|
|
1281
|
+
/** @returns {InternationalShipping} */
|
|
1282
|
+
static InternationalShipping() {
|
|
1333
1283
|
return Joi.object({
|
|
1334
|
-
|
|
1335
|
-
app_key: Joi.string().allow(""),
|
|
1336
|
-
web_token: Joi.string().allow(""),
|
|
1284
|
+
enabled: Joi.boolean(),
|
|
1337
1285
|
});
|
|
1338
1286
|
}
|
|
1339
1287
|
|
|
1340
|
-
/** @returns {
|
|
1341
|
-
static
|
|
1288
|
+
/** @returns {CommunicationOptinDialogFeature} */
|
|
1289
|
+
static CommunicationOptinDialogFeature() {
|
|
1342
1290
|
return Joi.object({
|
|
1343
|
-
|
|
1291
|
+
visibility: Joi.boolean(),
|
|
1344
1292
|
});
|
|
1345
1293
|
}
|
|
1346
1294
|
|
|
1347
|
-
/** @returns {
|
|
1348
|
-
static
|
|
1295
|
+
/** @returns {DeploymentStoreSelectionFeature} */
|
|
1296
|
+
static DeploymentStoreSelectionFeature() {
|
|
1349
1297
|
return Joi.object({
|
|
1350
|
-
|
|
1298
|
+
enabled: Joi.boolean(),
|
|
1299
|
+
type: Joi.string().allow(""),
|
|
1351
1300
|
});
|
|
1352
1301
|
}
|
|
1353
1302
|
|
|
1354
|
-
/** @returns {
|
|
1355
|
-
static
|
|
1303
|
+
/** @returns {ListingPriceFeature} */
|
|
1304
|
+
static ListingPriceFeature() {
|
|
1356
1305
|
return Joi.object({
|
|
1357
|
-
|
|
1306
|
+
value: Joi.string().allow(""),
|
|
1307
|
+
sort: Joi.string().allow(""),
|
|
1358
1308
|
});
|
|
1359
1309
|
}
|
|
1360
1310
|
|
|
1361
|
-
/** @returns {
|
|
1362
|
-
static
|
|
1311
|
+
/** @returns {ListingPageFeature} */
|
|
1312
|
+
static ListingPageFeature() {
|
|
1363
1313
|
return Joi.object({
|
|
1364
|
-
|
|
1314
|
+
sort_on: Joi.string().allow(""),
|
|
1365
1315
|
});
|
|
1366
1316
|
}
|
|
1367
1317
|
|
|
1368
|
-
/** @returns {
|
|
1369
|
-
static
|
|
1318
|
+
/** @returns {CurrencyFeature} */
|
|
1319
|
+
static CurrencyFeature() {
|
|
1370
1320
|
return Joi.object({
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1321
|
+
value: Joi.array().items(Joi.string().allow("")),
|
|
1322
|
+
type: Joi.string().allow(""),
|
|
1323
|
+
default_currency: Joi.string().allow(""),
|
|
1374
1324
|
});
|
|
1375
1325
|
}
|
|
1376
1326
|
|
|
1377
|
-
/** @returns {
|
|
1378
|
-
static
|
|
1327
|
+
/** @returns {RevenueEngineFeature} */
|
|
1328
|
+
static RevenueEngineFeature() {
|
|
1379
1329
|
return Joi.object({
|
|
1380
|
-
credentials: ConfigurationApplicationModel.GtmCredentials(),
|
|
1381
1330
|
enabled: Joi.boolean(),
|
|
1382
1331
|
});
|
|
1383
1332
|
}
|
|
1384
1333
|
|
|
1385
|
-
/** @returns {
|
|
1386
|
-
static
|
|
1334
|
+
/** @returns {FeedbackFeature} */
|
|
1335
|
+
static FeedbackFeature() {
|
|
1387
1336
|
return Joi.object({
|
|
1388
|
-
|
|
1337
|
+
enabled: Joi.boolean(),
|
|
1389
1338
|
});
|
|
1390
1339
|
}
|
|
1391
1340
|
|
|
1392
|
-
/** @returns {
|
|
1393
|
-
static
|
|
1341
|
+
/** @returns {CompareProductsFeature} */
|
|
1342
|
+
static CompareProductsFeature() {
|
|
1394
1343
|
return Joi.object({
|
|
1395
|
-
|
|
1344
|
+
enabled: Joi.boolean(),
|
|
1396
1345
|
});
|
|
1397
1346
|
}
|
|
1398
1347
|
|
|
1399
|
-
/** @returns {
|
|
1400
|
-
static
|
|
1348
|
+
/** @returns {CartFeature} */
|
|
1349
|
+
static CartFeature() {
|
|
1401
1350
|
return Joi.object({
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
ConfigurationApplicationModel.InformationPhone()
|
|
1408
|
-
),
|
|
1409
|
-
pincode: Joi.number(),
|
|
1351
|
+
gst_input: Joi.boolean(),
|
|
1352
|
+
staff_selection: Joi.boolean(),
|
|
1353
|
+
placing_for_customer: Joi.boolean(),
|
|
1354
|
+
google_map: Joi.boolean(),
|
|
1355
|
+
revenue_engine_coupon: Joi.boolean(),
|
|
1410
1356
|
});
|
|
1411
1357
|
}
|
|
1412
1358
|
|
|
1413
|
-
/** @returns {
|
|
1414
|
-
static
|
|
1359
|
+
/** @returns {QrFeature} */
|
|
1360
|
+
static QrFeature() {
|
|
1415
1361
|
return Joi.object({
|
|
1416
|
-
|
|
1417
|
-
|
|
1362
|
+
application: Joi.boolean(),
|
|
1363
|
+
products: Joi.boolean(),
|
|
1364
|
+
collections: Joi.boolean(),
|
|
1418
1365
|
});
|
|
1419
1366
|
}
|
|
1420
1367
|
|
|
1421
|
-
/** @returns {
|
|
1422
|
-
static
|
|
1368
|
+
/** @returns {PcrFeature} */
|
|
1369
|
+
static PcrFeature() {
|
|
1423
1370
|
return Joi.object({
|
|
1424
|
-
|
|
1425
|
-
number: Joi.string().allow(""),
|
|
1371
|
+
staff_selection: Joi.boolean(),
|
|
1426
1372
|
});
|
|
1427
1373
|
}
|
|
1428
1374
|
|
|
1429
|
-
/** @returns {
|
|
1430
|
-
static
|
|
1375
|
+
/** @returns {OrderFeature} */
|
|
1376
|
+
static OrderFeature() {
|
|
1431
1377
|
return Joi.object({
|
|
1432
|
-
|
|
1433
|
-
ConfigurationApplicationModel.InformationSupportEmail()
|
|
1434
|
-
),
|
|
1435
|
-
phone: Joi.array().items(
|
|
1436
|
-
ConfigurationApplicationModel.InformationSupportPhone()
|
|
1437
|
-
),
|
|
1438
|
-
timing: Joi.string().allow(""),
|
|
1378
|
+
buy_again: Joi.boolean(),
|
|
1439
1379
|
});
|
|
1440
1380
|
}
|
|
1441
1381
|
|
|
1442
|
-
/** @returns {
|
|
1443
|
-
static
|
|
1382
|
+
/** @returns {AppFeatureResponse} */
|
|
1383
|
+
static AppFeatureResponse() {
|
|
1444
1384
|
return Joi.object({
|
|
1445
|
-
|
|
1446
|
-
value: Joi.string().allow(""),
|
|
1385
|
+
feature: ConfigurationApplicationModel.AppFeature(),
|
|
1447
1386
|
});
|
|
1448
1387
|
}
|
|
1449
1388
|
|
|
1450
|
-
/** @returns {
|
|
1451
|
-
static
|
|
1389
|
+
/** @returns {Currency} */
|
|
1390
|
+
static Currency() {
|
|
1452
1391
|
return Joi.object({
|
|
1392
|
+
_id: Joi.string().allow(""),
|
|
1393
|
+
is_active: Joi.boolean(),
|
|
1394
|
+
name: Joi.string().allow(""),
|
|
1453
1395
|
code: Joi.string().allow(""),
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
static InstagramLink() {
|
|
1461
|
-
return Joi.object({
|
|
1462
|
-
icon: Joi.string().allow(""),
|
|
1463
|
-
link: Joi.string().allow(""),
|
|
1464
|
-
title: Joi.string().allow(""),
|
|
1396
|
+
created_at: Joi.string().allow(""),
|
|
1397
|
+
modified_at: Joi.string().allow(""),
|
|
1398
|
+
decimal_digits: Joi.number(),
|
|
1399
|
+
symbol: Joi.string().allow(""),
|
|
1400
|
+
country_name: Joi.string().allow(""),
|
|
1401
|
+
country_code: Joi.string().allow(""),
|
|
1465
1402
|
});
|
|
1466
1403
|
}
|
|
1467
1404
|
|
|
1468
|
-
/** @returns {
|
|
1469
|
-
static
|
|
1405
|
+
/** @returns {Domain} */
|
|
1406
|
+
static Domain() {
|
|
1470
1407
|
return Joi.object({
|
|
1471
|
-
|
|
1408
|
+
verified: Joi.boolean(),
|
|
1409
|
+
is_primary: Joi.boolean(),
|
|
1410
|
+
is_shortlink: Joi.boolean(),
|
|
1411
|
+
_id: Joi.string().allow(""),
|
|
1412
|
+
name: Joi.string().allow(""),
|
|
1413
|
+
is_predefined: Joi.boolean(),
|
|
1472
1414
|
});
|
|
1473
1415
|
}
|
|
1474
1416
|
|
|
1475
|
-
/** @returns {
|
|
1476
|
-
static
|
|
1417
|
+
/** @returns {ApplicationWebsite} */
|
|
1418
|
+
static ApplicationWebsite() {
|
|
1477
1419
|
return Joi.object({
|
|
1478
|
-
|
|
1420
|
+
enabled: Joi.boolean(),
|
|
1421
|
+
basepath: Joi.string().allow(""),
|
|
1479
1422
|
});
|
|
1480
1423
|
}
|
|
1481
1424
|
|
|
1482
|
-
/** @returns {
|
|
1483
|
-
static
|
|
1425
|
+
/** @returns {ApplicationCors} */
|
|
1426
|
+
static ApplicationCors() {
|
|
1484
1427
|
return Joi.object({
|
|
1485
|
-
|
|
1486
|
-
application_id: Joi.string().allow(""),
|
|
1428
|
+
domains: Joi.array().items(Joi.string().allow("")),
|
|
1487
1429
|
});
|
|
1488
1430
|
}
|
|
1489
1431
|
|
|
1490
|
-
/** @returns {
|
|
1491
|
-
static
|
|
1432
|
+
/** @returns {ApplicationAuth} */
|
|
1433
|
+
static ApplicationAuth() {
|
|
1492
1434
|
return Joi.object({
|
|
1493
|
-
|
|
1494
|
-
launch_page: ConfigurationApplicationModel.LaunchPage(),
|
|
1495
|
-
login_btn_text: Joi.string().allow(""),
|
|
1496
|
-
show_domain_textbox: Joi.boolean(),
|
|
1497
|
-
show_register_btn: Joi.boolean(),
|
|
1435
|
+
enabled: Joi.boolean(),
|
|
1498
1436
|
});
|
|
1499
1437
|
}
|
|
1500
1438
|
|
|
1501
|
-
/** @returns {
|
|
1502
|
-
static
|
|
1439
|
+
/** @returns {ApplicationRedirections} */
|
|
1440
|
+
static ApplicationRedirections() {
|
|
1503
1441
|
return Joi.object({
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
),
|
|
1442
|
+
redirect_from: Joi.string().allow(""),
|
|
1443
|
+
redirect_to: Joi.string().allow(""),
|
|
1444
|
+
type: Joi.string().allow(""),
|
|
1507
1445
|
});
|
|
1508
1446
|
}
|
|
1509
1447
|
|
|
1510
|
-
/** @returns {
|
|
1511
|
-
static
|
|
1448
|
+
/** @returns {ApplicationMeta} */
|
|
1449
|
+
static ApplicationMeta() {
|
|
1512
1450
|
return Joi.object({
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
query: Joi.any(),
|
|
1451
|
+
name: Joi.string().allow(""),
|
|
1452
|
+
value: Joi.string().allow(""),
|
|
1516
1453
|
});
|
|
1517
1454
|
}
|
|
1518
1455
|
|
|
1519
|
-
/** @returns {
|
|
1520
|
-
static
|
|
1456
|
+
/** @returns {SecureUrl} */
|
|
1457
|
+
static SecureUrl() {
|
|
1521
1458
|
return Joi.object({
|
|
1522
|
-
|
|
1523
|
-
link: Joi.string().allow(""),
|
|
1524
|
-
title: Joi.string().allow(""),
|
|
1459
|
+
secure_url: Joi.string().allow(""),
|
|
1525
1460
|
});
|
|
1526
1461
|
}
|
|
1527
1462
|
|
|
1528
|
-
/** @returns {
|
|
1529
|
-
static
|
|
1463
|
+
/** @returns {Application} */
|
|
1464
|
+
static Application() {
|
|
1530
1465
|
return Joi.object({
|
|
1531
|
-
|
|
1532
|
-
|
|
1466
|
+
website: ConfigurationApplicationModel.ApplicationWebsite(),
|
|
1467
|
+
cors: ConfigurationApplicationModel.ApplicationCors(),
|
|
1468
|
+
auth: ConfigurationApplicationModel.ApplicationAuth(),
|
|
1469
|
+
description: Joi.string().allow(""),
|
|
1470
|
+
channel_type: Joi.string().allow(""),
|
|
1471
|
+
cache_ttl: Joi.number(),
|
|
1472
|
+
is_internal: Joi.boolean(),
|
|
1473
|
+
is_active: Joi.boolean(),
|
|
1474
|
+
_id: Joi.string().allow(""),
|
|
1475
|
+
name: Joi.string().allow(""),
|
|
1476
|
+
owner: Joi.string().allow(""),
|
|
1477
|
+
company_id: Joi.number(),
|
|
1478
|
+
token: Joi.string().allow(""),
|
|
1479
|
+
redirections: Joi.array().items(
|
|
1480
|
+
ConfigurationApplicationModel.ApplicationRedirections()
|
|
1481
|
+
),
|
|
1482
|
+
meta: Joi.array().items(ConfigurationApplicationModel.ApplicationMeta()),
|
|
1483
|
+
created_at: Joi.string().allow(""),
|
|
1484
|
+
modified_at: Joi.string().allow(""),
|
|
1485
|
+
__v: Joi.number(),
|
|
1486
|
+
banner: ConfigurationApplicationModel.SecureUrl(),
|
|
1487
|
+
logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1488
|
+
favicon: ConfigurationApplicationModel.SecureUrl(),
|
|
1489
|
+
domains: Joi.array().items(ConfigurationApplicationModel.Domain()),
|
|
1490
|
+
app_type: Joi.string().allow(""),
|
|
1491
|
+
mobile_logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1492
|
+
domain: ConfigurationApplicationModel.Domain(),
|
|
1493
|
+
slug: Joi.string().allow(""),
|
|
1494
|
+
mode: Joi.string().allow(""),
|
|
1495
|
+
status: Joi.string().allow(""),
|
|
1496
|
+
tokens: Joi.array().items(ConfigurationApplicationModel.TokenSchema()),
|
|
1533
1497
|
});
|
|
1534
1498
|
}
|
|
1535
1499
|
|
|
1536
|
-
/** @returns {
|
|
1537
|
-
static
|
|
1500
|
+
/** @returns {TokenSchema} */
|
|
1501
|
+
static TokenSchema() {
|
|
1538
1502
|
return Joi.object({
|
|
1539
|
-
|
|
1503
|
+
token: Joi.string().allow(""),
|
|
1504
|
+
created_by: Joi.object().pattern(/\S/, Joi.any()),
|
|
1505
|
+
created_at: Joi.string().allow(""),
|
|
1540
1506
|
});
|
|
1541
1507
|
}
|
|
1542
1508
|
|
|
1543
|
-
/** @returns {
|
|
1544
|
-
static
|
|
1509
|
+
/** @returns {NotFound} */
|
|
1510
|
+
static NotFound() {
|
|
1545
1511
|
return Joi.object({
|
|
1546
|
-
|
|
1547
|
-
value: Joi.string().allow(""),
|
|
1512
|
+
message: Joi.string().allow(""),
|
|
1548
1513
|
});
|
|
1549
1514
|
}
|
|
1550
1515
|
|
|
1551
|
-
/** @returns {
|
|
1552
|
-
static
|
|
1516
|
+
/** @returns {InvalidPayloadRequest} */
|
|
1517
|
+
static InvalidPayloadRequest() {
|
|
1553
1518
|
return Joi.object({
|
|
1554
|
-
|
|
1555
|
-
enabled: Joi.boolean(),
|
|
1519
|
+
message: Joi.string().allow(""),
|
|
1556
1520
|
});
|
|
1557
1521
|
}
|
|
1558
1522
|
|
|
1559
|
-
/** @returns {
|
|
1560
|
-
static
|
|
1523
|
+
/** @returns {UnhandledError} */
|
|
1524
|
+
static UnhandledError() {
|
|
1561
1525
|
return Joi.object({
|
|
1562
|
-
|
|
1526
|
+
message: Joi.string().allow(""),
|
|
1563
1527
|
});
|
|
1564
1528
|
}
|
|
1565
1529
|
|
|
1566
|
-
/** @returns {
|
|
1567
|
-
static
|
|
1530
|
+
/** @returns {SuccessMessageResponse} */
|
|
1531
|
+
static SuccessMessageResponse() {
|
|
1568
1532
|
return Joi.object({
|
|
1569
1533
|
message: Joi.string().allow(""),
|
|
1570
1534
|
});
|
|
1571
1535
|
}
|
|
1572
1536
|
|
|
1573
|
-
/** @returns {
|
|
1574
|
-
static
|
|
1537
|
+
/** @returns {CompanyAboutAddress} */
|
|
1538
|
+
static CompanyAboutAddress() {
|
|
1575
1539
|
return Joi.object({
|
|
1540
|
+
pincode: Joi.number(),
|
|
1576
1541
|
address1: Joi.string().allow(""),
|
|
1577
1542
|
address2: Joi.string().allow(""),
|
|
1578
1543
|
city: Joi.string().allow(""),
|
|
1579
|
-
country: Joi.string().allow(""),
|
|
1580
|
-
lat_long: ConfigurationApplicationModel.StoreLatLong(),
|
|
1581
|
-
pincode: Joi.number(),
|
|
1582
1544
|
state: Joi.string().allow(""),
|
|
1545
|
+
country: Joi.string().allow(""),
|
|
1546
|
+
address_type: Joi.string().allow(""),
|
|
1583
1547
|
});
|
|
1584
1548
|
}
|
|
1585
1549
|
|
|
1586
|
-
/** @returns {
|
|
1587
|
-
static
|
|
1588
|
-
return Joi.object({
|
|
1589
|
-
buy_again: Joi.boolean(),
|
|
1590
|
-
});
|
|
1591
|
-
}
|
|
1592
|
-
|
|
1593
|
-
/** @returns {OrderingStore} */
|
|
1594
|
-
static OrderingStore() {
|
|
1550
|
+
/** @returns {UserEmail} */
|
|
1551
|
+
static UserEmail() {
|
|
1595
1552
|
return Joi.object({
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
name: Joi.string().allow(""),
|
|
1601
|
-
pincode: Joi.number(),
|
|
1602
|
-
store_code: Joi.string().allow(""),
|
|
1603
|
-
store_type: Joi.string().allow(""),
|
|
1604
|
-
uid: Joi.number(),
|
|
1553
|
+
active: Joi.boolean(),
|
|
1554
|
+
primary: Joi.boolean(),
|
|
1555
|
+
verified: Joi.boolean(),
|
|
1556
|
+
email: Joi.string().allow(""),
|
|
1605
1557
|
});
|
|
1606
1558
|
}
|
|
1607
1559
|
|
|
1608
|
-
/** @returns {
|
|
1609
|
-
static
|
|
1560
|
+
/** @returns {UserPhoneNumber} */
|
|
1561
|
+
static UserPhoneNumber() {
|
|
1610
1562
|
return Joi.object({
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
enabled: Joi.boolean(),
|
|
1617
|
-
items: Joi.array().items(ConfigurationApplicationModel.OrderingStore()),
|
|
1618
|
-
page: ConfigurationApplicationModel.Page(),
|
|
1619
|
-
type: Joi.string().allow(""),
|
|
1563
|
+
active: Joi.boolean(),
|
|
1564
|
+
primary: Joi.boolean(),
|
|
1565
|
+
verified: Joi.boolean(),
|
|
1566
|
+
country_code: Joi.number(),
|
|
1567
|
+
phone: Joi.string().allow(""),
|
|
1620
1568
|
});
|
|
1621
1569
|
}
|
|
1622
1570
|
|
|
1623
|
-
/** @returns {
|
|
1624
|
-
static
|
|
1571
|
+
/** @returns {Page} */
|
|
1572
|
+
static Page() {
|
|
1625
1573
|
return Joi.object({
|
|
1626
|
-
|
|
1574
|
+
item_total: Joi.number(),
|
|
1575
|
+
next_id: Joi.string().allow(""),
|
|
1576
|
+
has_previous: Joi.boolean(),
|
|
1577
|
+
has_next: Joi.boolean(),
|
|
1578
|
+
current: Joi.number(),
|
|
1579
|
+
type: Joi.string().allow("").required(),
|
|
1580
|
+
size: Joi.number(),
|
|
1627
1581
|
});
|
|
1628
1582
|
}
|
|
1629
1583
|
|
|
1630
|
-
/** @returns {
|
|
1631
|
-
static
|
|
1584
|
+
/** @returns {ApplicationInformation} */
|
|
1585
|
+
static ApplicationInformation() {
|
|
1632
1586
|
return Joi.object({
|
|
1633
|
-
|
|
1587
|
+
address: ConfigurationApplicationModel.InformationAddress(),
|
|
1588
|
+
support: ConfigurationApplicationModel.InformationSupport(),
|
|
1589
|
+
social_links: ConfigurationApplicationModel.SocialLinks(),
|
|
1590
|
+
links: Joi.array().items(ConfigurationApplicationModel.Links()),
|
|
1591
|
+
copyright_text: Joi.string().allow(""),
|
|
1592
|
+
_id: Joi.string().allow(""),
|
|
1593
|
+
business_highlights: Joi.array().items(
|
|
1594
|
+
ConfigurationApplicationModel.BusinessHighlights()
|
|
1595
|
+
),
|
|
1596
|
+
application: Joi.string().allow(""),
|
|
1597
|
+
created_at: Joi.string().allow(""),
|
|
1598
|
+
modified_at: Joi.string().allow(""),
|
|
1599
|
+
__v: Joi.number(),
|
|
1634
1600
|
});
|
|
1635
1601
|
}
|
|
1636
1602
|
|
|
1637
|
-
/** @returns {
|
|
1638
|
-
static
|
|
1603
|
+
/** @returns {InformationAddress} */
|
|
1604
|
+
static InformationAddress() {
|
|
1639
1605
|
return Joi.object({
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
phone_numbers: Joi.array().items(
|
|
1645
|
-
ConfigurationApplicationModel.UserPhoneNumber()
|
|
1606
|
+
loc: ConfigurationApplicationModel.InformationLoc(),
|
|
1607
|
+
address_line: Joi.array().items(Joi.string().allow("")),
|
|
1608
|
+
phone: Joi.array().items(
|
|
1609
|
+
ConfigurationApplicationModel.InformationPhone()
|
|
1646
1610
|
),
|
|
1647
|
-
|
|
1611
|
+
city: Joi.string().allow(""),
|
|
1612
|
+
country: Joi.string().allow(""),
|
|
1613
|
+
pincode: Joi.number(),
|
|
1648
1614
|
});
|
|
1649
1615
|
}
|
|
1650
1616
|
|
|
1651
|
-
/** @returns {
|
|
1652
|
-
static
|
|
1617
|
+
/** @returns {InformationPhone} */
|
|
1618
|
+
static InformationPhone() {
|
|
1653
1619
|
return Joi.object({
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
has_previous: Joi.boolean(),
|
|
1657
|
-
item_total: Joi.number(),
|
|
1658
|
-
next_id: Joi.string().allow(""),
|
|
1659
|
-
size: Joi.number(),
|
|
1660
|
-
type: Joi.string().allow("").required(),
|
|
1620
|
+
code: Joi.string().allow(""),
|
|
1621
|
+
number: Joi.string().allow(""),
|
|
1661
1622
|
});
|
|
1662
1623
|
}
|
|
1663
1624
|
|
|
1664
|
-
/** @returns {
|
|
1665
|
-
static
|
|
1625
|
+
/** @returns {InformationSupportPhone} */
|
|
1626
|
+
static InformationSupportPhone() {
|
|
1666
1627
|
return Joi.object({
|
|
1667
|
-
|
|
1628
|
+
code: Joi.string().allow(""),
|
|
1629
|
+
number: Joi.string().allow(""),
|
|
1630
|
+
key: Joi.string().allow(""),
|
|
1668
1631
|
});
|
|
1669
1632
|
}
|
|
1670
1633
|
|
|
1671
|
-
/** @returns {
|
|
1672
|
-
static
|
|
1634
|
+
/** @returns {InformationSupportEmail} */
|
|
1635
|
+
static InformationSupportEmail() {
|
|
1673
1636
|
return Joi.object({
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
title: Joi.string().allow(""),
|
|
1637
|
+
value: Joi.string().allow(""),
|
|
1638
|
+
key: Joi.string().allow(""),
|
|
1677
1639
|
});
|
|
1678
1640
|
}
|
|
1679
1641
|
|
|
1680
|
-
/** @returns {
|
|
1681
|
-
static
|
|
1642
|
+
/** @returns {InformationLoc} */
|
|
1643
|
+
static InformationLoc() {
|
|
1682
1644
|
return Joi.object({
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
similar: Joi.array().items(Joi.string().allow("")),
|
|
1686
|
-
update_product_meta: Joi.boolean(),
|
|
1645
|
+
type: Joi.string().allow(""),
|
|
1646
|
+
coordinates: Joi.array().items(Joi.number()),
|
|
1687
1647
|
});
|
|
1688
1648
|
}
|
|
1689
1649
|
|
|
1690
|
-
/** @returns {
|
|
1691
|
-
static
|
|
1650
|
+
/** @returns {InformationSupport} */
|
|
1651
|
+
static InformationSupport() {
|
|
1692
1652
|
return Joi.object({
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1653
|
+
phone: Joi.array().items(
|
|
1654
|
+
ConfigurationApplicationModel.InformationSupportPhone()
|
|
1655
|
+
),
|
|
1656
|
+
email: Joi.array().items(
|
|
1657
|
+
ConfigurationApplicationModel.InformationSupportEmail()
|
|
1658
|
+
),
|
|
1659
|
+
timing: Joi.string().allow(""),
|
|
1696
1660
|
});
|
|
1697
1661
|
}
|
|
1698
1662
|
|
|
1699
|
-
/** @returns {
|
|
1700
|
-
static
|
|
1663
|
+
/** @returns {SocialLinks} */
|
|
1664
|
+
static SocialLinks() {
|
|
1701
1665
|
return Joi.object({
|
|
1702
|
-
|
|
1666
|
+
facebook: ConfigurationApplicationModel.FacebookLink(),
|
|
1667
|
+
instagram: ConfigurationApplicationModel.InstagramLink(),
|
|
1668
|
+
twitter: ConfigurationApplicationModel.TwitterLink(),
|
|
1669
|
+
pinterest: ConfigurationApplicationModel.PinterestLink(),
|
|
1670
|
+
google_plus: ConfigurationApplicationModel.GooglePlusLink(),
|
|
1671
|
+
youtube: ConfigurationApplicationModel.YoutubeLink(),
|
|
1672
|
+
linked_in: ConfigurationApplicationModel.LinkedInLink(),
|
|
1673
|
+
vimeo: ConfigurationApplicationModel.VimeoLink(),
|
|
1674
|
+
blog_link: ConfigurationApplicationModel.BlogLink(),
|
|
1703
1675
|
});
|
|
1704
1676
|
}
|
|
1705
1677
|
|
|
1706
|
-
/** @returns {
|
|
1707
|
-
static
|
|
1678
|
+
/** @returns {FacebookLink} */
|
|
1679
|
+
static FacebookLink() {
|
|
1708
1680
|
return Joi.object({
|
|
1709
|
-
|
|
1681
|
+
title: Joi.string().allow(""),
|
|
1682
|
+
icon: Joi.string().allow(""),
|
|
1683
|
+
link: Joi.string().allow(""),
|
|
1710
1684
|
});
|
|
1711
1685
|
}
|
|
1712
1686
|
|
|
1713
|
-
/** @returns {
|
|
1714
|
-
static
|
|
1687
|
+
/** @returns {InstagramLink} */
|
|
1688
|
+
static InstagramLink() {
|
|
1715
1689
|
return Joi.object({
|
|
1716
|
-
|
|
1717
|
-
|
|
1690
|
+
title: Joi.string().allow(""),
|
|
1691
|
+
icon: Joi.string().allow(""),
|
|
1692
|
+
link: Joi.string().allow(""),
|
|
1718
1693
|
});
|
|
1719
1694
|
}
|
|
1720
1695
|
|
|
1721
|
-
/** @returns {
|
|
1722
|
-
static
|
|
1696
|
+
/** @returns {TwitterLink} */
|
|
1697
|
+
static TwitterLink() {
|
|
1723
1698
|
return Joi.object({
|
|
1724
|
-
|
|
1725
|
-
|
|
1699
|
+
title: Joi.string().allow(""),
|
|
1700
|
+
icon: Joi.string().allow(""),
|
|
1701
|
+
link: Joi.string().allow(""),
|
|
1726
1702
|
});
|
|
1727
1703
|
}
|
|
1728
1704
|
|
|
1729
|
-
/** @returns {
|
|
1730
|
-
static
|
|
1705
|
+
/** @returns {PinterestLink} */
|
|
1706
|
+
static PinterestLink() {
|
|
1731
1707
|
return Joi.object({
|
|
1732
|
-
|
|
1708
|
+
title: Joi.string().allow(""),
|
|
1709
|
+
icon: Joi.string().allow(""),
|
|
1710
|
+
link: Joi.string().allow(""),
|
|
1733
1711
|
});
|
|
1734
1712
|
}
|
|
1735
1713
|
|
|
1736
|
-
/** @returns {
|
|
1737
|
-
static
|
|
1714
|
+
/** @returns {GooglePlusLink} */
|
|
1715
|
+
static GooglePlusLink() {
|
|
1738
1716
|
return Joi.object({
|
|
1739
|
-
|
|
1717
|
+
title: Joi.string().allow(""),
|
|
1718
|
+
icon: Joi.string().allow(""),
|
|
1719
|
+
link: Joi.string().allow(""),
|
|
1740
1720
|
});
|
|
1741
1721
|
}
|
|
1742
1722
|
|
|
1743
|
-
/** @returns {
|
|
1744
|
-
static
|
|
1723
|
+
/** @returns {YoutubeLink} */
|
|
1724
|
+
static YoutubeLink() {
|
|
1745
1725
|
return Joi.object({
|
|
1746
|
-
|
|
1747
|
-
|
|
1726
|
+
title: Joi.string().allow(""),
|
|
1727
|
+
icon: Joi.string().allow(""),
|
|
1728
|
+
link: Joi.string().allow(""),
|
|
1748
1729
|
});
|
|
1749
1730
|
}
|
|
1750
1731
|
|
|
1751
|
-
/** @returns {
|
|
1752
|
-
static
|
|
1732
|
+
/** @returns {LinkedInLink} */
|
|
1733
|
+
static LinkedInLink() {
|
|
1753
1734
|
return Joi.object({
|
|
1754
|
-
|
|
1735
|
+
title: Joi.string().allow(""),
|
|
1736
|
+
icon: Joi.string().allow(""),
|
|
1737
|
+
link: Joi.string().allow(""),
|
|
1755
1738
|
});
|
|
1756
1739
|
}
|
|
1757
1740
|
|
|
1758
|
-
/** @returns {
|
|
1759
|
-
static
|
|
1741
|
+
/** @returns {VimeoLink} */
|
|
1742
|
+
static VimeoLink() {
|
|
1760
1743
|
return Joi.object({
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
instagram: ConfigurationApplicationModel.InstagramLink(),
|
|
1765
|
-
linked_in: ConfigurationApplicationModel.LinkedInLink(),
|
|
1766
|
-
pinterest: ConfigurationApplicationModel.PinterestLink(),
|
|
1767
|
-
twitter: ConfigurationApplicationModel.TwitterLink(),
|
|
1768
|
-
vimeo: ConfigurationApplicationModel.VimeoLink(),
|
|
1769
|
-
youtube: ConfigurationApplicationModel.YoutubeLink(),
|
|
1744
|
+
title: Joi.string().allow(""),
|
|
1745
|
+
icon: Joi.string().allow(""),
|
|
1746
|
+
link: Joi.string().allow(""),
|
|
1770
1747
|
});
|
|
1771
1748
|
}
|
|
1772
1749
|
|
|
1773
|
-
/** @returns {
|
|
1774
|
-
static
|
|
1750
|
+
/** @returns {BlogLink} */
|
|
1751
|
+
static BlogLink() {
|
|
1775
1752
|
return Joi.object({
|
|
1776
|
-
|
|
1777
|
-
|
|
1753
|
+
title: Joi.string().allow(""),
|
|
1754
|
+
icon: Joi.string().allow(""),
|
|
1755
|
+
link: Joi.string().allow(""),
|
|
1778
1756
|
});
|
|
1779
1757
|
}
|
|
1780
1758
|
|
|
1781
|
-
/** @returns {
|
|
1782
|
-
static
|
|
1759
|
+
/** @returns {Links} */
|
|
1760
|
+
static Links() {
|
|
1783
1761
|
return Joi.object({
|
|
1784
|
-
|
|
1762
|
+
title: Joi.string().allow(""),
|
|
1763
|
+
link: Joi.string().allow(""),
|
|
1785
1764
|
});
|
|
1786
1765
|
}
|
|
1787
1766
|
|
|
1788
|
-
/** @returns {
|
|
1789
|
-
static
|
|
1767
|
+
/** @returns {BusinessHighlights} */
|
|
1768
|
+
static BusinessHighlights() {
|
|
1790
1769
|
return Joi.object({
|
|
1791
|
-
|
|
1792
|
-
|
|
1770
|
+
_id: Joi.string().allow(""),
|
|
1771
|
+
title: Joi.string().allow(""),
|
|
1772
|
+
icon: Joi.string().allow(""),
|
|
1773
|
+
sub_title: Joi.string().allow(""),
|
|
1793
1774
|
});
|
|
1794
1775
|
}
|
|
1795
1776
|
|
|
1796
|
-
/** @returns {
|
|
1797
|
-
static
|
|
1777
|
+
/** @returns {ApplicationDetail} */
|
|
1778
|
+
static ApplicationDetail() {
|
|
1798
1779
|
return Joi.object({
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1780
|
+
name: Joi.string().allow("").required(),
|
|
1781
|
+
description: Joi.string().allow(""),
|
|
1782
|
+
logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1783
|
+
mobile_logo: ConfigurationApplicationModel.SecureUrl(),
|
|
1784
|
+
favicon: ConfigurationApplicationModel.SecureUrl(),
|
|
1785
|
+
banner: ConfigurationApplicationModel.SecureUrl(),
|
|
1786
|
+
domain: ConfigurationApplicationModel.Domain(),
|
|
1787
|
+
domains: Joi.array().items(ConfigurationApplicationModel.Domain()),
|
|
1788
|
+
_id: Joi.string().allow(""),
|
|
1789
|
+
slug: Joi.string().allow(""),
|
|
1790
|
+
company_id: Joi.number(),
|
|
1807
1791
|
});
|
|
1808
1792
|
}
|
|
1809
1793
|
|
|
1810
|
-
/** @returns {
|
|
1811
|
-
static
|
|
1794
|
+
/** @returns {CurrenciesResponse} */
|
|
1795
|
+
static CurrenciesResponse() {
|
|
1812
1796
|
return Joi.object({
|
|
1813
|
-
|
|
1814
|
-
created_by: Joi.object().pattern(/\S/, Joi.any()),
|
|
1815
|
-
token: Joi.string().allow(""),
|
|
1797
|
+
items: Joi.array().items(ConfigurationApplicationModel.Currency()),
|
|
1816
1798
|
});
|
|
1817
1799
|
}
|
|
1818
1800
|
|
|
1819
|
-
/** @returns {
|
|
1820
|
-
static
|
|
1801
|
+
/** @returns {DefaultCurrency} */
|
|
1802
|
+
static DefaultCurrency() {
|
|
1821
1803
|
return Joi.object({
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
title: Joi.string().allow(""),
|
|
1804
|
+
ref: Joi.string().allow(""),
|
|
1805
|
+
code: Joi.string().allow(""),
|
|
1825
1806
|
});
|
|
1826
1807
|
}
|
|
1827
1808
|
|
|
1828
|
-
/** @returns {
|
|
1829
|
-
static
|
|
1809
|
+
/** @returns {AppCurrencyResponse} */
|
|
1810
|
+
static AppCurrencyResponse() {
|
|
1830
1811
|
return Joi.object({
|
|
1831
|
-
|
|
1812
|
+
application: Joi.string().allow(""),
|
|
1813
|
+
default_currency: ConfigurationApplicationModel.DefaultCurrency(),
|
|
1814
|
+
supported_currency: Joi.array().items(
|
|
1815
|
+
ConfigurationApplicationModel.Currency()
|
|
1816
|
+
),
|
|
1817
|
+
_id: Joi.string().allow(""),
|
|
1818
|
+
created_at: Joi.string().allow(""),
|
|
1819
|
+
modified_at: Joi.string().allow(""),
|
|
1832
1820
|
});
|
|
1833
1821
|
}
|
|
1834
1822
|
|
|
1835
|
-
/** @returns {
|
|
1836
|
-
static
|
|
1823
|
+
/** @returns {StoreLatLong} */
|
|
1824
|
+
static StoreLatLong() {
|
|
1837
1825
|
return Joi.object({
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
primary: Joi.boolean(),
|
|
1841
|
-
verified: Joi.boolean(),
|
|
1826
|
+
type: Joi.string().allow(""),
|
|
1827
|
+
coordinates: Joi.array().items(Joi.number()),
|
|
1842
1828
|
});
|
|
1843
1829
|
}
|
|
1844
1830
|
|
|
1845
|
-
/** @returns {
|
|
1846
|
-
static
|
|
1831
|
+
/** @returns {OptedStoreAddress} */
|
|
1832
|
+
static OptedStoreAddress() {
|
|
1847
1833
|
return Joi.object({
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1834
|
+
state: Joi.string().allow(""),
|
|
1835
|
+
address1: Joi.string().allow(""),
|
|
1836
|
+
lat_long: ConfigurationApplicationModel.StoreLatLong(),
|
|
1837
|
+
address2: Joi.string().allow(""),
|
|
1838
|
+
pincode: Joi.number(),
|
|
1839
|
+
country: Joi.string().allow(""),
|
|
1840
|
+
city: Joi.string().allow(""),
|
|
1853
1841
|
});
|
|
1854
1842
|
}
|
|
1855
1843
|
|
|
1856
|
-
/** @returns {
|
|
1857
|
-
static
|
|
1844
|
+
/** @returns {OrderingStore} */
|
|
1845
|
+
static OrderingStore() {
|
|
1858
1846
|
return Joi.object({
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1847
|
+
address: ConfigurationApplicationModel.OptedStoreAddress(),
|
|
1848
|
+
_id: Joi.string().allow(""),
|
|
1849
|
+
uid: Joi.number(),
|
|
1850
|
+
name: Joi.string().allow(""),
|
|
1851
|
+
display_name: Joi.string().allow(""),
|
|
1852
|
+
store_type: Joi.string().allow(""),
|
|
1853
|
+
store_code: Joi.string().allow(""),
|
|
1854
|
+
pincode: Joi.number(),
|
|
1855
|
+
code: Joi.string().allow(""),
|
|
1862
1856
|
});
|
|
1863
1857
|
}
|
|
1864
1858
|
|
|
1865
|
-
/** @returns {
|
|
1866
|
-
static
|
|
1859
|
+
/** @returns {OrderingStores} */
|
|
1860
|
+
static OrderingStores() {
|
|
1867
1861
|
return Joi.object({
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1862
|
+
page: ConfigurationApplicationModel.Page(),
|
|
1863
|
+
items: Joi.array().items(ConfigurationApplicationModel.OrderingStore()),
|
|
1864
|
+
deployed_stores: Joi.array().items(Joi.number()),
|
|
1865
|
+
all_stores: Joi.boolean(),
|
|
1866
|
+
enabled: Joi.boolean(),
|
|
1867
|
+
type: Joi.string().allow(""),
|
|
1868
|
+
_id: Joi.string().allow(""),
|
|
1869
|
+
app: Joi.string().allow(""),
|
|
1870
|
+
__v: Joi.number(),
|
|
1871
1871
|
});
|
|
1872
1872
|
}
|
|
1873
1873
|
}
|