@blezgo/api-sdk 0.1.3 → 0.1.4
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/dist/account/generated.d.ts +180 -180
- package/dist/account/generated.d.ts.map +1 -1
- package/dist/activity/generated.d.ts +60 -60
- package/dist/activity/generated.d.ts.map +1 -1
- package/dist/addon/generated.d.ts +83 -83
- package/dist/addon/generated.d.ts.map +1 -1
- package/dist/admin/generated.d.ts +126 -126
- package/dist/admin/generated.d.ts.map +1 -1
- package/dist/affiliate/generated.d.ts +83 -83
- package/dist/affiliate/generated.d.ts.map +1 -1
- package/dist/analytics/generated.d.ts +30 -30
- package/dist/analytics/generated.d.ts.map +1 -1
- package/dist/announcements/generated.d.ts +64 -64
- package/dist/announcements/generated.d.ts.map +1 -1
- package/dist/apikeys/generated.d.ts +79 -79
- package/dist/apikeys/generated.d.ts.map +1 -1
- package/dist/assistance/generated.d.ts +30 -30
- package/dist/assistance/generated.d.ts.map +1 -1
- package/dist/authentication/generated.d.ts +83 -83
- package/dist/authentication/generated.d.ts.map +1 -1
- package/dist/blog/generated.d.ts +204 -204
- package/dist/blog/generated.d.ts.map +1 -1
- package/dist/bundle/generated.d.ts +147 -147
- package/dist/bundle/generated.d.ts.map +1 -1
- package/dist/cache/generated.d.ts +33 -33
- package/dist/cache/generated.d.ts.map +1 -1
- package/dist/calendar/generated.d.ts +80 -80
- package/dist/calendar/generated.d.ts.map +1 -1
- package/dist/campaigns/generated.d.ts +198 -198
- package/dist/campaigns/generated.d.ts.map +1 -1
- package/dist/cart/generated.d.ts +40 -40
- package/dist/cart/generated.d.ts.map +1 -1
- package/dist/changelog/generated.d.ts +95 -95
- package/dist/changelog/generated.d.ts.map +1 -1
- package/dist/channel/generated.d.ts +251 -251
- package/dist/channel/generated.d.ts.map +1 -1
- package/dist/company/generated.d.ts +69 -69
- package/dist/company/generated.d.ts.map +1 -1
- package/dist/conference/generated.d.ts +166 -166
- package/dist/conference/generated.d.ts.map +1 -1
- package/dist/config/generated.d.ts +54 -54
- package/dist/config/generated.d.ts.map +1 -1
- package/dist/content/generated.d.ts +477 -477
- package/dist/content/generated.d.ts.map +1 -1
- package/dist/cookies/generated.d.ts +77 -77
- package/dist/cookies/generated.d.ts.map +1 -1
- package/dist/courses/generated.d.ts +397 -397
- package/dist/courses/generated.d.ts.map +1 -1
- package/dist/custom/generated.d.ts +99 -99
- package/dist/custom/generated.d.ts.map +1 -1
- package/dist/dashboard/generated.d.ts +177 -177
- package/dist/dashboard/generated.d.ts.map +1 -1
- package/dist/elasticsearch/generated.d.ts +30 -30
- package/dist/elasticsearch/generated.d.ts.map +1 -1
- package/dist/enrollments/generated.d.ts +30 -30
- package/dist/enrollments/generated.d.ts.map +1 -1
- package/dist/errors/generated.d.ts +30 -30
- package/dist/errors/generated.d.ts.map +1 -1
- package/dist/eventconfig/generated.d.ts +94 -94
- package/dist/eventconfig/generated.d.ts.map +1 -1
- package/dist/funnels/generated.d.ts +146 -146
- package/dist/funnels/generated.d.ts.map +1 -1
- package/dist/gamification/generated.d.ts +154 -154
- package/dist/gamification/generated.d.ts.map +1 -1
- package/dist/impersonation/generated.d.ts +71 -71
- package/dist/impersonation/generated.d.ts.map +1 -1
- package/dist/inbox/generated.d.ts +140 -140
- package/dist/inbox/generated.d.ts.map +1 -1
- package/dist/internal/generated.d.ts +30 -30
- package/dist/internal/generated.d.ts.map +1 -1
- package/dist/internationalization/generated.d.ts +30 -30
- package/dist/internationalization/generated.d.ts.map +1 -1
- package/dist/invitations/generated.d.ts +123 -123
- package/dist/invitations/generated.d.ts.map +1 -1
- package/dist/meetings/generated.d.ts +337 -337
- package/dist/meetings/generated.d.ts.map +1 -1
- package/dist/metas/generated.d.ts +170 -170
- package/dist/metas/generated.d.ts.map +1 -1
- package/dist/notification/generated.d.ts +382 -382
- package/dist/notification/generated.d.ts.map +1 -1
- package/dist/notifications/generated.d.ts +30 -30
- package/dist/notifications/generated.d.ts.map +1 -1
- package/dist/onboarding/generated.d.ts +106 -106
- package/dist/onboarding/generated.d.ts.map +1 -1
- package/dist/packages/generated.d.ts +83 -83
- package/dist/packages/generated.d.ts.map +1 -1
- package/dist/payments/generated.d.ts +502 -502
- package/dist/payments/generated.d.ts.map +1 -1
- package/dist/payouts/generated.d.ts +30 -30
- package/dist/payouts/generated.d.ts.map +1 -1
- package/dist/plans/generated.d.ts +470 -470
- package/dist/plans/generated.d.ts.map +1 -1
- package/dist/pricing/generated.d.ts +87 -87
- package/dist/pricing/generated.d.ts.map +1 -1
- package/dist/products/generated.d.ts +552 -552
- package/dist/products/generated.d.ts.map +1 -1
- package/dist/profile/generated.d.ts +272 -272
- package/dist/profile/generated.d.ts.map +1 -1
- package/dist/reasons/generated.d.ts +78 -78
- package/dist/reasons/generated.d.ts.map +1 -1
- package/dist/registration/generated.d.ts +145 -145
- package/dist/registration/generated.d.ts.map +1 -1
- package/dist/reviews/generated.d.ts +47 -47
- package/dist/reviews/generated.d.ts.map +1 -1
- package/dist/role/generated.d.ts +217 -217
- package/dist/role/generated.d.ts.map +1 -1
- package/dist/scheduling/generated.d.ts +139 -139
- package/dist/scheduling/generated.d.ts.map +1 -1
- package/dist/services/generated.d.ts +989 -989
- package/dist/services/generated.d.ts.map +1 -1
- package/dist/sessions/generated.d.ts +334 -334
- package/dist/sessions/generated.d.ts.map +1 -1
- package/dist/spaces/generated.d.ts +390 -390
- package/dist/spaces/generated.d.ts.map +1 -1
- package/dist/storefront/generated.d.ts +30 -30
- package/dist/storefront/generated.d.ts.map +1 -1
- package/dist/support/generated.d.ts +1465 -1465
- package/dist/support/generated.d.ts.map +1 -1
- package/dist/sync/generated.d.ts +157 -157
- package/dist/sync/generated.d.ts.map +1 -1
- package/dist/tenant/generated.d.ts +562 -562
- package/dist/tenant/generated.d.ts.map +1 -1
- package/dist/testimonials/generated.d.ts +67 -67
- package/dist/testimonials/generated.d.ts.map +1 -1
- package/dist/tests/generated.d.ts +619 -619
- package/dist/tests/generated.d.ts.map +1 -1
- package/dist/tokens/generated.d.ts +59 -59
- package/dist/tokens/generated.d.ts.map +1 -1
- package/dist/uploads/generated.d.ts +65 -65
- package/dist/uploads/generated.d.ts.map +1 -1
- package/dist/upsell/generated.d.ts +130 -130
- package/dist/upsell/generated.d.ts.map +1 -1
- package/dist/user/generated.d.ts +123 -117
- package/dist/user/generated.d.ts.map +1 -1
- package/dist/webinars/generated.d.ts +298 -298
- package/dist/webinars/generated.d.ts.map +1 -1
- package/package.json +1 -1
- package/test-commit.txt +1 -0
|
@@ -2096,222 +2096,302 @@ export type webhooks = Record<string, never>;
|
|
|
2096
2096
|
export interface components {
|
|
2097
2097
|
schemas: {
|
|
2098
2098
|
/**
|
|
2099
|
-
*
|
|
2100
|
-
* @description
|
|
2099
|
+
* VariantItem
|
|
2100
|
+
* @description Product variant (maps to product_variants_tbl)
|
|
2101
2101
|
*/
|
|
2102
|
-
|
|
2102
|
+
VariantItem: {
|
|
2103
2103
|
/**
|
|
2104
|
-
*
|
|
2105
|
-
* @description
|
|
2104
|
+
* Name
|
|
2105
|
+
* @description Variant display name
|
|
2106
2106
|
*/
|
|
2107
|
-
|
|
2108
|
-
};
|
|
2109
|
-
/**
|
|
2110
|
-
* BookingCancelRequest
|
|
2111
|
-
* @description Request model for cancelling a booking.
|
|
2112
|
-
*/
|
|
2113
|
-
BookingCancelRequest: {
|
|
2107
|
+
name: string;
|
|
2114
2108
|
/**
|
|
2115
|
-
*
|
|
2116
|
-
* @description
|
|
2109
|
+
* Sku
|
|
2110
|
+
* @description Stock Keeping Unit
|
|
2117
2111
|
*/
|
|
2118
|
-
|
|
2112
|
+
sku?: string | null;
|
|
2119
2113
|
/**
|
|
2120
|
-
*
|
|
2121
|
-
* @description
|
|
2114
|
+
* Attributes
|
|
2115
|
+
* @description Custom attributes
|
|
2122
2116
|
*/
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
* ExpertSettingsUpdateRequest
|
|
2127
|
-
* @description Request model for updating expert settings.
|
|
2128
|
-
*/
|
|
2129
|
-
ExpertSettingsUpdateRequest: {
|
|
2117
|
+
attributes?: {
|
|
2118
|
+
[key: string]: unknown;
|
|
2119
|
+
} | null;
|
|
2130
2120
|
/**
|
|
2131
|
-
*
|
|
2132
|
-
* @description
|
|
2121
|
+
* Is Default
|
|
2122
|
+
* @description Set as default variant
|
|
2123
|
+
* @default false
|
|
2133
2124
|
*/
|
|
2134
|
-
|
|
2125
|
+
is_default: boolean;
|
|
2135
2126
|
/**
|
|
2136
|
-
*
|
|
2137
|
-
* @description
|
|
2127
|
+
* Track Inventory
|
|
2128
|
+
* @description Track stock for this variant
|
|
2129
|
+
* @default false
|
|
2138
2130
|
*/
|
|
2139
|
-
|
|
2131
|
+
track_inventory: boolean;
|
|
2140
2132
|
/**
|
|
2141
|
-
*
|
|
2142
|
-
* @description
|
|
2133
|
+
* Stock Quantity
|
|
2134
|
+
* @description Initial stock
|
|
2143
2135
|
*/
|
|
2144
|
-
|
|
2136
|
+
stock_quantity?: number | null;
|
|
2145
2137
|
/**
|
|
2146
|
-
*
|
|
2147
|
-
* @description
|
|
2138
|
+
* Allow Backorder
|
|
2139
|
+
* @description Allow orders when out of stock
|
|
2140
|
+
* @default false
|
|
2148
2141
|
*/
|
|
2149
|
-
|
|
2142
|
+
allow_backorder: boolean;
|
|
2150
2143
|
/**
|
|
2151
|
-
*
|
|
2152
|
-
* @description
|
|
2144
|
+
* Weight
|
|
2145
|
+
* @description Weight in kg
|
|
2153
2146
|
*/
|
|
2154
|
-
|
|
2147
|
+
weight?: number | null;
|
|
2155
2148
|
/**
|
|
2156
|
-
*
|
|
2157
|
-
* @description
|
|
2149
|
+
* Length
|
|
2150
|
+
* @description Length in cm
|
|
2158
2151
|
*/
|
|
2159
|
-
|
|
2160
|
-
};
|
|
2161
|
-
/**
|
|
2162
|
-
* ServiceSection
|
|
2163
|
-
* @description Service-specific fields (maps to service_tbl)
|
|
2164
|
-
*/
|
|
2165
|
-
ServiceSection: {
|
|
2152
|
+
length?: number | null;
|
|
2166
2153
|
/**
|
|
2167
|
-
*
|
|
2168
|
-
* @description
|
|
2154
|
+
* Width
|
|
2155
|
+
* @description Width in cm
|
|
2169
2156
|
*/
|
|
2170
|
-
|
|
2157
|
+
width?: number | null;
|
|
2171
2158
|
/**
|
|
2172
|
-
*
|
|
2173
|
-
* @description
|
|
2159
|
+
* Height
|
|
2160
|
+
* @description Height in cm
|
|
2174
2161
|
*/
|
|
2175
|
-
|
|
2162
|
+
height?: number | null;
|
|
2176
2163
|
/**
|
|
2177
|
-
*
|
|
2178
|
-
* @description
|
|
2179
|
-
* @default
|
|
2164
|
+
* Display Order
|
|
2165
|
+
* @description Display order
|
|
2166
|
+
* @default 100
|
|
2180
2167
|
*/
|
|
2181
|
-
|
|
2168
|
+
display_order: number;
|
|
2182
2169
|
/**
|
|
2183
|
-
*
|
|
2184
|
-
* @description
|
|
2185
|
-
* @default true
|
|
2170
|
+
* Metadata
|
|
2171
|
+
* @description Flexible metadata
|
|
2186
2172
|
*/
|
|
2187
|
-
|
|
2173
|
+
metadata?: {
|
|
2174
|
+
[key: string]: unknown;
|
|
2175
|
+
} | null;
|
|
2176
|
+
};
|
|
2177
|
+
/**
|
|
2178
|
+
* ServiceSettingsRequest
|
|
2179
|
+
* @description Request model for service settings.
|
|
2180
|
+
*/
|
|
2181
|
+
ServiceSettingsRequest: {
|
|
2188
2182
|
/**
|
|
2189
|
-
*
|
|
2190
|
-
* @description
|
|
2183
|
+
* Min Booking Duration
|
|
2184
|
+
* @description Min duration (minutes)
|
|
2191
2185
|
*/
|
|
2192
|
-
|
|
2186
|
+
min_booking_duration?: number | null;
|
|
2193
2187
|
/**
|
|
2194
|
-
*
|
|
2195
|
-
* @description
|
|
2196
|
-
* @default expert_defined
|
|
2188
|
+
* Max Booking Duration
|
|
2189
|
+
* @description Max duration (minutes)
|
|
2197
2190
|
*/
|
|
2198
|
-
|
|
2191
|
+
max_booking_duration?: number | null;
|
|
2199
2192
|
/**
|
|
2200
|
-
*
|
|
2201
|
-
* @description
|
|
2193
|
+
* Booking Duration Step
|
|
2194
|
+
* @description Duration step (minutes)
|
|
2202
2195
|
*/
|
|
2203
|
-
|
|
2196
|
+
booking_duration_step?: number | null;
|
|
2204
2197
|
/**
|
|
2205
|
-
*
|
|
2206
|
-
* @description
|
|
2207
|
-
* @default USD
|
|
2198
|
+
* Booking Lead Time Value
|
|
2199
|
+
* @description Lead time (hours)
|
|
2208
2200
|
*/
|
|
2209
|
-
|
|
2201
|
+
booking_lead_time_value?: number | null;
|
|
2202
|
+
/** Booking Lead Time Handler */
|
|
2203
|
+
booking_lead_time_handler?: string | null;
|
|
2210
2204
|
/**
|
|
2211
|
-
*
|
|
2212
|
-
* @description
|
|
2205
|
+
* Buffer Time Before
|
|
2206
|
+
* @description Buffer before (minutes)
|
|
2213
2207
|
*/
|
|
2214
|
-
|
|
2208
|
+
buffer_time_before?: number | null;
|
|
2215
2209
|
/**
|
|
2216
|
-
*
|
|
2217
|
-
* @description
|
|
2210
|
+
* Buffer Time After
|
|
2211
|
+
* @description Buffer after (minutes)
|
|
2218
2212
|
*/
|
|
2219
|
-
|
|
2213
|
+
buffer_time_after?: number | null;
|
|
2214
|
+
/** Avoid Back To Back */
|
|
2215
|
+
avoid_back_to_back?: boolean | null;
|
|
2220
2216
|
/**
|
|
2221
|
-
*
|
|
2222
|
-
* @description
|
|
2223
|
-
* @default true
|
|
2217
|
+
* Availability Window Days
|
|
2218
|
+
* @description Days ahead to book
|
|
2224
2219
|
*/
|
|
2225
|
-
|
|
2220
|
+
availability_window_days?: number | null;
|
|
2221
|
+
/**
|
|
2222
|
+
* First Slot Rounding
|
|
2223
|
+
* @description Round start time
|
|
2224
|
+
*/
|
|
2225
|
+
first_slot_rounding?: number | null;
|
|
2226
|
+
/**
|
|
2227
|
+
* Timeslot Step Size
|
|
2228
|
+
* @description Slot intervals
|
|
2229
|
+
*/
|
|
2230
|
+
timeslot_step_size?: number | null;
|
|
2231
|
+
/** Timeslot Format */
|
|
2232
|
+
timeslot_format?: string | null;
|
|
2233
|
+
/** Slot Type */
|
|
2234
|
+
slot_type?: string | null;
|
|
2235
|
+
/** Allow Multiple Booking */
|
|
2236
|
+
allow_multiple_booking?: boolean | null;
|
|
2237
|
+
/** Allow Recurring Booking */
|
|
2238
|
+
allow_recurring_booking?: boolean | null;
|
|
2239
|
+
/** Max Recurring Sessions */
|
|
2240
|
+
max_recurring_sessions?: number | null;
|
|
2241
|
+
/** Selection Format */
|
|
2242
|
+
selection_format?: string | null;
|
|
2243
|
+
/** Display Divided Slots */
|
|
2244
|
+
display_divided_slots?: boolean | null;
|
|
2245
|
+
/** Allow Out Of Availability Request */
|
|
2246
|
+
allow_out_of_availability_request?: boolean | null;
|
|
2247
|
+
/** Custom Session Title Mode */
|
|
2248
|
+
custom_session_title_mode?: string | null;
|
|
2249
|
+
/** Custom Session Title */
|
|
2250
|
+
custom_session_title?: string | null;
|
|
2251
|
+
/** Trial Enabled */
|
|
2252
|
+
trial_enabled?: boolean | null;
|
|
2253
|
+
/** Trial Duration */
|
|
2254
|
+
trial_duration?: number | null;
|
|
2255
|
+
/** Trial Price */
|
|
2256
|
+
trial_price?: number | string | null;
|
|
2257
|
+
/** Trial Limit Per Consumer */
|
|
2258
|
+
trial_limit_per_consumer?: number | null;
|
|
2226
2259
|
};
|
|
2227
2260
|
/**
|
|
2228
|
-
*
|
|
2229
|
-
* @description Request model for
|
|
2261
|
+
* FlowStepValidationRequest
|
|
2262
|
+
* @description Request model for validating a flow step.
|
|
2230
2263
|
*/
|
|
2231
|
-
|
|
2232
|
-
/**
|
|
2233
|
-
* Override Date
|
|
2234
|
-
* @description Date in YYYY-MM-DD format
|
|
2235
|
-
*/
|
|
2236
|
-
override_date: string;
|
|
2237
|
-
/** @description 'unavailable' or 'custom' */
|
|
2238
|
-
override_type: components["schemas"]["OverrideTypeEnum"];
|
|
2264
|
+
FlowStepValidationRequest: {
|
|
2239
2265
|
/**
|
|
2240
|
-
*
|
|
2241
|
-
* @description
|
|
2266
|
+
* Step Data
|
|
2267
|
+
* @description Data for this step
|
|
2242
2268
|
*/
|
|
2243
|
-
|
|
2269
|
+
step_data: {
|
|
2270
|
+
[key: string]: unknown;
|
|
2271
|
+
};
|
|
2272
|
+
};
|
|
2273
|
+
InvalidParam: {
|
|
2274
|
+
/** @example items[0].quantity */
|
|
2275
|
+
field?: string;
|
|
2276
|
+
/** @example Input should be greater than or equal to 1 */
|
|
2277
|
+
error?: string;
|
|
2278
|
+
};
|
|
2279
|
+
/**
|
|
2280
|
+
* ChannelPreference
|
|
2281
|
+
* @description Channel-specific preference.
|
|
2282
|
+
*/
|
|
2283
|
+
ChannelPreference: {
|
|
2284
|
+
channel: components["schemas"]["NotificationChannelEnum"];
|
|
2244
2285
|
/**
|
|
2245
|
-
*
|
|
2246
|
-
* @
|
|
2286
|
+
* Enabled
|
|
2287
|
+
* @default true
|
|
2247
2288
|
*/
|
|
2248
|
-
|
|
2289
|
+
enabled: boolean;
|
|
2249
2290
|
/**
|
|
2250
|
-
*
|
|
2251
|
-
* @description
|
|
2252
|
-
* @default UTC
|
|
2291
|
+
* Quiet Hours Start
|
|
2292
|
+
* @description Start of quiet hours (HH:MM)
|
|
2253
2293
|
*/
|
|
2254
|
-
|
|
2294
|
+
quiet_hours_start?: string | null;
|
|
2255
2295
|
/**
|
|
2256
|
-
*
|
|
2257
|
-
* @description
|
|
2296
|
+
* Quiet Hours End
|
|
2297
|
+
* @description End of quiet hours (HH:MM)
|
|
2258
2298
|
*/
|
|
2259
|
-
|
|
2299
|
+
quiet_hours_end?: string | null;
|
|
2260
2300
|
};
|
|
2261
2301
|
/**
|
|
2262
|
-
*
|
|
2263
|
-
* @description
|
|
2264
|
-
* @enum {string}
|
|
2265
|
-
*/
|
|
2266
|
-
BookingSourceTypeEnum: "direct_booking" | "session_pack" | "subscription" | "credit_bucket";
|
|
2267
|
-
/**
|
|
2268
|
-
* ExpertMatchRequest
|
|
2269
|
-
* @description Request model for expert matching.
|
|
2302
|
+
* ExpertInviteRequest
|
|
2303
|
+
* @description Request model for inviting an expert to a service.
|
|
2270
2304
|
*/
|
|
2271
|
-
|
|
2272
|
-
/**
|
|
2273
|
-
* Subject Id
|
|
2274
|
-
* @description Required subject
|
|
2275
|
-
*/
|
|
2276
|
-
subject_id?: string | null;
|
|
2277
|
-
/**
|
|
2278
|
-
* Topic Id
|
|
2279
|
-
* @description Optional topic
|
|
2280
|
-
*/
|
|
2281
|
-
topic_id?: string | null;
|
|
2305
|
+
ExpertInviteRequest: {
|
|
2282
2306
|
/**
|
|
2283
|
-
*
|
|
2284
|
-
* @description
|
|
2307
|
+
* Expert Id
|
|
2308
|
+
* @description User ID of expert to invite
|
|
2285
2309
|
*/
|
|
2286
|
-
|
|
2310
|
+
expert_id: number;
|
|
2287
2311
|
/**
|
|
2288
|
-
*
|
|
2289
|
-
* @description
|
|
2312
|
+
* Custom Rate
|
|
2313
|
+
* @description Custom rate
|
|
2290
2314
|
*/
|
|
2291
|
-
|
|
2315
|
+
custom_rate?: number | string | null;
|
|
2292
2316
|
/**
|
|
2293
|
-
*
|
|
2294
|
-
* @description
|
|
2295
|
-
* @default 30
|
|
2317
|
+
* Subjects
|
|
2318
|
+
* @description Subject codes/IDs
|
|
2296
2319
|
*/
|
|
2297
|
-
|
|
2320
|
+
subjects?: string[] | null;
|
|
2298
2321
|
/**
|
|
2299
|
-
*
|
|
2300
|
-
* @
|
|
2322
|
+
* Topics
|
|
2323
|
+
* @description Topic codes/IDs
|
|
2301
2324
|
*/
|
|
2302
|
-
|
|
2325
|
+
topics?: string[] | null;
|
|
2326
|
+
};
|
|
2327
|
+
/**
|
|
2328
|
+
* CancellationPolicyRequest
|
|
2329
|
+
* @description Request model for cancellation policy.
|
|
2330
|
+
*/
|
|
2331
|
+
CancellationPolicyRequest: {
|
|
2303
2332
|
/**
|
|
2304
|
-
*
|
|
2305
|
-
* @description
|
|
2333
|
+
* Product Code
|
|
2334
|
+
* @description NULL for service-wide default
|
|
2306
2335
|
*/
|
|
2307
|
-
|
|
2336
|
+
product_code?: string | null;
|
|
2337
|
+
/** Consumer Cancel Allowed */
|
|
2338
|
+
consumer_cancel_allowed?: boolean | null;
|
|
2339
|
+
/** Consumer Cancel Window Hours */
|
|
2340
|
+
consumer_cancel_window_hours?: number | null;
|
|
2341
|
+
/** Consumer In Window Credit */
|
|
2342
|
+
consumer_in_window_credit?: boolean | null;
|
|
2343
|
+
/** Consumer Out Window Credit */
|
|
2344
|
+
consumer_out_window_credit?: boolean | null;
|
|
2345
|
+
/** Consumer Cancel Reason Required */
|
|
2346
|
+
consumer_cancel_reason_required?: boolean | null;
|
|
2347
|
+
/** Consumer Reschedule Allowed */
|
|
2348
|
+
consumer_reschedule_allowed?: boolean | null;
|
|
2349
|
+
/** Expert Cancel Allowed */
|
|
2350
|
+
expert_cancel_allowed?: boolean | null;
|
|
2351
|
+
/** Expert Cancel Window Hours */
|
|
2352
|
+
expert_cancel_window_hours?: number | null;
|
|
2353
|
+
/** Expert In Window Credit */
|
|
2354
|
+
expert_in_window_credit?: boolean | null;
|
|
2355
|
+
/** Expert Out Window Credit */
|
|
2356
|
+
expert_out_window_credit?: boolean | null;
|
|
2357
|
+
/** Expert Reschedule Allowed */
|
|
2358
|
+
expert_reschedule_allowed?: boolean | null;
|
|
2359
|
+
/** Credit Expiry Hours */
|
|
2360
|
+
credit_expiry_hours?: number | null;
|
|
2361
|
+
/** Credit Type */
|
|
2362
|
+
credit_type?: string | null;
|
|
2363
|
+
/** Credit Transferable */
|
|
2364
|
+
credit_transferable?: boolean | null;
|
|
2308
2365
|
};
|
|
2309
2366
|
/**
|
|
2310
|
-
*
|
|
2311
|
-
* @description
|
|
2367
|
+
* LocationTypeEnum
|
|
2368
|
+
* @description Location type enum.
|
|
2312
2369
|
* @enum {string}
|
|
2313
2370
|
*/
|
|
2314
|
-
|
|
2371
|
+
LocationTypeEnum: "online" | "in_person";
|
|
2372
|
+
/**
|
|
2373
|
+
* EventPreference
|
|
2374
|
+
* @description Preference for a specific event type.
|
|
2375
|
+
*/
|
|
2376
|
+
EventPreference: {
|
|
2377
|
+
event_type: components["schemas"]["EventTypeEnum"];
|
|
2378
|
+
/**
|
|
2379
|
+
* Enabled
|
|
2380
|
+
* @default true
|
|
2381
|
+
*/
|
|
2382
|
+
enabled: boolean;
|
|
2383
|
+
/** Channels */
|
|
2384
|
+
channels?: components["schemas"]["NotificationChannelEnum"][];
|
|
2385
|
+
};
|
|
2386
|
+
Extensions: {
|
|
2387
|
+
/** @example GENERIC_ERROR */
|
|
2388
|
+
message_code?: string;
|
|
2389
|
+
/** @example [] */
|
|
2390
|
+
invalid_params?: components["schemas"]["InvalidParam"][];
|
|
2391
|
+
extra_data?: Record<string, never> | null;
|
|
2392
|
+
/** @example Detailed debug information */
|
|
2393
|
+
debug?: string | null;
|
|
2394
|
+
};
|
|
2315
2395
|
/**
|
|
2316
2396
|
* ServiceUpdateRequest
|
|
2317
2397
|
* @description Request model for updating a service.
|
|
@@ -2348,459 +2428,362 @@ export interface components {
|
|
|
2348
2428
|
max_rate?: number | string | null;
|
|
2349
2429
|
status?: components["schemas"]["ServiceStatus"] | null;
|
|
2350
2430
|
};
|
|
2351
|
-
Extensions: {
|
|
2352
|
-
/** @example GENERIC_ERROR */
|
|
2353
|
-
message_code?: string;
|
|
2354
|
-
/** @example [] */
|
|
2355
|
-
invalid_params?: components["schemas"]["InvalidParam"][];
|
|
2356
|
-
extra_data?: Record<string, never> | null;
|
|
2357
|
-
/** @example Detailed debug information */
|
|
2358
|
-
debug?: string | null;
|
|
2359
|
-
};
|
|
2360
|
-
/**
|
|
2361
|
-
* ServiceProductsUpdateRequest
|
|
2362
|
-
* @description Request model for bulk updating service products.
|
|
2363
|
-
*/
|
|
2364
|
-
ServiceProductsUpdateRequest: {
|
|
2365
|
-
/** Products */
|
|
2366
|
-
products: components["schemas"]["ServiceProductRequest"][];
|
|
2367
|
-
};
|
|
2368
2431
|
/**
|
|
2369
|
-
*
|
|
2370
|
-
* @description
|
|
2432
|
+
* ServiceSection
|
|
2433
|
+
* @description Service-specific fields (maps to service_tbl)
|
|
2371
2434
|
*/
|
|
2372
|
-
|
|
2435
|
+
ServiceSection: {
|
|
2373
2436
|
/**
|
|
2374
|
-
*
|
|
2375
|
-
* @description
|
|
2437
|
+
* Service Code
|
|
2438
|
+
* @description Unique code within org: online-tutoring, makeup-services
|
|
2376
2439
|
*/
|
|
2377
|
-
|
|
2440
|
+
service_code: string;
|
|
2378
2441
|
/**
|
|
2379
|
-
*
|
|
2380
|
-
* @description
|
|
2442
|
+
* Service Type
|
|
2443
|
+
* @description org_service (SRV-at-org), expert_service (SRV-at-exp)
|
|
2381
2444
|
*/
|
|
2382
|
-
|
|
2445
|
+
service_type: string;
|
|
2383
2446
|
/**
|
|
2384
|
-
*
|
|
2385
|
-
* @description
|
|
2447
|
+
* Enrollment Mode
|
|
2448
|
+
* @description open, closed, invite_only, auto_approve
|
|
2449
|
+
* @default open
|
|
2386
2450
|
*/
|
|
2387
|
-
|
|
2451
|
+
enrollment_mode: string;
|
|
2388
2452
|
/**
|
|
2389
|
-
*
|
|
2390
|
-
* @description
|
|
2453
|
+
* Enrollment Requires Approval
|
|
2454
|
+
* @description Admin must approve expert applications
|
|
2455
|
+
* @default true
|
|
2391
2456
|
*/
|
|
2392
|
-
|
|
2457
|
+
enrollment_requires_approval: boolean;
|
|
2393
2458
|
/**
|
|
2394
|
-
*
|
|
2395
|
-
* @description
|
|
2459
|
+
* Max Experts
|
|
2460
|
+
* @description Maximum experts allowed (NULL = unlimited)
|
|
2396
2461
|
*/
|
|
2397
|
-
|
|
2462
|
+
max_experts?: number | null;
|
|
2398
2463
|
/**
|
|
2399
|
-
*
|
|
2400
|
-
* @description
|
|
2464
|
+
* Pricing Mode
|
|
2465
|
+
* @description org_flat_rate, expert_defined
|
|
2466
|
+
* @default expert_defined
|
|
2401
2467
|
*/
|
|
2402
|
-
|
|
2468
|
+
pricing_mode: string;
|
|
2403
2469
|
/**
|
|
2404
|
-
*
|
|
2405
|
-
* @description
|
|
2470
|
+
* Org Flat Rate
|
|
2471
|
+
* @description Flat rate if pricing_mode=org_flat_rate
|
|
2406
2472
|
*/
|
|
2407
|
-
|
|
2473
|
+
org_flat_rate?: number | null;
|
|
2408
2474
|
/**
|
|
2409
|
-
*
|
|
2410
|
-
* @description
|
|
2475
|
+
* Currency
|
|
2476
|
+
* @description Currency code: USD, EUR, INR
|
|
2477
|
+
* @default USD
|
|
2411
2478
|
*/
|
|
2412
|
-
|
|
2479
|
+
currency: string;
|
|
2413
2480
|
/**
|
|
2414
|
-
*
|
|
2415
|
-
* @description
|
|
2481
|
+
* Min Rate
|
|
2482
|
+
* @description Minimum rate for experts (rate constraint)
|
|
2416
2483
|
*/
|
|
2417
|
-
|
|
2484
|
+
min_rate?: number | null;
|
|
2418
2485
|
/**
|
|
2419
|
-
*
|
|
2420
|
-
* @description
|
|
2486
|
+
* Max Rate
|
|
2487
|
+
* @description Maximum rate for experts (rate constraint)
|
|
2421
2488
|
*/
|
|
2422
|
-
|
|
2489
|
+
max_rate?: number | null;
|
|
2423
2490
|
/**
|
|
2424
|
-
*
|
|
2425
|
-
* @description
|
|
2491
|
+
* Site Level
|
|
2492
|
+
* @description True = org products (SRV-at-org), False = expert products (SRV-at-exp)
|
|
2426
2493
|
* @default true
|
|
2427
2494
|
*/
|
|
2428
|
-
|
|
2495
|
+
site_level: boolean;
|
|
2429
2496
|
};
|
|
2430
2497
|
/**
|
|
2431
|
-
*
|
|
2432
|
-
* @description
|
|
2498
|
+
* WeeklyTemplateRequest
|
|
2499
|
+
* @description Request model for updating weekly availability template.
|
|
2433
2500
|
*/
|
|
2434
|
-
|
|
2501
|
+
WeeklyTemplateRequest: {
|
|
2435
2502
|
/**
|
|
2436
|
-
*
|
|
2437
|
-
* @description
|
|
2438
|
-
* @default
|
|
2503
|
+
* Timezone
|
|
2504
|
+
* @description Expert's timezone (IANA format)
|
|
2505
|
+
* @default UTC
|
|
2439
2506
|
*/
|
|
2440
|
-
|
|
2507
|
+
timezone: string;
|
|
2508
|
+
/** Sunday */
|
|
2509
|
+
sunday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2510
|
+
/** Monday */
|
|
2511
|
+
monday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2512
|
+
/** Tuesday */
|
|
2513
|
+
tuesday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2514
|
+
/** Wednesday */
|
|
2515
|
+
wednesday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2516
|
+
/** Thursday */
|
|
2517
|
+
thursday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2518
|
+
/** Friday */
|
|
2519
|
+
friday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2520
|
+
/** Saturday */
|
|
2521
|
+
saturday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
2522
|
+
};
|
|
2523
|
+
/**
|
|
2524
|
+
* ExpertMatchRequest
|
|
2525
|
+
* @description Request model for expert matching.
|
|
2526
|
+
*/
|
|
2527
|
+
ExpertMatchRequest: {
|
|
2441
2528
|
/**
|
|
2442
|
-
*
|
|
2443
|
-
* @description
|
|
2444
|
-
* @default 60
|
|
2529
|
+
* Subject Id
|
|
2530
|
+
* @description Required subject
|
|
2445
2531
|
*/
|
|
2446
|
-
|
|
2532
|
+
subject_id?: string | null;
|
|
2447
2533
|
/**
|
|
2448
|
-
*
|
|
2449
|
-
* @description
|
|
2450
|
-
* @default 15
|
|
2451
|
-
*/
|
|
2452
|
-
booking_duration_step: number;
|
|
2453
|
-
/**
|
|
2454
|
-
* Booking Lead Time Value
|
|
2455
|
-
* @description Hours before session required
|
|
2456
|
-
* @default 2
|
|
2534
|
+
* Topic Id
|
|
2535
|
+
* @description Optional topic
|
|
2457
2536
|
*/
|
|
2458
|
-
|
|
2537
|
+
topic_id?: string | null;
|
|
2459
2538
|
/**
|
|
2460
|
-
*
|
|
2461
|
-
* @description
|
|
2462
|
-
* @default org
|
|
2539
|
+
* Preferred Date
|
|
2540
|
+
* @description Preferred date (YYYY-MM-DD)
|
|
2463
2541
|
*/
|
|
2464
|
-
|
|
2542
|
+
preferred_date?: string | null;
|
|
2465
2543
|
/**
|
|
2466
|
-
*
|
|
2467
|
-
* @description
|
|
2468
|
-
* @default 0
|
|
2544
|
+
* Preferred Time
|
|
2545
|
+
* @description Preferred time (HH:MM)
|
|
2469
2546
|
*/
|
|
2470
|
-
|
|
2547
|
+
preferred_time?: string | null;
|
|
2471
2548
|
/**
|
|
2472
|
-
*
|
|
2473
|
-
* @description
|
|
2474
|
-
* @default
|
|
2549
|
+
* Duration Minutes
|
|
2550
|
+
* @description Session duration
|
|
2551
|
+
* @default 30
|
|
2475
2552
|
*/
|
|
2476
|
-
|
|
2553
|
+
duration_minutes: number;
|
|
2477
2554
|
/**
|
|
2478
|
-
*
|
|
2479
|
-
* @
|
|
2480
|
-
* @default false
|
|
2555
|
+
* @description Price preference
|
|
2556
|
+
* @default any
|
|
2481
2557
|
*/
|
|
2482
|
-
|
|
2558
|
+
price_preference: components["schemas"]["PricePreference"];
|
|
2483
2559
|
/**
|
|
2484
|
-
*
|
|
2485
|
-
* @description
|
|
2486
|
-
* @default 90
|
|
2560
|
+
* Min Rating
|
|
2561
|
+
* @description Minimum rating
|
|
2487
2562
|
*/
|
|
2488
|
-
|
|
2563
|
+
min_rating?: number | null;
|
|
2564
|
+
};
|
|
2565
|
+
/**
|
|
2566
|
+
* BookingCreateRequest
|
|
2567
|
+
* @description Request model for creating a booking.
|
|
2568
|
+
*/
|
|
2569
|
+
BookingCreateRequest: {
|
|
2489
2570
|
/**
|
|
2490
|
-
*
|
|
2491
|
-
* @description
|
|
2492
|
-
* @default 15
|
|
2571
|
+
* Service Id
|
|
2572
|
+
* @description External service ID
|
|
2493
2573
|
*/
|
|
2494
|
-
|
|
2574
|
+
service_id: string;
|
|
2495
2575
|
/**
|
|
2496
|
-
*
|
|
2497
|
-
* @description
|
|
2498
|
-
* @default false
|
|
2576
|
+
* Expert Id
|
|
2577
|
+
* @description Expert user ID
|
|
2499
2578
|
*/
|
|
2500
|
-
|
|
2579
|
+
expert_id: number;
|
|
2501
2580
|
/**
|
|
2502
|
-
*
|
|
2503
|
-
* @description
|
|
2581
|
+
* Starts At
|
|
2582
|
+
* @description Start datetime in ISO format (UTC)
|
|
2504
2583
|
*/
|
|
2505
|
-
|
|
2584
|
+
starts_at: string;
|
|
2506
2585
|
/**
|
|
2507
|
-
*
|
|
2508
|
-
* @description
|
|
2509
|
-
* @default false
|
|
2586
|
+
* Duration Minutes
|
|
2587
|
+
* @description Session duration in minutes
|
|
2510
2588
|
*/
|
|
2511
|
-
|
|
2589
|
+
duration_minutes: number;
|
|
2512
2590
|
/**
|
|
2513
|
-
*
|
|
2514
|
-
* @description
|
|
2591
|
+
* Timezone
|
|
2592
|
+
* @description Consumer's timezone
|
|
2593
|
+
* @default UTC
|
|
2515
2594
|
*/
|
|
2516
|
-
|
|
2595
|
+
timezone: string;
|
|
2517
2596
|
/**
|
|
2518
|
-
*
|
|
2519
|
-
* @description
|
|
2597
|
+
* Title
|
|
2598
|
+
* @description Session title
|
|
2520
2599
|
*/
|
|
2521
|
-
|
|
2522
|
-
};
|
|
2523
|
-
/**
|
|
2524
|
-
* EventPreference
|
|
2525
|
-
* @description Preference for a specific event type.
|
|
2526
|
-
*/
|
|
2527
|
-
EventPreference: {
|
|
2528
|
-
event_type: components["schemas"]["EventTypeEnum"];
|
|
2600
|
+
title?: string | null;
|
|
2529
2601
|
/**
|
|
2530
|
-
*
|
|
2531
|
-
* @
|
|
2602
|
+
* Subject Id
|
|
2603
|
+
* @description Subject ID
|
|
2532
2604
|
*/
|
|
2533
|
-
|
|
2534
|
-
/** Channels */
|
|
2535
|
-
channels?: components["schemas"]["NotificationChannelEnum"][];
|
|
2536
|
-
};
|
|
2537
|
-
/**
|
|
2538
|
-
* PricingSection
|
|
2539
|
-
* @description Pricing configuration (optional - can have product price, variant prices, or both)
|
|
2540
|
-
*/
|
|
2541
|
-
PricingSection: {
|
|
2542
|
-
/** @description Base product price (no variant) */
|
|
2543
|
-
product_price?: components["schemas"]["ProductPrice"] | null;
|
|
2605
|
+
subject_id?: number | null;
|
|
2544
2606
|
/**
|
|
2545
|
-
*
|
|
2546
|
-
* @description
|
|
2607
|
+
* Topic Id
|
|
2608
|
+
* @description Topic ID
|
|
2547
2609
|
*/
|
|
2548
|
-
|
|
2549
|
-
};
|
|
2550
|
-
/**
|
|
2551
|
-
* VariantItem
|
|
2552
|
-
* @description Product variant (maps to product_variants_tbl)
|
|
2553
|
-
*/
|
|
2554
|
-
VariantItem: {
|
|
2610
|
+
topic_id?: number | null;
|
|
2555
2611
|
/**
|
|
2556
|
-
*
|
|
2557
|
-
* @description
|
|
2612
|
+
* Notes
|
|
2613
|
+
* @description Consumer notes
|
|
2558
2614
|
*/
|
|
2559
|
-
|
|
2615
|
+
notes?: string | null;
|
|
2560
2616
|
/**
|
|
2561
|
-
*
|
|
2562
|
-
* @
|
|
2617
|
+
* @description Location type
|
|
2618
|
+
* @default online
|
|
2563
2619
|
*/
|
|
2564
|
-
|
|
2620
|
+
location_type: components["schemas"]["LocationTypeEnum"];
|
|
2565
2621
|
/**
|
|
2566
|
-
*
|
|
2567
|
-
* @description
|
|
2622
|
+
* Location Details
|
|
2623
|
+
* @description Location details (address for in-person)
|
|
2568
2624
|
*/
|
|
2569
|
-
|
|
2625
|
+
location_details?: {
|
|
2570
2626
|
[key: string]: unknown;
|
|
2571
2627
|
} | null;
|
|
2572
2628
|
/**
|
|
2573
|
-
*
|
|
2574
|
-
* @
|
|
2575
|
-
* @default false
|
|
2576
|
-
*/
|
|
2577
|
-
is_default: boolean;
|
|
2578
|
-
/**
|
|
2579
|
-
* Track Inventory
|
|
2580
|
-
* @description Track stock for this variant
|
|
2581
|
-
* @default false
|
|
2629
|
+
* @description Booking source type
|
|
2630
|
+
* @default direct_booking
|
|
2582
2631
|
*/
|
|
2583
|
-
|
|
2632
|
+
booking_source_type: components["schemas"]["BookingSourceTypeEnum"];
|
|
2584
2633
|
/**
|
|
2585
|
-
*
|
|
2586
|
-
* @description
|
|
2634
|
+
* Booking Source Id
|
|
2635
|
+
* @description Source ID (pack_id, subscription_id)
|
|
2587
2636
|
*/
|
|
2588
|
-
|
|
2637
|
+
booking_source_id?: number | null;
|
|
2589
2638
|
/**
|
|
2590
|
-
*
|
|
2591
|
-
* @description
|
|
2639
|
+
* Is Trial
|
|
2640
|
+
* @description Is this a trial session?
|
|
2592
2641
|
* @default false
|
|
2593
2642
|
*/
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
2643
|
+
is_trial: boolean;
|
|
2644
|
+
};
|
|
2645
|
+
/**
|
|
2646
|
+
* PricePreference
|
|
2647
|
+
* @description Price preference for expert matching.
|
|
2648
|
+
* @enum {string}
|
|
2649
|
+
*/
|
|
2650
|
+
PricePreference: "low" | "mid" | "high" | "any";
|
|
2651
|
+
/**
|
|
2652
|
+
* IdentitySection
|
|
2653
|
+
* @description Localized product content (maps to product_identity_tbl)
|
|
2654
|
+
*/
|
|
2655
|
+
IdentitySection: {
|
|
2600
2656
|
/**
|
|
2601
|
-
*
|
|
2602
|
-
* @description
|
|
2657
|
+
* Locale
|
|
2658
|
+
* @description Locale: en-US, es-PR, fr-FR, pt-BR, etc.
|
|
2659
|
+
* @default en-US
|
|
2603
2660
|
*/
|
|
2604
|
-
|
|
2661
|
+
locale: string;
|
|
2605
2662
|
/**
|
|
2606
|
-
*
|
|
2607
|
-
* @description
|
|
2663
|
+
* Title
|
|
2664
|
+
* @description Product title
|
|
2608
2665
|
*/
|
|
2609
|
-
|
|
2666
|
+
title: string;
|
|
2610
2667
|
/**
|
|
2611
|
-
*
|
|
2612
|
-
* @description
|
|
2668
|
+
* Subtitle
|
|
2669
|
+
* @description Product subtitle
|
|
2613
2670
|
*/
|
|
2614
|
-
|
|
2671
|
+
subtitle?: string | null;
|
|
2615
2672
|
/**
|
|
2616
|
-
*
|
|
2617
|
-
* @description
|
|
2618
|
-
* @default 100
|
|
2673
|
+
* Description
|
|
2674
|
+
* @description Full product description
|
|
2619
2675
|
*/
|
|
2620
|
-
|
|
2676
|
+
description?: string | null;
|
|
2621
2677
|
/**
|
|
2622
|
-
*
|
|
2623
|
-
* @description
|
|
2678
|
+
* Short Description
|
|
2679
|
+
* @description Short description for listings/previews
|
|
2624
2680
|
*/
|
|
2625
|
-
|
|
2626
|
-
[key: string]: unknown;
|
|
2627
|
-
} | null;
|
|
2681
|
+
short_description?: string | null;
|
|
2628
2682
|
};
|
|
2629
2683
|
/**
|
|
2630
|
-
*
|
|
2631
|
-
* @description
|
|
2684
|
+
* ServiceType
|
|
2685
|
+
* @description Service type enum.
|
|
2686
|
+
* @enum {string}
|
|
2632
2687
|
*/
|
|
2633
|
-
|
|
2688
|
+
ServiceType: "org_service" | "expert_service";
|
|
2689
|
+
/**
|
|
2690
|
+
* OverrideCreateRequest
|
|
2691
|
+
* @description Request model for creating an availability override.
|
|
2692
|
+
*/
|
|
2693
|
+
OverrideCreateRequest: {
|
|
2634
2694
|
/**
|
|
2635
|
-
*
|
|
2636
|
-
* @description
|
|
2695
|
+
* Override Date
|
|
2696
|
+
* @description Date in YYYY-MM-DD format
|
|
2637
2697
|
*/
|
|
2638
|
-
|
|
2698
|
+
override_date: string;
|
|
2699
|
+
/** @description 'unavailable' or 'custom' */
|
|
2700
|
+
override_type: components["schemas"]["OverrideTypeEnum"];
|
|
2639
2701
|
/**
|
|
2640
|
-
*
|
|
2641
|
-
* @description
|
|
2702
|
+
* Starts At Time
|
|
2703
|
+
* @description Start time for custom type (HH:MM)
|
|
2642
2704
|
*/
|
|
2643
|
-
|
|
2705
|
+
starts_at_time?: string | null;
|
|
2644
2706
|
/**
|
|
2645
|
-
*
|
|
2646
|
-
* @description
|
|
2707
|
+
* Ends At Time
|
|
2708
|
+
* @description End time for custom type (HH:MM)
|
|
2647
2709
|
*/
|
|
2648
|
-
|
|
2649
|
-
};
|
|
2650
|
-
/**
|
|
2651
|
-
* FlowStepValidationRequest
|
|
2652
|
-
* @description Request model for validating a flow step.
|
|
2653
|
-
*/
|
|
2654
|
-
FlowStepValidationRequest: {
|
|
2655
|
-
/**
|
|
2656
|
-
* Step Data
|
|
2657
|
-
* @description Data for this step
|
|
2658
|
-
*/
|
|
2659
|
-
step_data: {
|
|
2660
|
-
[key: string]: unknown;
|
|
2661
|
-
};
|
|
2662
|
-
};
|
|
2663
|
-
/**
|
|
2664
|
-
* SlotCheckRequest
|
|
2665
|
-
* @description Request model for checking a specific slot.
|
|
2666
|
-
*/
|
|
2667
|
-
SlotCheckRequest: {
|
|
2668
|
-
/**
|
|
2669
|
-
* Expert Id
|
|
2670
|
-
* @description Expert user ID
|
|
2671
|
-
*/
|
|
2672
|
-
expert_id: number;
|
|
2710
|
+
ends_at_time?: string | null;
|
|
2673
2711
|
/**
|
|
2674
|
-
*
|
|
2675
|
-
* @description
|
|
2712
|
+
* Timezone
|
|
2713
|
+
* @description Expert's timezone
|
|
2714
|
+
* @default UTC
|
|
2676
2715
|
*/
|
|
2677
|
-
|
|
2716
|
+
timezone: string;
|
|
2678
2717
|
/**
|
|
2679
|
-
*
|
|
2680
|
-
* @description
|
|
2718
|
+
* Reason
|
|
2719
|
+
* @description Reason for override
|
|
2681
2720
|
*/
|
|
2682
|
-
|
|
2683
|
-
};
|
|
2684
|
-
/**
|
|
2685
|
-
* @example {
|
|
2686
|
-
* "status": "success",
|
|
2687
|
-
* "message": "Operation successful",
|
|
2688
|
-
* "message_code": "api_suc_20001",
|
|
2689
|
-
* "data": {},
|
|
2690
|
-
* "metadata": {
|
|
2691
|
-
* "timestamp": "2026-03-26T10:00:00.000Z",
|
|
2692
|
-
* "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
|
|
2693
|
-
* "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
|
|
2694
|
-
* "version": "v1",
|
|
2695
|
-
* "executionTime": 42,
|
|
2696
|
-
* "language": "en-US"
|
|
2697
|
-
* }
|
|
2698
|
-
* }
|
|
2699
|
-
*/
|
|
2700
|
-
StandardResponse: {
|
|
2701
|
-
/** @example success */
|
|
2702
|
-
status?: string;
|
|
2703
|
-
data?: Record<string, never> | null;
|
|
2704
|
-
/** @example Operation successful */
|
|
2705
|
-
message?: string | null;
|
|
2706
|
-
/** @example api_suc_20001 */
|
|
2707
|
-
message_code?: string | null;
|
|
2708
|
-
metadata?: Record<string, never> | null;
|
|
2709
|
-
error?: components["schemas"]["ErrorResponse"];
|
|
2721
|
+
reason?: string | null;
|
|
2710
2722
|
};
|
|
2711
2723
|
/**
|
|
2712
|
-
*
|
|
2713
|
-
* @description Request model for
|
|
2724
|
+
* BookingCompleteRequest
|
|
2725
|
+
* @description Request model for completing a booking.
|
|
2714
2726
|
*/
|
|
2715
|
-
|
|
2727
|
+
BookingCompleteRequest: {
|
|
2716
2728
|
/**
|
|
2717
|
-
*
|
|
2718
|
-
* @description
|
|
2729
|
+
* Actual Duration Minutes
|
|
2730
|
+
* @description Actual session duration
|
|
2719
2731
|
*/
|
|
2720
|
-
|
|
2732
|
+
actual_duration_minutes?: number | null;
|
|
2721
2733
|
/**
|
|
2722
|
-
*
|
|
2723
|
-
* @description
|
|
2734
|
+
* Consumer Attended
|
|
2735
|
+
* @description Consumer attended
|
|
2724
2736
|
*/
|
|
2725
|
-
|
|
2737
|
+
consumer_attended?: boolean | null;
|
|
2726
2738
|
/**
|
|
2727
|
-
*
|
|
2728
|
-
* @description
|
|
2739
|
+
* Expert Attended
|
|
2740
|
+
* @description Expert attended
|
|
2729
2741
|
*/
|
|
2730
|
-
|
|
2731
|
-
/** Channel Preferences */
|
|
2732
|
-
channel_preferences?: components["schemas"]["ChannelPreference"][] | null;
|
|
2733
|
-
/** Event Preferences */
|
|
2734
|
-
event_preferences?: components["schemas"]["EventPreference"][] | null;
|
|
2742
|
+
expert_attended?: boolean | null;
|
|
2735
2743
|
};
|
|
2736
|
-
/**
|
|
2737
|
-
* ServiceType
|
|
2738
|
-
* @description Service type enum.
|
|
2739
|
-
* @enum {string}
|
|
2740
|
-
*/
|
|
2741
|
-
ServiceType: "org_service" | "expert_service";
|
|
2742
2744
|
/**
|
|
2743
2745
|
* ServiceStatus
|
|
2744
2746
|
* @description Service status enum.
|
|
2745
2747
|
* @enum {string}
|
|
2746
2748
|
*/
|
|
2747
2749
|
ServiceStatus: "draft" | "active" | "paused" | "archived";
|
|
2748
|
-
InvalidParam: {
|
|
2749
|
-
/** @example items[0].quantity */
|
|
2750
|
-
field?: string;
|
|
2751
|
-
/** @example Input should be greater than or equal to 1 */
|
|
2752
|
-
error?: string;
|
|
2753
|
-
};
|
|
2754
2750
|
/**
|
|
2755
|
-
*
|
|
2756
|
-
* @description
|
|
2751
|
+
* NotificationChannelEnum
|
|
2752
|
+
* @description Notification channel enum.
|
|
2753
|
+
* @enum {string}
|
|
2757
2754
|
*/
|
|
2758
|
-
|
|
2759
|
-
/**
|
|
2760
|
-
* Url
|
|
2761
|
-
* @description Webhook endpoint URL
|
|
2762
|
-
*/
|
|
2763
|
-
url: string;
|
|
2764
|
-
/**
|
|
2765
|
-
* Events
|
|
2766
|
-
* @description Events to subscribe to
|
|
2767
|
-
*/
|
|
2768
|
-
events: components["schemas"]["EventTypeEnum"][];
|
|
2769
|
-
/**
|
|
2770
|
-
* Secret
|
|
2771
|
-
* @description Secret for webhook signature
|
|
2772
|
-
*/
|
|
2773
|
-
secret?: string | null;
|
|
2774
|
-
/**
|
|
2775
|
-
* Is Active
|
|
2776
|
-
* @description Whether webhook is active
|
|
2777
|
-
* @default true
|
|
2778
|
-
*/
|
|
2779
|
-
is_active: boolean;
|
|
2780
|
-
/** Description */
|
|
2781
|
-
description?: string | null;
|
|
2782
|
-
};
|
|
2755
|
+
NotificationChannelEnum: "email" | "sms" | "push" | "inapp" | "webhook";
|
|
2783
2756
|
/**
|
|
2784
|
-
*
|
|
2785
|
-
* @description Expert
|
|
2757
|
+
* EnrollmentMode
|
|
2758
|
+
* @description Expert enrollment mode enum.
|
|
2786
2759
|
* @enum {string}
|
|
2787
2760
|
*/
|
|
2788
|
-
|
|
2761
|
+
EnrollmentMode: "open" | "closed" | "invite_only" | "auto_approve";
|
|
2789
2762
|
/**
|
|
2790
|
-
*
|
|
2791
|
-
* @description Request model for
|
|
2763
|
+
* ExpertSettingsUpdateRequest
|
|
2764
|
+
* @description Request model for updating expert settings.
|
|
2792
2765
|
*/
|
|
2793
|
-
|
|
2794
|
-
/**
|
|
2795
|
-
* Expert Id
|
|
2796
|
-
* @description User ID of expert to invite
|
|
2797
|
-
*/
|
|
2798
|
-
expert_id: number;
|
|
2766
|
+
ExpertSettingsUpdateRequest: {
|
|
2799
2767
|
/**
|
|
2800
2768
|
* Custom Rate
|
|
2801
2769
|
* @description Custom rate
|
|
2802
2770
|
*/
|
|
2803
2771
|
custom_rate?: number | string | null;
|
|
2772
|
+
/**
|
|
2773
|
+
* Accepts New Bookings
|
|
2774
|
+
* @description Accepting new bookings
|
|
2775
|
+
*/
|
|
2776
|
+
accepts_new_bookings?: boolean | null;
|
|
2777
|
+
/**
|
|
2778
|
+
* Max Daily Bookings
|
|
2779
|
+
* @description Max daily bookings
|
|
2780
|
+
*/
|
|
2781
|
+
max_daily_bookings?: number | null;
|
|
2782
|
+
/**
|
|
2783
|
+
* Auto Confirm Bookings
|
|
2784
|
+
* @description Auto-confirm bookings
|
|
2785
|
+
*/
|
|
2786
|
+
auto_confirm_bookings?: boolean | null;
|
|
2804
2787
|
/**
|
|
2805
2788
|
* Subjects
|
|
2806
2789
|
* @description Subject codes/IDs
|
|
@@ -2812,6 +2795,39 @@ export interface components {
|
|
|
2812
2795
|
*/
|
|
2813
2796
|
topics?: string[] | null;
|
|
2814
2797
|
};
|
|
2798
|
+
/**
|
|
2799
|
+
* BookingSourceTypeEnum
|
|
2800
|
+
* @description Booking source type enum.
|
|
2801
|
+
* @enum {string}
|
|
2802
|
+
*/
|
|
2803
|
+
BookingSourceTypeEnum: "direct_booking" | "session_pack" | "subscription" | "credit_bucket";
|
|
2804
|
+
/**
|
|
2805
|
+
* @example {
|
|
2806
|
+
* "status": "success",
|
|
2807
|
+
* "message": "Operation successful",
|
|
2808
|
+
* "message_code": "api_suc_20001",
|
|
2809
|
+
* "data": {},
|
|
2810
|
+
* "metadata": {
|
|
2811
|
+
* "timestamp": "2026-03-26T10:00:00.000Z",
|
|
2812
|
+
* "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
|
|
2813
|
+
* "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
|
|
2814
|
+
* "version": "v1",
|
|
2815
|
+
* "executionTime": 42,
|
|
2816
|
+
* "language": "en-US"
|
|
2817
|
+
* }
|
|
2818
|
+
* }
|
|
2819
|
+
*/
|
|
2820
|
+
StandardResponse: {
|
|
2821
|
+
/** @example success */
|
|
2822
|
+
status?: string;
|
|
2823
|
+
data?: Record<string, never> | null;
|
|
2824
|
+
/** @example Operation successful */
|
|
2825
|
+
message?: string | null;
|
|
2826
|
+
/** @example api_suc_20001 */
|
|
2827
|
+
message_code?: string | null;
|
|
2828
|
+
metadata?: Record<string, never> | null;
|
|
2829
|
+
error?: components["schemas"]["ErrorResponse"];
|
|
2830
|
+
};
|
|
2815
2831
|
/**
|
|
2816
2832
|
* MediaItem
|
|
2817
2833
|
* @description Single media file item
|
|
@@ -2884,225 +2900,123 @@ export interface components {
|
|
|
2884
2900
|
is_primary: boolean;
|
|
2885
2901
|
};
|
|
2886
2902
|
/**
|
|
2887
|
-
*
|
|
2888
|
-
* @description
|
|
2903
|
+
* OverrideTypeEnum
|
|
2904
|
+
* @description Override type enum.
|
|
2905
|
+
* @enum {string}
|
|
2889
2906
|
*/
|
|
2890
|
-
|
|
2907
|
+
OverrideTypeEnum: "unavailable" | "custom";
|
|
2908
|
+
/**
|
|
2909
|
+
* SendNotificationRequest
|
|
2910
|
+
* @description Request model for sending a manual notification.
|
|
2911
|
+
*/
|
|
2912
|
+
SendNotificationRequest: {
|
|
2913
|
+
/** @description Event type to trigger */
|
|
2914
|
+
event_type: components["schemas"]["EventTypeEnum"];
|
|
2891
2915
|
/**
|
|
2892
|
-
*
|
|
2893
|
-
* @description
|
|
2916
|
+
* Recipient Type
|
|
2917
|
+
* @description Recipient type: consumer, expert, or admin
|
|
2894
2918
|
*/
|
|
2895
|
-
|
|
2919
|
+
recipient_type: string;
|
|
2896
2920
|
/**
|
|
2897
|
-
*
|
|
2898
|
-
* @description
|
|
2899
|
-
* @default true
|
|
2921
|
+
* Recipient Id
|
|
2922
|
+
* @description User ID of recipient
|
|
2900
2923
|
*/
|
|
2901
|
-
|
|
2924
|
+
recipient_id: number;
|
|
2902
2925
|
/**
|
|
2903
|
-
*
|
|
2904
|
-
* @
|
|
2926
|
+
* Booking Id
|
|
2927
|
+
* @description Related booking ID
|
|
2905
2928
|
*/
|
|
2906
|
-
|
|
2929
|
+
booking_id?: string | null;
|
|
2907
2930
|
/**
|
|
2908
|
-
*
|
|
2909
|
-
* @description
|
|
2931
|
+
* Channels
|
|
2932
|
+
* @description Override channels (uses defaults if not provided)
|
|
2910
2933
|
*/
|
|
2911
|
-
|
|
2912
|
-
/**
|
|
2913
|
-
|
|
2934
|
+
channels?: components["schemas"]["NotificationChannelEnum"][] | null;
|
|
2935
|
+
/**
|
|
2936
|
+
* Extra Data
|
|
2937
|
+
* @description Additional data for templates
|
|
2938
|
+
*/
|
|
2939
|
+
extra_data?: {
|
|
2914
2940
|
[key: string]: unknown;
|
|
2915
2941
|
} | null;
|
|
2916
2942
|
};
|
|
2917
2943
|
/**
|
|
2918
|
-
*
|
|
2919
|
-
* @description
|
|
2920
|
-
* @example {
|
|
2921
|
-
* "identity": {
|
|
2922
|
-
* "locale": "en-US",
|
|
2923
|
-
* "title": "Online Tutoring Service"
|
|
2924
|
-
* },
|
|
2925
|
-
* "pricing": {
|
|
2926
|
-
* "product_price": {
|
|
2927
|
-
* "amount": 25,
|
|
2928
|
-
* "currency": "USD",
|
|
2929
|
-
* "price_type": "one_time"
|
|
2930
|
-
* }
|
|
2931
|
-
* },
|
|
2932
|
-
* "product": {
|
|
2933
|
-
* "is_digital": true,
|
|
2934
|
-
* "status": "draft",
|
|
2935
|
-
* "visibility": "public"
|
|
2936
|
-
* },
|
|
2937
|
-
* "service": {
|
|
2938
|
-
* "enrollment_mode": "open",
|
|
2939
|
-
* "max_rate": 100,
|
|
2940
|
-
* "min_rate": 15,
|
|
2941
|
-
* "pricing_mode": "expert_defined",
|
|
2942
|
-
* "service_code": "online-tutoring",
|
|
2943
|
-
* "service_type": "expert_service"
|
|
2944
|
-
* },
|
|
2945
|
-
* "service_settings": {
|
|
2946
|
-
* "availability_window_days": 60,
|
|
2947
|
-
* "booking_duration_step": 30,
|
|
2948
|
-
* "max_booking_duration": 120,
|
|
2949
|
-
* "min_booking_duration": 30
|
|
2950
|
-
* }
|
|
2951
|
-
* }
|
|
2944
|
+
* MediaSection
|
|
2945
|
+
* @description Product media files - direct media data
|
|
2952
2946
|
*/
|
|
2953
|
-
|
|
2954
|
-
/** @description Base product configuration */
|
|
2955
|
-
product: components["schemas"]["ProductSection"];
|
|
2956
|
-
/** @description Localized content (title, description) */
|
|
2957
|
-
identity: components["schemas"]["IdentitySection"];
|
|
2958
|
-
/** @description Pre-uploaded image IDs */
|
|
2959
|
-
media?: components["schemas"]["MediaSection"] | null;
|
|
2960
|
-
/**
|
|
2961
|
-
* Tags
|
|
2962
|
-
* @description Tag IDs to associate with product
|
|
2963
|
-
*/
|
|
2964
|
-
tags?: number[] | null;
|
|
2947
|
+
MediaSection: {
|
|
2965
2948
|
/**
|
|
2966
|
-
*
|
|
2967
|
-
* @description
|
|
2949
|
+
* Media Items
|
|
2950
|
+
* @description List of media files to attach to product
|
|
2968
2951
|
*/
|
|
2969
|
-
|
|
2970
|
-
/** @description Pricing for product and variants */
|
|
2971
|
-
pricing?: components["schemas"]["PricingSection"] | null;
|
|
2972
|
-
/** @description Service-specific configuration */
|
|
2973
|
-
service: components["schemas"]["ServiceSection"];
|
|
2974
|
-
/** @description Service booking settings */
|
|
2975
|
-
service_settings: components["schemas"]["ServiceSettingsSection"];
|
|
2952
|
+
media_items?: components["schemas"]["MediaItem"][] | null;
|
|
2976
2953
|
};
|
|
2977
2954
|
/**
|
|
2978
|
-
*
|
|
2979
|
-
* @description Request model for
|
|
2955
|
+
* BookingCancelRequest
|
|
2956
|
+
* @description Request model for cancelling a booking.
|
|
2980
2957
|
*/
|
|
2981
|
-
|
|
2982
|
-
/** @description Event type to trigger */
|
|
2983
|
-
event_type: components["schemas"]["EventTypeEnum"];
|
|
2984
|
-
/**
|
|
2985
|
-
* Recipient Type
|
|
2986
|
-
* @description Recipient type: consumer, expert, or admin
|
|
2987
|
-
*/
|
|
2988
|
-
recipient_type: string;
|
|
2989
|
-
/**
|
|
2990
|
-
* Recipient Id
|
|
2991
|
-
* @description User ID of recipient
|
|
2992
|
-
*/
|
|
2993
|
-
recipient_id: number;
|
|
2994
|
-
/**
|
|
2995
|
-
* Booking Id
|
|
2996
|
-
* @description Related booking ID
|
|
2997
|
-
*/
|
|
2998
|
-
booking_id?: string | null;
|
|
2999
|
-
/**
|
|
3000
|
-
* Channels
|
|
3001
|
-
* @description Override channels (uses defaults if not provided)
|
|
3002
|
-
*/
|
|
3003
|
-
channels?: components["schemas"]["NotificationChannelEnum"][] | null;
|
|
2958
|
+
BookingCancelRequest: {
|
|
3004
2959
|
/**
|
|
3005
|
-
*
|
|
3006
|
-
* @description
|
|
2960
|
+
* Cancel Reason Id
|
|
2961
|
+
* @description Reason ID from msd_reasons_tbl
|
|
3007
2962
|
*/
|
|
3008
|
-
|
|
3009
|
-
[key: string]: unknown;
|
|
3010
|
-
} | null;
|
|
3011
|
-
};
|
|
3012
|
-
/** Body_updateServiceApplication */
|
|
3013
|
-
Body_updateServiceApplication: {
|
|
2963
|
+
cancel_reason_id?: number | null;
|
|
3014
2964
|
/**
|
|
3015
|
-
*
|
|
3016
|
-
* @description
|
|
2965
|
+
* Cancel Reason Text
|
|
2966
|
+
* @description Additional cancellation reason
|
|
3017
2967
|
*/
|
|
3018
|
-
|
|
2968
|
+
cancel_reason_text?: string | null;
|
|
3019
2969
|
};
|
|
3020
2970
|
/**
|
|
3021
|
-
*
|
|
3022
|
-
* @description Request model for
|
|
2971
|
+
* ExpertApplyRequest
|
|
2972
|
+
* @description Request model for expert applying to a service.
|
|
3023
2973
|
*/
|
|
3024
|
-
|
|
3025
|
-
/**
|
|
3026
|
-
* Service Id
|
|
3027
|
-
* @description External service ID
|
|
3028
|
-
*/
|
|
3029
|
-
service_id: string;
|
|
3030
|
-
/**
|
|
3031
|
-
* Expert Id
|
|
3032
|
-
* @description Expert user ID
|
|
3033
|
-
*/
|
|
3034
|
-
expert_id: number;
|
|
3035
|
-
/**
|
|
3036
|
-
* Starts At
|
|
3037
|
-
* @description Start datetime in ISO format (UTC)
|
|
3038
|
-
*/
|
|
3039
|
-
starts_at: string;
|
|
3040
|
-
/**
|
|
3041
|
-
* Duration Minutes
|
|
3042
|
-
* @description Session duration in minutes
|
|
3043
|
-
*/
|
|
3044
|
-
duration_minutes: number;
|
|
3045
|
-
/**
|
|
3046
|
-
* Timezone
|
|
3047
|
-
* @description Consumer's timezone
|
|
3048
|
-
* @default UTC
|
|
3049
|
-
*/
|
|
3050
|
-
timezone: string;
|
|
3051
|
-
/**
|
|
3052
|
-
* Title
|
|
3053
|
-
* @description Session title
|
|
3054
|
-
*/
|
|
3055
|
-
title?: string | null;
|
|
3056
|
-
/**
|
|
3057
|
-
* Subject Id
|
|
3058
|
-
* @description Subject ID
|
|
3059
|
-
*/
|
|
3060
|
-
subject_id?: number | null;
|
|
2974
|
+
ExpertApplyRequest: {
|
|
3061
2975
|
/**
|
|
3062
|
-
*
|
|
3063
|
-
* @description
|
|
2976
|
+
* Custom Rate
|
|
2977
|
+
* @description Custom rate if allowed
|
|
3064
2978
|
*/
|
|
3065
|
-
|
|
2979
|
+
custom_rate?: number | string | null;
|
|
3066
2980
|
/**
|
|
3067
|
-
*
|
|
3068
|
-
* @description
|
|
2981
|
+
* Subjects
|
|
2982
|
+
* @description Subject codes/IDs
|
|
3069
2983
|
*/
|
|
3070
|
-
|
|
2984
|
+
subjects?: string[] | null;
|
|
3071
2985
|
/**
|
|
3072
|
-
*
|
|
3073
|
-
* @
|
|
2986
|
+
* Topics
|
|
2987
|
+
* @description Topic codes/IDs
|
|
3074
2988
|
*/
|
|
3075
|
-
|
|
2989
|
+
topics?: string[] | null;
|
|
2990
|
+
};
|
|
2991
|
+
/**
|
|
2992
|
+
* WebhookCreateRequest
|
|
2993
|
+
* @description Request model for creating a webhook.
|
|
2994
|
+
*/
|
|
2995
|
+
WebhookCreateRequest: {
|
|
3076
2996
|
/**
|
|
3077
|
-
*
|
|
3078
|
-
* @description
|
|
2997
|
+
* Url
|
|
2998
|
+
* @description Webhook endpoint URL
|
|
3079
2999
|
*/
|
|
3080
|
-
|
|
3081
|
-
[key: string]: unknown;
|
|
3082
|
-
} | null;
|
|
3000
|
+
url: string;
|
|
3083
3001
|
/**
|
|
3084
|
-
*
|
|
3085
|
-
* @
|
|
3002
|
+
* Events
|
|
3003
|
+
* @description Events to subscribe to
|
|
3086
3004
|
*/
|
|
3087
|
-
|
|
3005
|
+
events: components["schemas"]["EventTypeEnum"][];
|
|
3088
3006
|
/**
|
|
3089
|
-
*
|
|
3090
|
-
* @description
|
|
3007
|
+
* Secret
|
|
3008
|
+
* @description Secret for webhook signature
|
|
3091
3009
|
*/
|
|
3092
|
-
|
|
3010
|
+
secret?: string | null;
|
|
3093
3011
|
/**
|
|
3094
|
-
* Is
|
|
3095
|
-
* @description
|
|
3096
|
-
* @default
|
|
3012
|
+
* Is Active
|
|
3013
|
+
* @description Whether webhook is active
|
|
3014
|
+
* @default true
|
|
3097
3015
|
*/
|
|
3098
|
-
|
|
3016
|
+
is_active: boolean;
|
|
3017
|
+
/** Description */
|
|
3018
|
+
description?: string | null;
|
|
3099
3019
|
};
|
|
3100
|
-
/**
|
|
3101
|
-
* PricingMode
|
|
3102
|
-
* @description Service pricing mode enum.
|
|
3103
|
-
* @enum {string}
|
|
3104
|
-
*/
|
|
3105
|
-
PricingMode: "org_flat_rate" | "expert_defined";
|
|
3106
3020
|
/**
|
|
3107
3021
|
* ProductPrice
|
|
3108
3022
|
* @description Base product pricing (maps to product_pricings_tbl with variant_id=NULL)
|
|
@@ -3161,280 +3075,97 @@ export interface components {
|
|
|
3161
3075
|
requires_payment_method_upfront: boolean;
|
|
3162
3076
|
};
|
|
3163
3077
|
/**
|
|
3164
|
-
*
|
|
3165
|
-
* @description
|
|
3078
|
+
* ServiceSettingsSection
|
|
3079
|
+
* @description Service booking configuration (maps to service_settings_tbl)
|
|
3166
3080
|
*/
|
|
3167
|
-
|
|
3081
|
+
ServiceSettingsSection: {
|
|
3168
3082
|
/**
|
|
3169
|
-
*
|
|
3170
|
-
* @description
|
|
3083
|
+
* Min Booking Duration
|
|
3084
|
+
* @description Minimum booking duration in minutes
|
|
3085
|
+
* @default 20
|
|
3171
3086
|
*/
|
|
3172
|
-
|
|
3173
|
-
/** @description org_service (SRV-at-org) or expert_service (SRV-at-exp) */
|
|
3174
|
-
service_type: components["schemas"]["ServiceType"];
|
|
3087
|
+
min_booking_duration: number;
|
|
3175
3088
|
/**
|
|
3176
|
-
*
|
|
3177
|
-
* @description
|
|
3089
|
+
* Max Booking Duration
|
|
3090
|
+
* @description Maximum booking duration in minutes
|
|
3091
|
+
* @default 60
|
|
3178
3092
|
*/
|
|
3179
|
-
|
|
3093
|
+
max_booking_duration: number;
|
|
3180
3094
|
/**
|
|
3181
|
-
*
|
|
3182
|
-
* @description
|
|
3095
|
+
* Booking Duration Step
|
|
3096
|
+
* @description Duration increment in minutes
|
|
3097
|
+
* @default 15
|
|
3183
3098
|
*/
|
|
3184
|
-
|
|
3099
|
+
booking_duration_step: number;
|
|
3185
3100
|
/**
|
|
3186
|
-
*
|
|
3187
|
-
* @description
|
|
3101
|
+
* Booking Lead Time Value
|
|
3102
|
+
* @description Hours before session required
|
|
3103
|
+
* @default 2
|
|
3188
3104
|
*/
|
|
3189
|
-
|
|
3105
|
+
booking_lead_time_value: number;
|
|
3190
3106
|
/**
|
|
3191
|
-
*
|
|
3192
|
-
* @description
|
|
3107
|
+
* Booking Lead Time Handler
|
|
3108
|
+
* @description Who controls lead time: org, expert
|
|
3109
|
+
* @default org
|
|
3193
3110
|
*/
|
|
3194
|
-
|
|
3111
|
+
booking_lead_time_handler: string;
|
|
3195
3112
|
/**
|
|
3196
|
-
*
|
|
3197
|
-
* @description
|
|
3113
|
+
* Buffer Time Before
|
|
3114
|
+
* @description Minutes gap before session
|
|
3115
|
+
* @default 0
|
|
3198
3116
|
*/
|
|
3199
|
-
|
|
3117
|
+
buffer_time_before: number;
|
|
3200
3118
|
/**
|
|
3201
|
-
*
|
|
3202
|
-
* @description
|
|
3203
|
-
* @default
|
|
3119
|
+
* Buffer Time After
|
|
3120
|
+
* @description Minutes gap after session
|
|
3121
|
+
* @default 0
|
|
3204
3122
|
*/
|
|
3205
|
-
|
|
3123
|
+
buffer_time_after: number;
|
|
3206
3124
|
/**
|
|
3207
|
-
*
|
|
3208
|
-
* @
|
|
3209
|
-
|
|
3210
|
-
enrollment_mode: components["schemas"]["EnrollmentMode"];
|
|
3211
|
-
/**
|
|
3212
|
-
* Enrollment Requires Approval
|
|
3213
|
-
* @description Admin must approve applications
|
|
3214
|
-
* @default true
|
|
3215
|
-
*/
|
|
3216
|
-
enrollment_requires_approval: boolean;
|
|
3217
|
-
/**
|
|
3218
|
-
* Max Experts
|
|
3219
|
-
* @description Max experts allowed
|
|
3220
|
-
*/
|
|
3221
|
-
max_experts?: number | null;
|
|
3222
|
-
/**
|
|
3223
|
-
* @description Fee type for experts
|
|
3224
|
-
* @default free
|
|
3225
|
-
*/
|
|
3226
|
-
expert_fee_type: components["schemas"]["ExpertFeeType"];
|
|
3227
|
-
/**
|
|
3228
|
-
* Expert Fee Product Id
|
|
3229
|
-
* @description Product ID for enrollment fee
|
|
3230
|
-
*/
|
|
3231
|
-
expert_fee_product_id?: number | null;
|
|
3232
|
-
/**
|
|
3233
|
-
* @description Pricing mode
|
|
3234
|
-
* @default expert_defined
|
|
3235
|
-
*/
|
|
3236
|
-
pricing_mode: components["schemas"]["PricingMode"];
|
|
3237
|
-
/**
|
|
3238
|
-
* Org Flat Rate
|
|
3239
|
-
* @description Flat rate if org_flat_rate mode
|
|
3240
|
-
*/
|
|
3241
|
-
org_flat_rate?: number | string | null;
|
|
3242
|
-
/**
|
|
3243
|
-
* Currency
|
|
3244
|
-
* @description Currency code
|
|
3245
|
-
* @default USD
|
|
3246
|
-
*/
|
|
3247
|
-
currency: string;
|
|
3248
|
-
/**
|
|
3249
|
-
* Min Rate
|
|
3250
|
-
* @description Minimum expert rate
|
|
3251
|
-
*/
|
|
3252
|
-
min_rate?: number | string | null;
|
|
3253
|
-
/**
|
|
3254
|
-
* Max Rate
|
|
3255
|
-
* @description Maximum expert rate
|
|
3256
|
-
*/
|
|
3257
|
-
max_rate?: number | string | null;
|
|
3258
|
-
/**
|
|
3259
|
-
* Company Id
|
|
3260
|
-
* @description Company ID for multi-company orgs
|
|
3261
|
-
*/
|
|
3262
|
-
company_id?: number | null;
|
|
3263
|
-
};
|
|
3264
|
-
/**
|
|
3265
|
-
* MediaSection
|
|
3266
|
-
* @description Product media files - direct media data
|
|
3267
|
-
*/
|
|
3268
|
-
MediaSection: {
|
|
3269
|
-
/**
|
|
3270
|
-
* Media Items
|
|
3271
|
-
* @description List of media files to attach to product
|
|
3272
|
-
*/
|
|
3273
|
-
media_items?: components["schemas"]["MediaItem"][] | null;
|
|
3274
|
-
};
|
|
3275
|
-
/**
|
|
3276
|
-
* OverrideTypeEnum
|
|
3277
|
-
* @description Override type enum.
|
|
3278
|
-
* @enum {string}
|
|
3279
|
-
*/
|
|
3280
|
-
OverrideTypeEnum: "unavailable" | "custom";
|
|
3281
|
-
ErrorResponse: {
|
|
3282
|
-
/** @example about:blank */
|
|
3283
|
-
type?: string;
|
|
3284
|
-
/** @example GENERIC_ERROR */
|
|
3285
|
-
code?: string;
|
|
3286
|
-
/** @example Client Error */
|
|
3287
|
-
title?: string;
|
|
3288
|
-
/** @example 400 */
|
|
3289
|
-
status?: number;
|
|
3290
|
-
/** @example An error occurred */
|
|
3291
|
-
detail?: string;
|
|
3292
|
-
/** @example /v1/cart/items */
|
|
3293
|
-
instance?: string;
|
|
3294
|
-
extensions?: components["schemas"]["Extensions"];
|
|
3295
|
-
};
|
|
3296
|
-
/**
|
|
3297
|
-
* LocationTypeEnum
|
|
3298
|
-
* @description Location type enum.
|
|
3299
|
-
* @enum {string}
|
|
3300
|
-
*/
|
|
3301
|
-
LocationTypeEnum: "online" | "in_person";
|
|
3302
|
-
/**
|
|
3303
|
-
* NotificationChannelEnum
|
|
3304
|
-
* @description Notification channel enum.
|
|
3305
|
-
* @enum {string}
|
|
3306
|
-
*/
|
|
3307
|
-
NotificationChannelEnum: "email" | "sms" | "push" | "inapp" | "webhook";
|
|
3308
|
-
/**
|
|
3309
|
-
* IdentitySection
|
|
3310
|
-
* @description Localized product content (maps to product_identity_tbl)
|
|
3311
|
-
*/
|
|
3312
|
-
IdentitySection: {
|
|
3313
|
-
/**
|
|
3314
|
-
* Locale
|
|
3315
|
-
* @description Locale: en-US, es-PR, fr-FR, pt-BR, etc.
|
|
3316
|
-
* @default en-US
|
|
3317
|
-
*/
|
|
3318
|
-
locale: string;
|
|
3319
|
-
/**
|
|
3320
|
-
* Title
|
|
3321
|
-
* @description Product title
|
|
3322
|
-
*/
|
|
3323
|
-
title: string;
|
|
3324
|
-
/**
|
|
3325
|
-
* Subtitle
|
|
3326
|
-
* @description Product subtitle
|
|
3327
|
-
*/
|
|
3328
|
-
subtitle?: string | null;
|
|
3329
|
-
/**
|
|
3330
|
-
* Description
|
|
3331
|
-
* @description Full product description
|
|
3332
|
-
*/
|
|
3333
|
-
description?: string | null;
|
|
3334
|
-
/**
|
|
3335
|
-
* Short Description
|
|
3336
|
-
* @description Short description for listings/previews
|
|
3337
|
-
*/
|
|
3338
|
-
short_description?: string | null;
|
|
3339
|
-
};
|
|
3340
|
-
/**
|
|
3341
|
-
* TimeSlotRequest
|
|
3342
|
-
* @description Request model for a single time slot.
|
|
3343
|
-
*/
|
|
3344
|
-
TimeSlotRequest: {
|
|
3345
|
-
/**
|
|
3346
|
-
* Starts At Time
|
|
3347
|
-
* @description Start time in HH:MM format
|
|
3348
|
-
*/
|
|
3349
|
-
starts_at_time: string;
|
|
3350
|
-
/**
|
|
3351
|
-
* Ends At Time
|
|
3352
|
-
* @description End time in HH:MM format
|
|
3353
|
-
*/
|
|
3354
|
-
ends_at_time: string;
|
|
3355
|
-
};
|
|
3356
|
-
/**
|
|
3357
|
-
* ServiceSettingsRequest
|
|
3358
|
-
* @description Request model for service settings.
|
|
3359
|
-
*/
|
|
3360
|
-
ServiceSettingsRequest: {
|
|
3361
|
-
/**
|
|
3362
|
-
* Min Booking Duration
|
|
3363
|
-
* @description Min duration (minutes)
|
|
3364
|
-
*/
|
|
3365
|
-
min_booking_duration?: number | null;
|
|
3366
|
-
/**
|
|
3367
|
-
* Max Booking Duration
|
|
3368
|
-
* @description Max duration (minutes)
|
|
3125
|
+
* Avoid Back To Back
|
|
3126
|
+
* @description Enforce buffer between sessions
|
|
3127
|
+
* @default false
|
|
3369
3128
|
*/
|
|
3370
|
-
|
|
3129
|
+
avoid_back_to_back: boolean;
|
|
3371
3130
|
/**
|
|
3372
|
-
*
|
|
3373
|
-
* @description
|
|
3131
|
+
* Availability Window Days
|
|
3132
|
+
* @description Max days ahead consumer can book
|
|
3133
|
+
* @default 90
|
|
3374
3134
|
*/
|
|
3375
|
-
|
|
3135
|
+
availability_window_days: number;
|
|
3376
3136
|
/**
|
|
3377
|
-
*
|
|
3378
|
-
* @description
|
|
3137
|
+
* First Slot Rounding
|
|
3138
|
+
* @description Round first available slot to nearest X minutes
|
|
3139
|
+
* @default 15
|
|
3379
3140
|
*/
|
|
3380
|
-
|
|
3381
|
-
/** Booking Lead Time Handler */
|
|
3382
|
-
booking_lead_time_handler?: string | null;
|
|
3141
|
+
first_slot_rounding: number;
|
|
3383
3142
|
/**
|
|
3384
|
-
*
|
|
3385
|
-
* @description
|
|
3143
|
+
* Allow Recurring Bookings
|
|
3144
|
+
* @description Allow recurring bookings
|
|
3145
|
+
* @default false
|
|
3386
3146
|
*/
|
|
3387
|
-
|
|
3147
|
+
allow_recurring_bookings: boolean;
|
|
3388
3148
|
/**
|
|
3389
|
-
*
|
|
3390
|
-
* @description
|
|
3149
|
+
* Max Recurring Sessions
|
|
3150
|
+
* @description Max sessions in recurring series
|
|
3391
3151
|
*/
|
|
3392
|
-
|
|
3393
|
-
/** Avoid Back To Back */
|
|
3394
|
-
avoid_back_to_back?: boolean | null;
|
|
3152
|
+
max_recurring_sessions?: number | null;
|
|
3395
3153
|
/**
|
|
3396
|
-
*
|
|
3397
|
-
* @description
|
|
3154
|
+
* Enable Trial Sessions
|
|
3155
|
+
* @description Enable trial/sample sessions
|
|
3156
|
+
* @default false
|
|
3398
3157
|
*/
|
|
3399
|
-
|
|
3158
|
+
enable_trial_sessions: boolean;
|
|
3400
3159
|
/**
|
|
3401
|
-
*
|
|
3402
|
-
* @description
|
|
3160
|
+
* Trial Session Duration
|
|
3161
|
+
* @description Trial session duration in minutes
|
|
3403
3162
|
*/
|
|
3404
|
-
|
|
3163
|
+
trial_session_duration?: number | null;
|
|
3405
3164
|
/**
|
|
3406
|
-
*
|
|
3407
|
-
* @description
|
|
3165
|
+
* Trial Session Price
|
|
3166
|
+
* @description Trial session price (0 for free)
|
|
3408
3167
|
*/
|
|
3409
|
-
|
|
3410
|
-
/** Timeslot Format */
|
|
3411
|
-
timeslot_format?: string | null;
|
|
3412
|
-
/** Slot Type */
|
|
3413
|
-
slot_type?: string | null;
|
|
3414
|
-
/** Allow Multiple Booking */
|
|
3415
|
-
allow_multiple_booking?: boolean | null;
|
|
3416
|
-
/** Allow Recurring Booking */
|
|
3417
|
-
allow_recurring_booking?: boolean | null;
|
|
3418
|
-
/** Max Recurring Sessions */
|
|
3419
|
-
max_recurring_sessions?: number | null;
|
|
3420
|
-
/** Selection Format */
|
|
3421
|
-
selection_format?: string | null;
|
|
3422
|
-
/** Display Divided Slots */
|
|
3423
|
-
display_divided_slots?: boolean | null;
|
|
3424
|
-
/** Allow Out Of Availability Request */
|
|
3425
|
-
allow_out_of_availability_request?: boolean | null;
|
|
3426
|
-
/** Custom Session Title Mode */
|
|
3427
|
-
custom_session_title_mode?: string | null;
|
|
3428
|
-
/** Custom Session Title */
|
|
3429
|
-
custom_session_title?: string | null;
|
|
3430
|
-
/** Trial Enabled */
|
|
3431
|
-
trial_enabled?: boolean | null;
|
|
3432
|
-
/** Trial Duration */
|
|
3433
|
-
trial_duration?: number | null;
|
|
3434
|
-
/** Trial Price */
|
|
3435
|
-
trial_price?: number | string | null;
|
|
3436
|
-
/** Trial Limit Per Consumer */
|
|
3437
|
-
trial_limit_per_consumer?: number | null;
|
|
3168
|
+
trial_session_price?: number | null;
|
|
3438
3169
|
};
|
|
3439
3170
|
/**
|
|
3440
3171
|
* ProductSection
|
|
@@ -3488,136 +3219,405 @@ export interface components {
|
|
|
3488
3219
|
featured: boolean;
|
|
3489
3220
|
};
|
|
3490
3221
|
/**
|
|
3491
|
-
*
|
|
3492
|
-
* @description
|
|
3493
|
-
* @enum {string}
|
|
3494
|
-
*/
|
|
3495
|
-
EventTypeEnum: "booking_created" | "booking_confirmed" | "booking_reminder_24h" | "booking_reminder_1h" | "booking_started" | "booking_completed" | "booking_cancelled_by_consumer" | "booking_cancelled_by_expert" | "booking_cancelled_by_admin" | "booking_rescheduled" | "booking_no_show_consumer" | "booking_no_show_expert" | "credit_issued" | "credit_expiring" | "credit_expired" | "credit_used" | "expert_application_received" | "expert_application_approved" | "expert_application_rejected" | "expert_invited" | "expert_activated" | "expert_suspended";
|
|
3496
|
-
/**
|
|
3497
|
-
* WeeklyTemplateRequest
|
|
3498
|
-
* @description Request model for updating weekly availability template.
|
|
3222
|
+
* PricingSection
|
|
3223
|
+
* @description Pricing configuration (optional - can have product price, variant prices, or both)
|
|
3499
3224
|
*/
|
|
3500
|
-
|
|
3225
|
+
PricingSection: {
|
|
3226
|
+
/** @description Base product price (no variant) */
|
|
3227
|
+
product_price?: components["schemas"]["ProductPrice"] | null;
|
|
3501
3228
|
/**
|
|
3502
|
-
*
|
|
3503
|
-
* @description
|
|
3504
|
-
* @default UTC
|
|
3229
|
+
* Variant Prices
|
|
3230
|
+
* @description Variant-specific prices
|
|
3505
3231
|
*/
|
|
3506
|
-
|
|
3507
|
-
/** Sunday */
|
|
3508
|
-
sunday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3509
|
-
/** Monday */
|
|
3510
|
-
monday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3511
|
-
/** Tuesday */
|
|
3512
|
-
tuesday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3513
|
-
/** Wednesday */
|
|
3514
|
-
wednesday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3515
|
-
/** Thursday */
|
|
3516
|
-
thursday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3517
|
-
/** Friday */
|
|
3518
|
-
friday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3519
|
-
/** Saturday */
|
|
3520
|
-
saturday?: components["schemas"]["TimeSlotRequest"][] | null;
|
|
3232
|
+
variant_prices?: components["schemas"]["VariantPrice"][] | null;
|
|
3521
3233
|
};
|
|
3522
3234
|
/**
|
|
3523
|
-
*
|
|
3524
|
-
* @description
|
|
3235
|
+
* ServiceProductRequest
|
|
3236
|
+
* @description Request model for a single product configuration.
|
|
3525
3237
|
*/
|
|
3526
|
-
|
|
3527
|
-
channel: components["schemas"]["NotificationChannelEnum"];
|
|
3238
|
+
ServiceProductRequest: {
|
|
3528
3239
|
/**
|
|
3529
|
-
*
|
|
3240
|
+
* Product Code
|
|
3241
|
+
* @description Product code
|
|
3242
|
+
*/
|
|
3243
|
+
product_code: string;
|
|
3244
|
+
/**
|
|
3245
|
+
* Is Enabled
|
|
3246
|
+
* @description Enable status
|
|
3530
3247
|
* @default true
|
|
3531
3248
|
*/
|
|
3532
|
-
|
|
3249
|
+
is_enabled: boolean;
|
|
3533
3250
|
/**
|
|
3534
|
-
*
|
|
3535
|
-
* @
|
|
3251
|
+
* Display Order
|
|
3252
|
+
* @default 100
|
|
3536
3253
|
*/
|
|
3537
|
-
|
|
3254
|
+
display_order: number;
|
|
3538
3255
|
/**
|
|
3539
|
-
*
|
|
3540
|
-
* @description
|
|
3256
|
+
* Product Id
|
|
3257
|
+
* @description Link to product_tbl
|
|
3541
3258
|
*/
|
|
3542
|
-
|
|
3259
|
+
product_id?: number | null;
|
|
3260
|
+
/** Custom Settings */
|
|
3261
|
+
custom_settings?: {
|
|
3262
|
+
[key: string]: unknown;
|
|
3263
|
+
} | null;
|
|
3543
3264
|
};
|
|
3544
3265
|
/**
|
|
3545
|
-
*
|
|
3546
|
-
* @description Request model for
|
|
3266
|
+
* CreditVoidRequest
|
|
3267
|
+
* @description Request model for voiding a credit.
|
|
3547
3268
|
*/
|
|
3548
|
-
|
|
3269
|
+
CreditVoidRequest: {
|
|
3549
3270
|
/**
|
|
3550
|
-
*
|
|
3551
|
-
* @description
|
|
3271
|
+
* Reason
|
|
3272
|
+
* @description Reason for voiding
|
|
3552
3273
|
*/
|
|
3553
|
-
|
|
3274
|
+
reason?: string | null;
|
|
3554
3275
|
};
|
|
3555
3276
|
/**
|
|
3556
|
-
*
|
|
3557
|
-
* @description Request model for
|
|
3277
|
+
* NotificationPreferencesRequest
|
|
3278
|
+
* @description Request model for updating notification preferences.
|
|
3558
3279
|
*/
|
|
3559
|
-
|
|
3280
|
+
NotificationPreferencesRequest: {
|
|
3560
3281
|
/**
|
|
3561
|
-
*
|
|
3562
|
-
* @description
|
|
3282
|
+
* Timezone
|
|
3283
|
+
* @description User timezone (IANA format)
|
|
3563
3284
|
*/
|
|
3564
|
-
|
|
3285
|
+
timezone?: string | null;
|
|
3565
3286
|
/**
|
|
3566
|
-
*
|
|
3567
|
-
* @description
|
|
3287
|
+
* Language
|
|
3288
|
+
* @description Preferred language code
|
|
3568
3289
|
*/
|
|
3569
|
-
|
|
3290
|
+
language?: string | null;
|
|
3570
3291
|
/**
|
|
3571
|
-
*
|
|
3572
|
-
* @description
|
|
3292
|
+
* Global Enabled
|
|
3293
|
+
* @description Master toggle for all notifications
|
|
3573
3294
|
*/
|
|
3574
|
-
|
|
3295
|
+
global_enabled?: boolean | null;
|
|
3296
|
+
/** Channel Preferences */
|
|
3297
|
+
channel_preferences?: components["schemas"]["ChannelPreference"][] | null;
|
|
3298
|
+
/** Event Preferences */
|
|
3299
|
+
event_preferences?: components["schemas"]["EventPreference"][] | null;
|
|
3575
3300
|
};
|
|
3576
3301
|
/**
|
|
3577
|
-
*
|
|
3578
|
-
* @description Request model for
|
|
3302
|
+
* ServiceProductsUpdateRequest
|
|
3303
|
+
* @description Request model for bulk updating service products.
|
|
3579
3304
|
*/
|
|
3580
|
-
|
|
3305
|
+
ServiceProductsUpdateRequest: {
|
|
3306
|
+
/** Products */
|
|
3307
|
+
products: components["schemas"]["ServiceProductRequest"][];
|
|
3308
|
+
};
|
|
3309
|
+
/**
|
|
3310
|
+
* ServiceProductCreateRequest
|
|
3311
|
+
* @description Service creation request - inherits common fields, adds service-specific sections
|
|
3312
|
+
* @example {
|
|
3313
|
+
* "identity": {
|
|
3314
|
+
* "locale": "en-US",
|
|
3315
|
+
* "title": "Online Tutoring Service"
|
|
3316
|
+
* },
|
|
3317
|
+
* "pricing": {
|
|
3318
|
+
* "product_price": {
|
|
3319
|
+
* "amount": 25,
|
|
3320
|
+
* "currency": "USD",
|
|
3321
|
+
* "price_type": "one_time"
|
|
3322
|
+
* }
|
|
3323
|
+
* },
|
|
3324
|
+
* "product": {
|
|
3325
|
+
* "is_digital": true,
|
|
3326
|
+
* "status": "draft",
|
|
3327
|
+
* "visibility": "public"
|
|
3328
|
+
* },
|
|
3329
|
+
* "service": {
|
|
3330
|
+
* "enrollment_mode": "open",
|
|
3331
|
+
* "max_rate": 100,
|
|
3332
|
+
* "min_rate": 15,
|
|
3333
|
+
* "pricing_mode": "expert_defined",
|
|
3334
|
+
* "service_code": "online-tutoring",
|
|
3335
|
+
* "service_type": "expert_service"
|
|
3336
|
+
* },
|
|
3337
|
+
* "service_settings": {
|
|
3338
|
+
* "availability_window_days": 60,
|
|
3339
|
+
* "booking_duration_step": 30,
|
|
3340
|
+
* "max_booking_duration": 120,
|
|
3341
|
+
* "min_booking_duration": 30
|
|
3342
|
+
* }
|
|
3343
|
+
* }
|
|
3344
|
+
*/
|
|
3345
|
+
ServiceProductCreateRequest: {
|
|
3346
|
+
/** @description Base product configuration */
|
|
3347
|
+
product: components["schemas"]["ProductSection"];
|
|
3348
|
+
/** @description Localized content (title, description) */
|
|
3349
|
+
identity: components["schemas"]["IdentitySection"];
|
|
3350
|
+
/** @description Pre-uploaded image IDs */
|
|
3351
|
+
media?: components["schemas"]["MediaSection"] | null;
|
|
3581
3352
|
/**
|
|
3582
|
-
*
|
|
3583
|
-
* @description
|
|
3353
|
+
* Tags
|
|
3354
|
+
* @description Tag IDs to associate with product
|
|
3584
3355
|
*/
|
|
3585
|
-
|
|
3586
|
-
/**
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
consumer_reschedule_allowed?: boolean | null;
|
|
3598
|
-
/** Expert Cancel Allowed */
|
|
3599
|
-
expert_cancel_allowed?: boolean | null;
|
|
3600
|
-
/** Expert Cancel Window Hours */
|
|
3601
|
-
expert_cancel_window_hours?: number | null;
|
|
3602
|
-
/** Expert In Window Credit */
|
|
3603
|
-
expert_in_window_credit?: boolean | null;
|
|
3604
|
-
/** Expert Out Window Credit */
|
|
3605
|
-
expert_out_window_credit?: boolean | null;
|
|
3606
|
-
/** Expert Reschedule Allowed */
|
|
3607
|
-
expert_reschedule_allowed?: boolean | null;
|
|
3608
|
-
/** Credit Expiry Hours */
|
|
3609
|
-
credit_expiry_hours?: number | null;
|
|
3610
|
-
/** Credit Type */
|
|
3611
|
-
credit_type?: string | null;
|
|
3612
|
-
/** Credit Transferable */
|
|
3613
|
-
credit_transferable?: boolean | null;
|
|
3356
|
+
tags?: number[] | null;
|
|
3357
|
+
/**
|
|
3358
|
+
* Variants
|
|
3359
|
+
* @description Product variants (optional)
|
|
3360
|
+
*/
|
|
3361
|
+
variants?: components["schemas"]["VariantItem"][] | null;
|
|
3362
|
+
/** @description Pricing for product and variants */
|
|
3363
|
+
pricing?: components["schemas"]["PricingSection"] | null;
|
|
3364
|
+
/** @description Service-specific configuration */
|
|
3365
|
+
service: components["schemas"]["ServiceSection"];
|
|
3366
|
+
/** @description Service booking settings */
|
|
3367
|
+
service_settings: components["schemas"]["ServiceSettingsSection"];
|
|
3614
3368
|
};
|
|
3615
3369
|
/**
|
|
3616
|
-
*
|
|
3617
|
-
* @description Expert
|
|
3370
|
+
* ExpertFeeType
|
|
3371
|
+
* @description Expert fee type enum.
|
|
3618
3372
|
* @enum {string}
|
|
3619
3373
|
*/
|
|
3620
|
-
|
|
3374
|
+
ExpertFeeType: "free" | "one_time" | "subscription";
|
|
3375
|
+
/**
|
|
3376
|
+
* TimeSlotRequest
|
|
3377
|
+
* @description Request model for a single time slot.
|
|
3378
|
+
*/
|
|
3379
|
+
TimeSlotRequest: {
|
|
3380
|
+
/**
|
|
3381
|
+
* Starts At Time
|
|
3382
|
+
* @description Start time in HH:MM format
|
|
3383
|
+
*/
|
|
3384
|
+
starts_at_time: string;
|
|
3385
|
+
/**
|
|
3386
|
+
* Ends At Time
|
|
3387
|
+
* @description End time in HH:MM format
|
|
3388
|
+
*/
|
|
3389
|
+
ends_at_time: string;
|
|
3390
|
+
};
|
|
3391
|
+
/**
|
|
3392
|
+
* ServiceCreateRequest
|
|
3393
|
+
* @description Request model for creating a service.
|
|
3394
|
+
*/
|
|
3395
|
+
ServiceCreateRequest: {
|
|
3396
|
+
/**
|
|
3397
|
+
* Service Code
|
|
3398
|
+
* @description Unique code within org: online-tutoring, makeup-services
|
|
3399
|
+
*/
|
|
3400
|
+
service_code: string;
|
|
3401
|
+
/** @description org_service (SRV-at-org) or expert_service (SRV-at-exp) */
|
|
3402
|
+
service_type: components["schemas"]["ServiceType"];
|
|
3403
|
+
/**
|
|
3404
|
+
* Title
|
|
3405
|
+
* @description Display title
|
|
3406
|
+
*/
|
|
3407
|
+
title: string;
|
|
3408
|
+
/**
|
|
3409
|
+
* Description
|
|
3410
|
+
* @description Full description
|
|
3411
|
+
*/
|
|
3412
|
+
description?: string | null;
|
|
3413
|
+
/**
|
|
3414
|
+
* Short Description
|
|
3415
|
+
* @description Short description
|
|
3416
|
+
*/
|
|
3417
|
+
short_description?: string | null;
|
|
3418
|
+
/**
|
|
3419
|
+
* Icon
|
|
3420
|
+
* @description Icon class
|
|
3421
|
+
*/
|
|
3422
|
+
icon?: string | null;
|
|
3423
|
+
/**
|
|
3424
|
+
* Banner Url
|
|
3425
|
+
* @description Banner image URL
|
|
3426
|
+
*/
|
|
3427
|
+
banner_url?: string | null;
|
|
3428
|
+
/**
|
|
3429
|
+
* Display Order
|
|
3430
|
+
* @description Sort order
|
|
3431
|
+
* @default 100
|
|
3432
|
+
*/
|
|
3433
|
+
display_order: number;
|
|
3434
|
+
/**
|
|
3435
|
+
* @description Expert enrollment mode
|
|
3436
|
+
* @default open
|
|
3437
|
+
*/
|
|
3438
|
+
enrollment_mode: components["schemas"]["EnrollmentMode"];
|
|
3439
|
+
/**
|
|
3440
|
+
* Enrollment Requires Approval
|
|
3441
|
+
* @description Admin must approve applications
|
|
3442
|
+
* @default true
|
|
3443
|
+
*/
|
|
3444
|
+
enrollment_requires_approval: boolean;
|
|
3445
|
+
/**
|
|
3446
|
+
* Max Experts
|
|
3447
|
+
* @description Max experts allowed
|
|
3448
|
+
*/
|
|
3449
|
+
max_experts?: number | null;
|
|
3450
|
+
/**
|
|
3451
|
+
* @description Fee type for experts
|
|
3452
|
+
* @default free
|
|
3453
|
+
*/
|
|
3454
|
+
expert_fee_type: components["schemas"]["ExpertFeeType"];
|
|
3455
|
+
/**
|
|
3456
|
+
* Expert Fee Product Id
|
|
3457
|
+
* @description Product ID for enrollment fee
|
|
3458
|
+
*/
|
|
3459
|
+
expert_fee_product_id?: number | null;
|
|
3460
|
+
/**
|
|
3461
|
+
* @description Pricing mode
|
|
3462
|
+
* @default expert_defined
|
|
3463
|
+
*/
|
|
3464
|
+
pricing_mode: components["schemas"]["PricingMode"];
|
|
3465
|
+
/**
|
|
3466
|
+
* Org Flat Rate
|
|
3467
|
+
* @description Flat rate if org_flat_rate mode
|
|
3468
|
+
*/
|
|
3469
|
+
org_flat_rate?: number | string | null;
|
|
3470
|
+
/**
|
|
3471
|
+
* Currency
|
|
3472
|
+
* @description Currency code
|
|
3473
|
+
* @default USD
|
|
3474
|
+
*/
|
|
3475
|
+
currency: string;
|
|
3476
|
+
/**
|
|
3477
|
+
* Min Rate
|
|
3478
|
+
* @description Minimum expert rate
|
|
3479
|
+
*/
|
|
3480
|
+
min_rate?: number | string | null;
|
|
3481
|
+
/**
|
|
3482
|
+
* Max Rate
|
|
3483
|
+
* @description Maximum expert rate
|
|
3484
|
+
*/
|
|
3485
|
+
max_rate?: number | string | null;
|
|
3486
|
+
/**
|
|
3487
|
+
* Company Id
|
|
3488
|
+
* @description Company ID for multi-company orgs
|
|
3489
|
+
*/
|
|
3490
|
+
company_id?: number | null;
|
|
3491
|
+
};
|
|
3492
|
+
/**
|
|
3493
|
+
* EventTypeEnum
|
|
3494
|
+
* @description Booking event type enum.
|
|
3495
|
+
* @enum {string}
|
|
3496
|
+
*/
|
|
3497
|
+
EventTypeEnum: "booking_created" | "booking_confirmed" | "booking_reminder_24h" | "booking_reminder_1h" | "booking_started" | "booking_completed" | "booking_cancelled_by_consumer" | "booking_cancelled_by_expert" | "booking_cancelled_by_admin" | "booking_rescheduled" | "booking_no_show_consumer" | "booking_no_show_expert" | "credit_issued" | "credit_expiring" | "credit_expired" | "credit_used" | "expert_application_received" | "expert_application_approved" | "expert_application_rejected" | "expert_invited" | "expert_activated" | "expert_suspended";
|
|
3498
|
+
/** Body_updateServiceApplication */
|
|
3499
|
+
Body_updateServiceApplication: {
|
|
3500
|
+
/**
|
|
3501
|
+
* Action
|
|
3502
|
+
* @description approve or reject
|
|
3503
|
+
*/
|
|
3504
|
+
action: string;
|
|
3505
|
+
};
|
|
3506
|
+
/**
|
|
3507
|
+
* PricingMode
|
|
3508
|
+
* @description Service pricing mode enum.
|
|
3509
|
+
* @enum {string}
|
|
3510
|
+
*/
|
|
3511
|
+
PricingMode: "org_flat_rate" | "expert_defined";
|
|
3512
|
+
/**
|
|
3513
|
+
* SlotCheckRequest
|
|
3514
|
+
* @description Request model for checking a specific slot.
|
|
3515
|
+
*/
|
|
3516
|
+
SlotCheckRequest: {
|
|
3517
|
+
/**
|
|
3518
|
+
* Expert Id
|
|
3519
|
+
* @description Expert user ID
|
|
3520
|
+
*/
|
|
3521
|
+
expert_id: number;
|
|
3522
|
+
/**
|
|
3523
|
+
* Starts At
|
|
3524
|
+
* @description Start datetime in ISO format (UTC)
|
|
3525
|
+
*/
|
|
3526
|
+
starts_at: string;
|
|
3527
|
+
/**
|
|
3528
|
+
* Duration Minutes
|
|
3529
|
+
* @description Session duration in minutes
|
|
3530
|
+
*/
|
|
3531
|
+
duration_minutes: number;
|
|
3532
|
+
};
|
|
3533
|
+
/**
|
|
3534
|
+
* VariantPrice
|
|
3535
|
+
* @description Variant-specific pricing (maps to product_pricings_tbl with variant_id set)
|
|
3536
|
+
*/
|
|
3537
|
+
VariantPrice: {
|
|
3538
|
+
/**
|
|
3539
|
+
* Variant Index
|
|
3540
|
+
* @description Index in variants array (0-based)
|
|
3541
|
+
*/
|
|
3542
|
+
variant_index: number;
|
|
3543
|
+
/**
|
|
3544
|
+
* Price Type
|
|
3545
|
+
* @description free, one_time, subscription, monthly_plan
|
|
3546
|
+
*/
|
|
3547
|
+
price_type: string;
|
|
3548
|
+
/**
|
|
3549
|
+
* Currency
|
|
3550
|
+
* @description Currency code
|
|
3551
|
+
*/
|
|
3552
|
+
currency: string;
|
|
3553
|
+
/**
|
|
3554
|
+
* Amount
|
|
3555
|
+
* @description Price amount
|
|
3556
|
+
*/
|
|
3557
|
+
amount: number;
|
|
3558
|
+
/**
|
|
3559
|
+
* Compare At Amount
|
|
3560
|
+
* @description Original/strike-through price
|
|
3561
|
+
*/
|
|
3562
|
+
compare_at_amount?: number | null;
|
|
3563
|
+
/**
|
|
3564
|
+
* Interval
|
|
3565
|
+
* @description day, week, month, year
|
|
3566
|
+
*/
|
|
3567
|
+
interval?: string | null;
|
|
3568
|
+
/**
|
|
3569
|
+
* Interval Count
|
|
3570
|
+
* @description Number of intervals
|
|
3571
|
+
*/
|
|
3572
|
+
interval_count?: number | null;
|
|
3573
|
+
/**
|
|
3574
|
+
* Trial Period Days
|
|
3575
|
+
* @description Free trial days
|
|
3576
|
+
*/
|
|
3577
|
+
trial_period_days?: number | null;
|
|
3578
|
+
/**
|
|
3579
|
+
* Initial Amount
|
|
3580
|
+
* @description First payment amount
|
|
3581
|
+
*/
|
|
3582
|
+
initial_amount?: number | null;
|
|
3583
|
+
/**
|
|
3584
|
+
* Gateway
|
|
3585
|
+
* @description stripe, razorpay, paypal, etc.
|
|
3586
|
+
*/
|
|
3587
|
+
gateway?: string | null;
|
|
3588
|
+
/**
|
|
3589
|
+
* Requires Payment Method Upfront
|
|
3590
|
+
* @description Require payment method before trial
|
|
3591
|
+
* @default true
|
|
3592
|
+
*/
|
|
3593
|
+
requires_payment_method_upfront: boolean;
|
|
3594
|
+
};
|
|
3595
|
+
/**
|
|
3596
|
+
* BookingRescheduleRequest
|
|
3597
|
+
* @description Request model for rescheduling a booking.
|
|
3598
|
+
*/
|
|
3599
|
+
BookingRescheduleRequest: {
|
|
3600
|
+
/**
|
|
3601
|
+
* New Starts At
|
|
3602
|
+
* @description New start datetime in ISO format (UTC)
|
|
3603
|
+
*/
|
|
3604
|
+
new_starts_at: string;
|
|
3605
|
+
};
|
|
3606
|
+
ErrorResponse: {
|
|
3607
|
+
/** @example about:blank */
|
|
3608
|
+
type?: string;
|
|
3609
|
+
/** @example GENERIC_ERROR */
|
|
3610
|
+
code?: string;
|
|
3611
|
+
/** @example Client Error */
|
|
3612
|
+
title?: string;
|
|
3613
|
+
/** @example 400 */
|
|
3614
|
+
status?: number;
|
|
3615
|
+
/** @example An error occurred */
|
|
3616
|
+
detail?: string;
|
|
3617
|
+
/** @example /v1/cart/items */
|
|
3618
|
+
instance?: string;
|
|
3619
|
+
extensions?: components["schemas"]["Extensions"];
|
|
3620
|
+
};
|
|
3621
3621
|
};
|
|
3622
3622
|
responses: never;
|
|
3623
3623
|
parameters: never;
|