@blezgo/api-sdk 0.1.4 → 0.1.5

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.
Files changed (137) hide show
  1. package/dist/account/generated.d.ts +193 -193
  2. package/dist/account/generated.d.ts.map +1 -1
  3. package/dist/activity/generated.d.ts +82 -82
  4. package/dist/activity/generated.d.ts.map +1 -1
  5. package/dist/addon/generated.d.ts +96 -96
  6. package/dist/addon/generated.d.ts.map +1 -1
  7. package/dist/admin/generated.d.ts +85 -85
  8. package/dist/admin/generated.d.ts.map +1 -1
  9. package/dist/affiliate/generated.d.ts +87 -87
  10. package/dist/affiliate/generated.d.ts.map +1 -1
  11. package/dist/analytics/generated.d.ts +15 -15
  12. package/dist/analytics/generated.d.ts.map +1 -1
  13. package/dist/announcements/generated.d.ts +34 -34
  14. package/dist/announcements/generated.d.ts.map +1 -1
  15. package/dist/apikeys/generated.d.ts +99 -99
  16. package/dist/apikeys/generated.d.ts.map +1 -1
  17. package/dist/assistance/generated.d.ts +15 -15
  18. package/dist/assistance/generated.d.ts.map +1 -1
  19. package/dist/authentication/generated.d.ts +74 -74
  20. package/dist/authentication/generated.d.ts.map +1 -1
  21. package/dist/blog/generated.d.ts +144 -144
  22. package/dist/blog/generated.d.ts.map +1 -1
  23. package/dist/bundle/generated.d.ts +177 -177
  24. package/dist/bundle/generated.d.ts.map +1 -1
  25. package/dist/cache/generated.d.ts +37 -37
  26. package/dist/cache/generated.d.ts.map +1 -1
  27. package/dist/calendar/generated.d.ts +69 -69
  28. package/dist/calendar/generated.d.ts.map +1 -1
  29. package/dist/campaigns/generated.d.ts +215 -215
  30. package/dist/campaigns/generated.d.ts.map +1 -1
  31. package/dist/cart/generated.d.ts +57 -57
  32. package/dist/cart/generated.d.ts.map +1 -1
  33. package/dist/changelog/generated.d.ts +103 -103
  34. package/dist/changelog/generated.d.ts.map +1 -1
  35. package/dist/channel/generated.d.ts +221 -221
  36. package/dist/channel/generated.d.ts.map +1 -1
  37. package/dist/company/generated.d.ts +35 -35
  38. package/dist/company/generated.d.ts.map +1 -1
  39. package/dist/conference/generated.d.ts +155 -155
  40. package/dist/conference/generated.d.ts.map +1 -1
  41. package/dist/config/generated.d.ts +44 -44
  42. package/dist/config/generated.d.ts.map +1 -1
  43. package/dist/content/generated.d.ts +500 -500
  44. package/dist/content/generated.d.ts.map +1 -1
  45. package/dist/cookies/generated.d.ts +89 -89
  46. package/dist/cookies/generated.d.ts.map +1 -1
  47. package/dist/courses/generated.d.ts +350 -350
  48. package/dist/courses/generated.d.ts.map +1 -1
  49. package/dist/custom/generated.d.ts +70 -70
  50. package/dist/custom/generated.d.ts.map +1 -1
  51. package/dist/dashboard/generated.d.ts +185 -185
  52. package/dist/dashboard/generated.d.ts.map +1 -1
  53. package/dist/elasticsearch/generated.d.ts +15 -15
  54. package/dist/elasticsearch/generated.d.ts.map +1 -1
  55. package/dist/enrollments/generated.d.ts +15 -15
  56. package/dist/enrollments/generated.d.ts.map +1 -1
  57. package/dist/errors/generated.d.ts +15 -15
  58. package/dist/errors/generated.d.ts.map +1 -1
  59. package/dist/eventconfig/generated.d.ts +95 -95
  60. package/dist/eventconfig/generated.d.ts.map +1 -1
  61. package/dist/funnels/generated.d.ts +131 -131
  62. package/dist/funnels/generated.d.ts.map +1 -1
  63. package/dist/gamification/generated.d.ts +144 -144
  64. package/dist/gamification/generated.d.ts.map +1 -1
  65. package/dist/impersonation/generated.d.ts +60 -60
  66. package/dist/impersonation/generated.d.ts.map +1 -1
  67. package/dist/inbox/generated.d.ts +133 -133
  68. package/dist/inbox/generated.d.ts.map +1 -1
  69. package/dist/internal/generated.d.ts +15 -15
  70. package/dist/internal/generated.d.ts.map +1 -1
  71. package/dist/internationalization/generated.d.ts +15 -15
  72. package/dist/internationalization/generated.d.ts.map +1 -1
  73. package/dist/invitations/generated.d.ts +124 -124
  74. package/dist/invitations/generated.d.ts.map +1 -1
  75. package/dist/meetings/generated.d.ts +213 -213
  76. package/dist/meetings/generated.d.ts.map +1 -1
  77. package/dist/metas/generated.d.ts +169 -169
  78. package/dist/metas/generated.d.ts.map +1 -1
  79. package/dist/notification/generated.d.ts +411 -411
  80. package/dist/notification/generated.d.ts.map +1 -1
  81. package/dist/notifications/generated.d.ts +15 -15
  82. package/dist/notifications/generated.d.ts.map +1 -1
  83. package/dist/onboarding/generated.d.ts +96 -96
  84. package/dist/onboarding/generated.d.ts.map +1 -1
  85. package/dist/packages/generated.d.ts +78 -78
  86. package/dist/packages/generated.d.ts.map +1 -1
  87. package/dist/payments/generated.d.ts +530 -530
  88. package/dist/payments/generated.d.ts.map +1 -1
  89. package/dist/payouts/generated.d.ts +15 -15
  90. package/dist/payouts/generated.d.ts.map +1 -1
  91. package/dist/plans/generated.d.ts +281 -281
  92. package/dist/plans/generated.d.ts.map +1 -1
  93. package/dist/pricing/generated.d.ts +97 -97
  94. package/dist/pricing/generated.d.ts.map +1 -1
  95. package/dist/products/generated.d.ts +491 -491
  96. package/dist/products/generated.d.ts.map +1 -1
  97. package/dist/profile/generated.d.ts +265 -265
  98. package/dist/profile/generated.d.ts.map +1 -1
  99. package/dist/reasons/generated.d.ts +100 -100
  100. package/dist/reasons/generated.d.ts.map +1 -1
  101. package/dist/registration/generated.d.ts +140 -140
  102. package/dist/registration/generated.d.ts.map +1 -1
  103. package/dist/reviews/generated.d.ts +67 -67
  104. package/dist/reviews/generated.d.ts.map +1 -1
  105. package/dist/role/generated.d.ts +216 -216
  106. package/dist/role/generated.d.ts.map +1 -1
  107. package/dist/scheduling/generated.d.ts +118 -118
  108. package/dist/scheduling/generated.d.ts.map +1 -1
  109. package/dist/services/generated.d.ts +819 -819
  110. package/dist/services/generated.d.ts.map +1 -1
  111. package/dist/sessions/generated.d.ts +236 -236
  112. package/dist/sessions/generated.d.ts.map +1 -1
  113. package/dist/spaces/generated.d.ts +423 -423
  114. package/dist/spaces/generated.d.ts.map +1 -1
  115. package/dist/storefront/generated.d.ts +15 -15
  116. package/dist/storefront/generated.d.ts.map +1 -1
  117. package/dist/support/generated.d.ts +1605 -1605
  118. package/dist/support/generated.d.ts.map +1 -1
  119. package/dist/sync/generated.d.ts +156 -156
  120. package/dist/sync/generated.d.ts.map +1 -1
  121. package/dist/tenant/generated.d.ts +435 -435
  122. package/dist/tenant/generated.d.ts.map +1 -1
  123. package/dist/testimonials/generated.d.ts +60 -60
  124. package/dist/testimonials/generated.d.ts.map +1 -1
  125. package/dist/tests/generated.d.ts +415 -415
  126. package/dist/tests/generated.d.ts.map +1 -1
  127. package/dist/tokens/generated.d.ts +48 -48
  128. package/dist/tokens/generated.d.ts.map +1 -1
  129. package/dist/uploads/generated.d.ts +56 -56
  130. package/dist/uploads/generated.d.ts.map +1 -1
  131. package/dist/upsell/generated.d.ts +86 -86
  132. package/dist/upsell/generated.d.ts.map +1 -1
  133. package/dist/user/generated.d.ts +99 -99
  134. package/dist/user/generated.d.ts.map +1 -1
  135. package/dist/webinars/generated.d.ts +185 -185
  136. package/dist/webinars/generated.d.ts.map +1 -1
  137. package/package.json +1 -1
@@ -2181,50 +2181,47 @@ export type webhooks = Record<string, never>;
2181
2181
  export interface components {
2182
2182
  schemas: {
2183
2183
  /**
2184
- * CreatePriorityRequest
2185
- * @description Request model for creating a new priority level
2186
- * @example {
2187
- * "color": "#FF0000",
2188
- * "is_default": false,
2189
- * "priority_level": 1,
2190
- * "priority_name": "Urgent",
2191
- * "priority_slug": "urgent",
2192
- * "sla_first_response_minutes": 15,
2193
- * "sla_resolution_minutes": 120
2194
- * }
2184
+ * UpdateTicketStatusRequest
2185
+ * @description Request model for updating ticket status
2195
2186
  */
2196
- CreatePriorityRequest: {
2197
- /**
2198
- * Priority Name
2199
- * @description Priority name (e.g., 'Urgent', 'High', 'Medium', 'Low')
2200
- */
2201
- priority_name: string;
2187
+ UpdateTicketStatusRequest: {
2202
2188
  /**
2203
- * Priority Slug
2204
- * @description URL-friendly slug (lowercase, hyphens only)
2189
+ * Status
2190
+ * @description New status: new, open, pending, waiting_for_customer, on_hold, resolved, closed
2205
2191
  */
2206
- priority_slug: string;
2192
+ status: string;
2207
2193
  /**
2208
- * Priority Level
2209
- * @description Priority level (1=highest, 100=lowest)
2194
+ * Reason
2195
+ * @description Reason for status change
2210
2196
  */
2211
- priority_level: number;
2197
+ reason?: string | null;
2198
+ };
2199
+ /**
2200
+ * CreateTagRequest
2201
+ * @description Request model for creating a new support tag
2202
+ * @example {
2203
+ * "color": "#FF5733",
2204
+ * "description": "Technical bug or issue",
2205
+ * "tag_name": "Bug",
2206
+ * "tag_slug": "bug"
2207
+ * }
2208
+ */
2209
+ app__models__support__category_models__CreateTagRequest: {
2212
2210
  /**
2213
- * Sla First Response Minutes
2214
- * @description SLA for first response in minutes
2211
+ * Tag Name
2212
+ * @description Tag name
2215
2213
  */
2216
- sla_first_response_minutes?: number | null;
2214
+ tag_name: string;
2217
2215
  /**
2218
- * Sla Resolution Minutes
2219
- * @description SLA for resolution in minutes
2216
+ * Tag Slug
2217
+ * @description URL-friendly slug (lowercase, hyphens only)
2220
2218
  */
2221
- sla_resolution_minutes?: number | null;
2219
+ tag_slug: string;
2222
2220
  /**
2223
- * Is Default
2224
- * @description Whether this is the default priority level
2225
- * @default false
2221
+ * Description
2222
+ * @description Tag description
2226
2223
  */
2227
- is_default: boolean;
2224
+ description?: string | null;
2228
2225
  /**
2229
2226
  * Color
2230
2227
  * @description Color hex code (e.g., '#FF5733')
@@ -2232,546 +2229,616 @@ export interface components {
2232
2229
  color?: string | null;
2233
2230
  };
2234
2231
  /**
2235
- * CreateCommentRequest
2236
- * @description Request model for adding a comment
2232
+ * CreateSavedFilterRequest
2233
+ * @description Request model for creating a saved filter
2234
+ * @example {
2235
+ * "description": "All high priority tickets assigned to me",
2236
+ * "filter_config": {
2237
+ * "priority": [
2238
+ * "high",
2239
+ * "urgent"
2240
+ * ],
2241
+ * "status": [
2242
+ * "open",
2243
+ * "pending"
2244
+ * ]
2245
+ * },
2246
+ * "filter_name": "My High Priority Tickets",
2247
+ * "filter_slug": "my-high-priority",
2248
+ * "is_default": true,
2249
+ * "is_public": false
2250
+ * }
2237
2251
  */
2238
- CreateCommentRequest: {
2252
+ CreateSavedFilterRequest: {
2239
2253
  /**
2240
- * Comment Body
2241
- * @description Comment text
2254
+ * Filter Name
2255
+ * @description Filter name
2242
2256
  */
2243
- comment_body: string;
2257
+ filter_name: string;
2244
2258
  /**
2245
- * Is Internal
2246
- * @description Internal note (agents only)
2259
+ * Filter Slug
2260
+ * @description URL-friendly slug
2261
+ */
2262
+ filter_slug: string;
2263
+ /**
2264
+ * Description
2265
+ * @description Filter description
2266
+ */
2267
+ description?: string | null;
2268
+ /**
2269
+ * Filter Config
2270
+ * @description Filter configuration (query, filters, sort)
2271
+ */
2272
+ filter_config: {
2273
+ [key: string]: unknown;
2274
+ };
2275
+ /**
2276
+ * Is Public
2277
+ * @description Make filter available to all users in organization
2247
2278
  * @default false
2248
2279
  */
2249
- is_internal: boolean | null;
2280
+ is_public: boolean;
2281
+ /**
2282
+ * Is Default
2283
+ * @description Set as default filter for user
2284
+ * @default false
2285
+ */
2286
+ is_default: boolean;
2250
2287
  };
2251
2288
  /**
2252
- * CreateAutomationRuleRequest
2253
- * @description Request model for creating a new automation rule
2289
+ * UpdateCategoryRequest
2290
+ * @description Request model for updating a support category
2254
2291
  * @example {
2255
- * "actions": [
2256
- * {
2257
- * "action": "assign_to_team",
2258
- * "team_id": 456
2259
- * },
2260
- * {
2261
- * "action": "set_priority",
2262
- * "priority_id": 2
2263
- * }
2264
- * ],
2265
- * "applies_to_all_categories": false,
2266
- * "applies_to_all_priorities": true,
2267
- * "category_ids": [
2268
- * 123
2269
- * ],
2270
- * "conditions": {
2271
- * "all": [
2272
- * {
2273
- * "field": "category_id",
2274
- * "operator": "equals",
2275
- * "value": 123
2276
- * }
2277
- * ]
2278
- * },
2279
- * "description": "Automatically assign new tickets to the support team",
2280
- * "execution_order": 1,
2281
- * "is_active": true,
2282
- * "rule_name": "Auto-assign New Tickets",
2283
- * "rule_slug": "auto-assign-new",
2284
- * "status": "active",
2285
- * "stop_processing": false,
2286
- * "trigger_event": "ticket_created"
2292
+ * "category_name": "Billing & Payment Issues",
2293
+ * "description": "Updated description for billing category",
2294
+ * "is_public": true,
2295
+ * "sla_first_response_minutes": 30,
2296
+ * "status": "active"
2287
2297
  * }
2288
2298
  */
2289
- CreateAutomationRuleRequest: {
2290
- /**
2291
- * Rule Name
2292
- * @description Rule name
2293
- */
2294
- rule_name: string;
2299
+ app__models__support__category_models__UpdateCategoryRequest: {
2295
2300
  /**
2296
- * Rule Slug
2297
- * @description URL-friendly slug (lowercase, hyphens only)
2301
+ * Category Name
2302
+ * @description Category name
2298
2303
  */
2299
- rule_slug: string;
2304
+ category_name?: string | null;
2300
2305
  /**
2301
2306
  * Description
2302
- * @description Rule description
2307
+ * @description Category description
2303
2308
  */
2304
2309
  description?: string | null;
2305
2310
  /**
2306
- * Trigger Event
2307
- * @description Event that triggers the rule (ticket_created, status_changed, etc.)
2311
+ * Category Slug
2312
+ * @description URL-friendly slug
2308
2313
  */
2309
- trigger_event: string;
2314
+ category_slug?: string | null;
2310
2315
  /**
2311
- * Execution Order
2312
- * @description Order of execution (lower runs first)
2313
- * @default 0
2316
+ * Parent Category Id
2317
+ * @description Parent category ID
2314
2318
  */
2315
- execution_order: number;
2319
+ parent_category_id?: number | null;
2316
2320
  /**
2317
- * Stop Processing
2318
- * @description Stop processing other rules if this matches
2319
- * @default false
2321
+ * Default Team Id
2322
+ * @description Default team ID for auto-routing
2320
2323
  */
2321
- stop_processing: boolean;
2324
+ default_team_id?: number | null;
2322
2325
  /**
2323
- * Conditions
2324
- * @description Matching conditions (AND/OR logic)
2326
+ * Default Priority
2327
+ * @description Default priority slug
2325
2328
  */
2326
- conditions?: {
2327
- [key: string]: unknown;
2328
- } | null;
2329
+ default_priority?: string | null;
2329
2330
  /**
2330
- * Actions
2331
- * @description Actions to perform when conditions match
2331
+ * Sla First Response Minutes
2332
+ * @description SLA for first response in minutes
2332
2333
  */
2333
- actions: {
2334
- [key: string]: unknown;
2335
- }[];
2334
+ sla_first_response_minutes?: number | null;
2336
2335
  /**
2337
- * Applies To All Categories
2338
- * @description Apply to all categories
2339
- * @default true
2336
+ * Sla Resolution Minutes
2337
+ * @description SLA for resolution in minutes
2340
2338
  */
2341
- applies_to_all_categories: boolean;
2339
+ sla_resolution_minutes?: number | null;
2342
2340
  /**
2343
- * Category Ids
2344
- * @description Specific category IDs (if not all)
2341
+ * Is Public
2342
+ * @description Whether category is visible to customers
2345
2343
  */
2346
- category_ids?: number[] | null;
2344
+ is_public?: boolean | null;
2347
2345
  /**
2348
- * Applies To All Priorities
2349
- * @description Apply to all priorities
2350
- * @default true
2346
+ * Display Order
2347
+ * @description Display order for sorting
2351
2348
  */
2352
- applies_to_all_priorities: boolean;
2349
+ display_order?: number | null;
2353
2350
  /**
2354
- * Priority Ids
2355
- * @description Specific priority IDs (if not all)
2351
+ * Icon
2352
+ * @description Icon identifier
2356
2353
  */
2357
- priority_ids?: number[] | null;
2354
+ icon?: string | null;
2358
2355
  /**
2359
- * Is Active
2360
- * @description Rule is active
2361
- * @default true
2356
+ * Color
2357
+ * @description Color hex code
2362
2358
  */
2363
- is_active: boolean;
2359
+ color?: string | null;
2364
2360
  /**
2365
2361
  * Status
2366
- * @description Rule status (active, inactive, paused)
2367
- * @default active
2362
+ * @description Category status: active, inactive, archived
2368
2363
  */
2369
- status: string;
2370
- };
2371
- /**
2372
- * ApplyCannedResponseRequest
2373
- * @description Request model for applying a canned response
2374
- * @example {
2375
- * "context": {
2376
- * "agent": {
2377
- * "email": "jane@example.com",
2378
- * "name": "Jane Smith"
2379
- * },
2380
- * "ticket": {
2381
- * "customer_name": "John Doe",
2382
- * "ticket_number": "TKT-12345"
2383
- * }
2364
+ status?: string | null;
2365
+ /**
2366
+ * Settings
2367
+ * @description Additional JSON settings
2368
+ */
2369
+ settings?: {
2370
+ [key: string]: unknown;
2371
+ } | null;
2372
+ };
2373
+ /**
2374
+ * ReverseMergeRequest
2375
+ * @description Request model for reversing a ticket merge
2376
+ */
2377
+ ReverseMergeRequest: {
2378
+ /**
2379
+ * Reversal Reason
2380
+ * @description Reason for reversal
2381
+ */
2382
+ reversal_reason: string;
2383
+ };
2384
+ /**
2385
+ * MarkFollowupRequest
2386
+ * @description Request model for marking follow-up as completed
2387
+ */
2388
+ MarkFollowupRequest: {
2389
+ /**
2390
+ * Followup Notes
2391
+ * @description Follow-up notes
2392
+ */
2393
+ followup_notes: string;
2394
+ };
2395
+ /**
2396
+ * ExecuteMacroRequest
2397
+ * @description Request model for executing a macro
2398
+ * @example {
2399
+ * "ticket_data": {
2400
+ * "category_id": 5,
2401
+ * "id": 123,
2402
+ * "priority_id": 2,
2403
+ * "status": "open",
2404
+ * "ticket_number": "TKT-12345"
2384
2405
  * }
2385
2406
  * }
2386
2407
  */
2387
- ApplyCannedResponseRequest: {
2408
+ ExecuteMacroRequest: {
2388
2409
  /**
2389
- * Context
2390
- * @description Context data for placeholder replacement (e.g., ticket data, agent data)
2410
+ * Ticket Data
2411
+ * @description Ticket context data
2391
2412
  */
2392
- context: {
2413
+ ticket_data: {
2393
2414
  [key: string]: unknown;
2394
2415
  };
2395
2416
  };
2396
2417
  /**
2397
- * ReportType
2398
- * @description Report types for exports
2399
- * @enum {string}
2418
+ * BulkUpdateStatusRequest
2419
+ * @description Request model for bulk updating ticket status
2400
2420
  */
2401
- ReportType: "ticket_metrics" | "agent_performance" | "sla_compliance" | "custom";
2421
+ BulkUpdateStatusRequest: {
2422
+ /**
2423
+ * Ticket Ids
2424
+ * @description List of ticket IDs
2425
+ */
2426
+ ticket_ids: number[];
2427
+ /**
2428
+ * New Status
2429
+ * @description New status
2430
+ */
2431
+ new_status: string;
2432
+ };
2402
2433
  /**
2403
- * GetAgentPerformanceRequest
2404
- * @description Request model for getting agent performance metrics
2405
- * @example {
2406
- * "agent_id": 123,
2407
- * "date_from": "2025-11-01",
2408
- * "date_to": "2025-12-01",
2409
- * "limit": 50,
2410
- * "page": 1,
2411
- * "period_type": "daily"
2412
- * }
2434
+ * MergeTicketsRequest
2435
+ * @description Request model for merging tickets
2413
2436
  */
2414
- GetAgentPerformanceRequest: {
2437
+ MergeTicketsRequest: {
2415
2438
  /**
2416
- * Agent Id
2417
- * @description Specific agent ID
2439
+ * Parent Ticket Id
2440
+ * @description Parent ticket ID (kept active)
2418
2441
  */
2419
- agent_id?: number | null;
2442
+ parent_ticket_id: number;
2420
2443
  /**
2421
- * Team Id
2422
- * @description Filter by team ID
2444
+ * Child Ticket Id
2445
+ * @description Child ticket ID (merged)
2423
2446
  */
2424
- team_id?: number | null;
2447
+ child_ticket_id: number;
2425
2448
  /**
2426
- * @description Period type: daily, weekly, monthly
2427
- * @default daily
2449
+ * Merge Reason
2450
+ * @description Reason for merge
2428
2451
  */
2429
- period_type: components["schemas"]["PeriodType"];
2452
+ merge_reason: string;
2430
2453
  /**
2431
- * Date From
2432
- * @description Start date
2454
+ * Merge Type
2455
+ * @description Merge type
2433
2456
  */
2434
- date_from?: string | null;
2457
+ merge_type: string;
2435
2458
  /**
2436
- * Date To
2437
- * @description End date
2459
+ * Copy Comments
2460
+ * @description Copy comments to parent
2461
+ * @default true
2438
2462
  */
2439
- date_to?: string | null;
2463
+ copy_comments: boolean;
2440
2464
  /**
2441
- * Page
2442
- * @description Page number
2443
- * @default 1
2465
+ * Copy Attachments
2466
+ * @description Copy attachments to parent
2467
+ * @default true
2444
2468
  */
2445
- page: number;
2469
+ copy_attachments: boolean;
2446
2470
  /**
2447
- * Limit
2448
- * @description Items per page
2449
- * @default 50
2471
+ * Notify Customers
2472
+ * @description Notify customers
2473
+ * @default true
2450
2474
  */
2451
- limit: number;
2475
+ notify_customers: boolean;
2452
2476
  };
2453
- InvalidParam: {
2454
- /** @example items[0].quantity */
2455
- field?: string;
2456
- /** @example Input should be greater than or equal to 1 */
2457
- error?: string;
2477
+ Extensions: {
2478
+ /** @example GENERIC_ERROR */
2479
+ message_code?: string;
2480
+ /** @example [] */
2481
+ invalid_params?: components["schemas"]["InvalidParam"][];
2482
+ extra_data?: Record<string, never> | null;
2483
+ /** @example Detailed debug information */
2484
+ debug?: string | null;
2458
2485
  };
2459
2486
  /**
2460
- * AddTeamMemberRequest
2461
- * @description Request model for adding a team member
2487
+ * CreateEmailTemplateRequest
2488
+ * @description Request model for creating email template
2489
+ * @example {
2490
+ * "available_variables": [
2491
+ * "ticket_number",
2492
+ * "ticket_subject",
2493
+ * "customer_name"
2494
+ * ],
2495
+ * "body_html": "<h1>Your ticket has been created</h1><p>Ticket: {{ticket_number}}</p>",
2496
+ * "body_text": "Your ticket {{ticket_number}} has been created.",
2497
+ * "is_default": true,
2498
+ * "subject_template": "Ticket #{{ticket_number}} Created: {{ticket_subject}}",
2499
+ * "template_name": "New Ticket Created",
2500
+ * "template_slug": "ticket-created",
2501
+ * "template_type": "ticket_created"
2502
+ * }
2462
2503
  */
2463
- AddTeamMemberRequest: {
2504
+ CreateEmailTemplateRequest: {
2464
2505
  /**
2465
- * User Id
2466
- * @description User ID to add to team
2506
+ * Template Name
2507
+ * @description Template name
2467
2508
  */
2468
- user_id: number;
2469
- /** User Name */
2470
- user_name: string;
2471
- /** User Email */
2472
- user_email: string;
2509
+ template_name: string;
2473
2510
  /**
2474
- * Role
2475
- * @description agent, senior_agent, team_lead, trainee
2476
- * @default agent
2511
+ * Template Slug
2512
+ * @description Unique template slug
2477
2513
  */
2478
- role: string;
2514
+ template_slug: string;
2479
2515
  /**
2480
- * Is Team Lead
2481
- * @default false
2516
+ * Description
2517
+ * @description Template description
2482
2518
  */
2483
- is_team_lead: boolean;
2484
- /** Max Concurrent Tickets */
2485
- max_concurrent_tickets?: number | null;
2519
+ description?: string | null;
2520
+ /** @description Template type */
2521
+ template_type: components["schemas"]["TemplateType"];
2486
2522
  /**
2487
- * Skills
2488
- * @description Agent skills and expertise
2523
+ * Subject Template
2524
+ * @description Subject with {{variables}}
2489
2525
  */
2490
- skills?: string[] | null;
2526
+ subject_template: string;
2491
2527
  /**
2492
- * Skill Level
2493
- * @description beginner, intermediate, expert, master
2494
- * @default intermediate
2528
+ * Body Html
2529
+ * @description HTML body template
2495
2530
  */
2496
- skill_level: string;
2531
+ body_html: string;
2497
2532
  /**
2498
- * Categories
2499
- * @description Categories agent handles
2533
+ * Body Text
2534
+ * @description Plain text body template
2500
2535
  */
2501
- categories?: string[] | null;
2536
+ body_text?: string | null;
2502
2537
  /**
2503
- * Priority Levels
2504
- * @description Priority levels: low, medium, high, critical
2538
+ * Available Variables
2539
+ * @description Available template variables
2505
2540
  */
2506
- priority_levels?: string[] | null;
2541
+ available_variables?: string[] | null;
2507
2542
  /**
2508
- * Auto Assign Enabled
2509
- * @default true
2543
+ * From Email
2544
+ * @description Override from email
2510
2545
  */
2511
- auto_assign_enabled: boolean;
2546
+ from_email?: string | null;
2512
2547
  /**
2513
- * Assignment Weight
2514
- * @description Weight for load balancing (100 = normal)
2515
- * @default 100
2548
+ * From Name
2549
+ * @description Override from name
2516
2550
  */
2517
- assignment_weight: number;
2518
- /** Working Hours */
2519
- working_hours?: {
2520
- [key: string]: unknown;
2521
- } | null;
2551
+ from_name?: string | null;
2522
2552
  /**
2523
- * Timezone
2524
- * @default UTC
2553
+ * Reply To
2554
+ * @description Reply-to address
2525
2555
  */
2526
- timezone: string;
2556
+ reply_to?: string | null;
2557
+ /**
2558
+ * Is Default
2559
+ * @description Set as default template for type
2560
+ * @default false
2561
+ */
2562
+ is_default: boolean;
2563
+ /**
2564
+ * Language
2565
+ * @description Template language
2566
+ * @default en-US
2567
+ */
2568
+ language: string;
2527
2569
  };
2528
2570
  /**
2529
- * CreateMacroRequest
2530
- * @description Request model for creating a new macro
2571
+ * UpdateMacroRequest
2572
+ * @description Request model for updating a macro
2573
+ */
2574
+ UpdateMacroRequest: {
2575
+ /** Macro Name */
2576
+ macro_name?: string | null;
2577
+ /** Macro Slug */
2578
+ macro_slug?: string | null;
2579
+ /** Description */
2580
+ description?: string | null;
2581
+ /** Actions */
2582
+ actions?: {
2583
+ [key: string]: unknown;
2584
+ }[] | null;
2585
+ /** Include Response */
2586
+ include_response?: boolean | null;
2587
+ /** Canned Response Id */
2588
+ canned_response_id?: number | null;
2589
+ /** Is Public */
2590
+ is_public?: boolean | null;
2591
+ /** Team Ids */
2592
+ team_ids?: number[] | null;
2593
+ /** User Ids */
2594
+ user_ids?: number[] | null;
2595
+ /** Display Order */
2596
+ display_order?: number | null;
2597
+ /** Button Color */
2598
+ button_color?: string | null;
2599
+ /** Icon */
2600
+ icon?: string | null;
2601
+ /** Status */
2602
+ status?: string | null;
2603
+ };
2604
+ /**
2605
+ * SearchCommentsRequest
2606
+ * @description Request model for searching comments
2531
2607
  * @example {
2532
- * "actions": [
2533
- * {
2534
- * "action": "set_status",
2535
- * "value": "solved"
2536
- * },
2537
- * {
2538
- * "action": "add_internal_note",
2539
- * "note": "Ticket closed as solved"
2540
- * }
2541
- * ],
2542
- * "button_color": "#4CAF50",
2543
- * "description": "Mark ticket as solved and close it",
2544
- * "display_order": 1,
2545
- * "icon": "check-circle",
2546
- * "include_response": false,
2547
- * "is_public": true,
2548
- * "macro_name": "Close as Solved",
2549
- * "macro_slug": "close-solved",
2550
- * "status": "active"
2608
+ * "include_internal": false,
2609
+ * "limit": 20,
2610
+ * "page": 1,
2611
+ * "query": "refund",
2612
+ * "ticket_id": "tkt_xxx123"
2551
2613
  * }
2552
2614
  */
2553
- CreateMacroRequest: {
2615
+ SearchCommentsRequest: {
2554
2616
  /**
2555
- * Macro Name
2556
- * @description Macro name
2617
+ * Query
2618
+ * @description Search query
2557
2619
  */
2558
- macro_name: string;
2620
+ query: string;
2559
2621
  /**
2560
- * Macro Slug
2561
- * @description URL-friendly slug
2622
+ * Ticket Id
2623
+ * @description Filter by specific ticket ID
2562
2624
  */
2563
- macro_slug: string;
2625
+ ticket_id?: string | null;
2626
+ /**
2627
+ * Include Internal
2628
+ * @description Include internal notes in search results
2629
+ * @default false
2630
+ */
2631
+ include_internal: boolean;
2632
+ /**
2633
+ * Page
2634
+ * @description Page number
2635
+ * @default 1
2636
+ */
2637
+ page: number;
2638
+ /**
2639
+ * Limit
2640
+ * @description Results per page
2641
+ * @default 20
2642
+ */
2643
+ limit: number;
2644
+ };
2645
+ /**
2646
+ * ReportType
2647
+ * @description Report types for exports
2648
+ * @enum {string}
2649
+ */
2650
+ ReportType: "ticket_metrics" | "agent_performance" | "sla_compliance" | "custom";
2651
+ /**
2652
+ * TemplateType
2653
+ * @description Email template types
2654
+ * @enum {string}
2655
+ */
2656
+ TemplateType: "ticket_created" | "ticket_updated" | "ticket_assigned" | "ticket_resolved" | "ticket_closed" | "comment_added" | "agent_assigned" | "sla_warning" | "customer_satisfaction";
2657
+ /**
2658
+ * CreateCategoryRequest
2659
+ * @description Request model for creating a new support category
2660
+ * @example {
2661
+ * "category_name": "Billing & Payments",
2662
+ * "category_slug": "billing-payments",
2663
+ * "color": "#4CAF50",
2664
+ * "default_priority": "medium",
2665
+ * "default_team_id": 123,
2666
+ * "description": "Issues related to billing, invoices, and payments",
2667
+ * "display_order": 1,
2668
+ * "icon": "icon-billing",
2669
+ * "is_public": true,
2670
+ * "settings": {
2671
+ * "require_account_verification": true
2672
+ * },
2673
+ * "sla_first_response_minutes": 60,
2674
+ * "sla_resolution_minutes": 480
2675
+ * }
2676
+ */
2677
+ app__models__support__category_models__CreateCategoryRequest: {
2678
+ /**
2679
+ * Category Name
2680
+ * @description Category name
2681
+ */
2682
+ category_name: string;
2564
2683
  /**
2565
2684
  * Description
2566
- * @description Macro description
2685
+ * @description Category description
2567
2686
  */
2568
2687
  description?: string | null;
2569
2688
  /**
2570
- * Actions
2571
- * @description Actions to perform
2689
+ * Category Slug
2690
+ * @description URL-friendly slug (lowercase, hyphens only)
2572
2691
  */
2573
- actions: {
2574
- [key: string]: unknown;
2575
- }[];
2692
+ category_slug: string;
2576
2693
  /**
2577
- * Include Response
2578
- * @description Include a canned response
2579
- * @default false
2694
+ * Parent Category Id
2695
+ * @description Parent category ID for hierarchical categories
2580
2696
  */
2581
- include_response: boolean;
2697
+ parent_category_id?: number | null;
2582
2698
  /**
2583
- * Canned Response Id
2584
- * @description Canned response to include
2699
+ * Default Team Id
2700
+ * @description Default team ID for auto-routing tickets
2585
2701
  */
2586
- canned_response_id?: number | null;
2702
+ default_team_id?: number | null;
2587
2703
  /**
2588
- * Is Public
2589
- * @description Available to all agents
2590
- * @default true
2704
+ * Default Priority
2705
+ * @description Default priority slug for tickets in this category
2591
2706
  */
2592
- is_public: boolean;
2707
+ default_priority?: string | null;
2593
2708
  /**
2594
- * Team Ids
2595
- * @description Specific teams (if not public)
2709
+ * Sla First Response Minutes
2710
+ * @description SLA for first response in minutes
2596
2711
  */
2597
- team_ids?: number[] | null;
2712
+ sla_first_response_minutes?: number | null;
2598
2713
  /**
2599
- * User Ids
2600
- * @description Specific users (if not public)
2714
+ * Sla Resolution Minutes
2715
+ * @description SLA for resolution in minutes
2601
2716
  */
2602
- user_ids?: number[] | null;
2717
+ sla_resolution_minutes?: number | null;
2718
+ /**
2719
+ * Is Public
2720
+ * @description Whether category is visible to customers
2721
+ * @default true
2722
+ */
2723
+ is_public: boolean;
2603
2724
  /**
2604
2725
  * Display Order
2605
- * @description Display order
2726
+ * @description Display order for sorting categories
2606
2727
  * @default 0
2607
2728
  */
2608
2729
  display_order: number;
2609
- /**
2610
- * Button Color
2611
- * @description Button color (hex)
2612
- */
2613
- button_color?: string | null;
2614
2730
  /**
2615
2731
  * Icon
2616
- * @description Icon identifier
2732
+ * @description Icon identifier (e.g., 'icon-support', 'fa-question')
2617
2733
  */
2618
2734
  icon?: string | null;
2619
2735
  /**
2620
- * Status
2621
- * @description Macro status (active, inactive)
2622
- * @default active
2736
+ * Color
2737
+ * @description Color hex code (e.g., '#FF5733')
2623
2738
  */
2624
- status: string;
2625
- };
2626
- /**
2627
- * @example {
2628
- * "status": "success",
2629
- * "message": "Operation successful",
2630
- * "message_code": "api_suc_20001",
2631
- * "data": {},
2632
- * "metadata": {
2633
- * "timestamp": "2026-03-26T10:00:00.000Z",
2634
- * "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
2635
- * "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
2636
- * "version": "v1",
2637
- * "executionTime": 42,
2638
- * "language": "en-US"
2639
- * }
2640
- * }
2641
- */
2642
- StandardResponse: {
2643
- /** @example success */
2644
- status?: string;
2645
- data?: Record<string, never> | null;
2646
- /** @example Operation successful */
2647
- message?: string | null;
2648
- /** @example api_suc_20001 */
2649
- message_code?: string | null;
2650
- metadata?: Record<string, never> | null;
2651
- error?: components["schemas"]["ErrorResponse"];
2739
+ color?: string | null;
2740
+ /**
2741
+ * Settings
2742
+ * @description Additional JSON settings
2743
+ */
2744
+ settings?: {
2745
+ [key: string]: unknown;
2746
+ } | null;
2652
2747
  };
2653
2748
  /**
2654
- * UpdateCannedResponseRequest
2655
- * @description Request model for updating a canned response
2749
+ * CreateTeamRequest
2750
+ * @description Request model for creating a team
2656
2751
  */
2657
- UpdateCannedResponseRequest: {
2658
- /** Response Name */
2659
- response_name?: string | null;
2660
- /** Response Slug */
2661
- response_slug?: string | null;
2662
- /** Subject */
2663
- subject?: string | null;
2664
- /** Content */
2665
- content?: string | null;
2666
- /** Content Type */
2667
- content_type?: string | null;
2668
- /** Category */
2669
- category?: string | null;
2670
- /** Tags */
2671
- tags?: string[] | null;
2672
- /** Is Public */
2673
- is_public?: boolean | null;
2674
- /** Team Ids */
2675
- team_ids?: number[] | null;
2676
- /** User Ids */
2677
- user_ids?: number[] | null;
2678
- /** Shortcut */
2679
- shortcut?: string | null;
2680
- /** Status */
2681
- status?: string | null;
2682
- };
2683
- /**
2684
- * AddWatcherRequest
2685
- * @description Request model for adding a watcher to a ticket
2686
- */
2687
- AddWatcherRequest: {
2688
- /**
2689
- * User Id
2690
- * @description User ID to add as watcher
2691
- */
2692
- user_id: number;
2693
- /**
2694
- * User Name
2695
- * @description User name
2696
- */
2697
- user_name: string;
2752
+ CreateTeamRequest: {
2698
2753
  /**
2699
- * User Email
2700
- * @description User email
2754
+ * Team Name
2755
+ * @description Team name
2701
2756
  */
2702
- user_email: string;
2757
+ team_name: string;
2703
2758
  /**
2704
- * Watch Type
2705
- * @description Watch type
2706
- * @default manual
2759
+ * Description
2760
+ * @description Team description
2707
2761
  */
2708
- watch_type: string;
2762
+ description?: string | null;
2709
2763
  /**
2710
- * Notify On Comment
2711
- * @description Notify on comments
2712
- * @default true
2764
+ * Team Type
2765
+ * @description Team type: general, technical, billing, sales, custom
2766
+ * @default general
2713
2767
  */
2714
- notify_on_comment: boolean;
2768
+ team_type: string;
2715
2769
  /**
2716
- * Notify On Status Change
2717
- * @description Notify on status change
2718
- * @default true
2770
+ * Team Lead User Id
2771
+ * @description User ID of team leader
2719
2772
  */
2720
- notify_on_status_change: boolean;
2773
+ team_lead_user_id?: number | null;
2774
+ /** Team Lead Name */
2775
+ team_lead_name?: string | null;
2776
+ /** Team Lead Email */
2777
+ team_lead_email?: string | null;
2721
2778
  /**
2722
- * Notify On Assignment
2723
- * @description Notify on assignment
2724
- * @default true
2779
+ * Auto Assign Enabled
2780
+ * @description Enable auto-assignment
2781
+ * @default false
2725
2782
  */
2726
- notify_on_assignment: boolean;
2783
+ auto_assign_enabled: boolean;
2727
2784
  /**
2728
- * Notify On Resolution
2729
- * @description Notify on resolution
2730
- * @default true
2785
+ * Assignment Strategy
2786
+ * @description round_robin, least_active, skill_based, random
2787
+ * @default round_robin
2731
2788
  */
2732
- notify_on_resolution: boolean;
2733
- };
2734
- /**
2735
- * RateSatisfactionRequest
2736
- * @description Request model for customer satisfaction rating
2737
- */
2738
- RateSatisfactionRequest: {
2789
+ assignment_strategy: string;
2790
+ /** Max Tickets Per Agent */
2791
+ max_tickets_per_agent?: number | null;
2739
2792
  /**
2740
- * Rating
2741
- * @description Satisfaction rating 1-5
2793
+ * Business Hours
2794
+ * @description Business hours schedule
2742
2795
  */
2743
- rating: number;
2796
+ business_hours?: {
2797
+ [key: string]: unknown;
2798
+ } | null;
2744
2799
  /**
2745
- * Comment
2746
- * @description Additional feedback
2800
+ * Timezone
2801
+ * @description Team timezone
2802
+ * @default UTC
2747
2803
  */
2748
- comment?: string | null;
2749
- };
2750
- /**
2751
- * BulkAssignRequest
2752
- * @description Request model for bulk assigning tickets
2753
- */
2754
- BulkAssignRequest: {
2804
+ timezone: string;
2755
2805
  /**
2756
- * Ticket Ids
2757
- * @description List of ticket IDs
2806
+ * Routing Rules
2807
+ * @description Routing rules for auto-assignment
2758
2808
  */
2759
- ticket_ids: number[];
2809
+ routing_rules?: {
2810
+ [key: string]: unknown;
2811
+ } | null;
2812
+ /** Sla First Response Minutes */
2813
+ sla_first_response_minutes?: number | null;
2814
+ /** Sla Resolution Minutes */
2815
+ sla_resolution_minutes?: number | null;
2760
2816
  /**
2761
- * Assigned To User Id
2762
- * @description User to assign to
2817
+ * Escalation Enabled
2818
+ * @default false
2763
2819
  */
2764
- assigned_to_user_id: number;
2820
+ escalation_enabled: boolean;
2821
+ /** Escalation After Minutes */
2822
+ escalation_after_minutes?: number | null;
2765
2823
  /**
2766
- * Assigned To Name
2767
- * @description User name
2824
+ * Escalation Team Id
2825
+ * @description Team ID to escalate to
2768
2826
  */
2769
- assigned_to_name: string;
2827
+ escalation_team_id?: string | null;
2770
2828
  /**
2771
- * Assigned Team Id
2772
- * @description Team ID (optional)
2829
+ * Is Default
2830
+ * @description Set as default team for unassigned tickets
2831
+ * @default false
2773
2832
  */
2774
- assigned_team_id?: number | null;
2833
+ is_default: boolean;
2834
+ /** Settings */
2835
+ settings?: {
2836
+ [key: string]: unknown;
2837
+ } | null;
2838
+ /** Custom Fields */
2839
+ custom_fields?: {
2840
+ [key: string]: unknown;
2841
+ } | null;
2775
2842
  };
2776
2843
  /**
2777
2844
  * ExportFormat
@@ -2780,478 +2847,621 @@ export interface components {
2780
2847
  */
2781
2848
  ExportFormat: "csv" | "excel" | "json" | "pdf";
2782
2849
  /**
2783
- * SearchCommentsRequest
2784
- * @description Request model for searching comments
2785
- * @example {
2786
- * "include_internal": false,
2787
- * "limit": 20,
2788
- * "page": 1,
2789
- * "query": "refund",
2790
- * "ticket_id": "tkt_xxx123"
2791
- * }
2850
+ * CreateTicketRequest
2851
+ * @description Request model for creating a new support ticket
2792
2852
  */
2793
- SearchCommentsRequest: {
2853
+ CreateTicketRequest: {
2794
2854
  /**
2795
- * Query
2796
- * @description Search query
2855
+ * Subject
2856
+ * @description Ticket subject/title
2797
2857
  */
2798
- query: string;
2858
+ subject: string;
2799
2859
  /**
2800
- * Ticket Id
2801
- * @description Filter by specific ticket ID
2860
+ * Description
2861
+ * @description Detailed description of the issue
2802
2862
  */
2803
- ticket_id?: string | null;
2863
+ description: string;
2804
2864
  /**
2805
- * Include Internal
2806
- * @description Include internal notes in search results
2807
- * @default false
2865
+ * Category
2866
+ * @description Ticket category (Bug, Feature Request, etc.)
2808
2867
  */
2809
- include_internal: boolean;
2868
+ category?: string | null;
2810
2869
  /**
2811
- * Page
2812
- * @description Page number
2813
- * @default 1
2870
+ * Priority
2871
+ * @description Priority: low, medium, high, urgent, critical
2872
+ * @default medium
2814
2873
  */
2815
- page: number;
2874
+ priority: string | null;
2816
2875
  /**
2817
- * Limit
2818
- * @description Results per page
2819
- * @default 20
2876
+ * Company Id
2877
+ * @description Company ID within organization
2820
2878
  */
2821
- limit: number;
2822
- };
2823
- /**
2824
- * GetSLAComplianceRequest
2825
- * @description Request model for SLA compliance report
2826
- * @example {
2827
- * "date_from": "2025-11-01",
2828
- * "date_to": "2025-12-01",
2829
- * "group_by": "agent"
2830
- * }
2831
- */
2832
- GetSLAComplianceRequest: {
2879
+ company_id?: number | null;
2833
2880
  /**
2834
- * Date From
2835
- * Format: date
2836
- * @description Start date (required)
2881
+ * Requester Name
2882
+ * @description Requester name (if not from auth)
2837
2883
  */
2838
- date_from: string;
2884
+ requester_name?: string | null;
2839
2885
  /**
2840
- * Date To
2841
- * Format: date
2842
- * @description End date (required)
2886
+ * Requester Email
2887
+ * @description Requester email (if not from auth)
2843
2888
  */
2844
- date_to: string;
2889
+ requester_email?: string | null;
2845
2890
  /**
2846
- * @description Grouping dimension
2847
- * @default daily
2891
+ * Requester Mobile
2892
+ * @description Requester phone number
2848
2893
  */
2849
- group_by: components["schemas"]["GroupByDimension"];
2850
- };
2851
- /**
2852
- * UpdateAgentTicketRequest
2853
- * @description Request model for updating a ticket (agent-facing)
2854
- */
2855
- UpdateAgentTicketRequest: {
2856
- /** Subject */
2857
- subject?: string | null;
2858
- /** Description */
2859
- description?: string | null;
2894
+ requester_mobile?: string | null;
2860
2895
  /**
2861
- * Priority
2862
- * @description low, medium, high, urgent, critical
2896
+ * Tags
2897
+ * @description Tags for categorization
2863
2898
  */
2864
- priority?: string | null;
2865
- /** Category */
2866
- category?: string | null;
2867
- /** Sub Category */
2868
- sub_category?: string | null;
2899
+ tags?: string[] | null;
2869
2900
  /**
2870
- * Status
2871
- * @description new, open, pending, waiting_for_customer, on_hold, resolved, closed
2901
+ * Custom Fields
2902
+ * @description Custom field values
2872
2903
  */
2873
- status?: string | null;
2874
- /** Tags */
2875
- tags?: string[] | null;
2876
- /** Custom Fields */
2877
2904
  custom_fields?: {
2878
2905
  [key: string]: unknown;
2879
2906
  } | null;
2880
2907
  };
2881
2908
  /**
2882
- * ReverseMergeRequest
2883
- * @description Request model for reversing a ticket merge
2909
+ * BulkCloseRequest
2910
+ * @description Request model for bulk closing tickets
2884
2911
  */
2885
- ReverseMergeRequest: {
2912
+ BulkCloseRequest: {
2886
2913
  /**
2887
- * Reversal Reason
2888
- * @description Reason for reversal
2914
+ * Ticket Ids
2915
+ * @description List of ticket IDs
2889
2916
  */
2890
- reversal_reason: string;
2891
- };
2892
- Extensions: {
2893
- /** @example GENERIC_ERROR */
2894
- message_code?: string;
2895
- /** @example [] */
2896
- invalid_params?: components["schemas"]["InvalidParam"][];
2897
- extra_data?: Record<string, never> | null;
2898
- /** @example Detailed debug information */
2899
- debug?: string | null;
2917
+ ticket_ids: number[];
2900
2918
  };
2901
2919
  /**
2902
- * ExecuteMacroRequest
2903
- * @description Request model for executing a macro
2904
- * @example {
2905
- * "ticket_data": {
2906
- * "category_id": 5,
2907
- * "id": 123,
2908
- * "priority_id": 2,
2909
- * "status": "open",
2910
- * "ticket_number": "TKT-12345"
2911
- * }
2912
- * }
2920
+ * AssignTicketRequest
2921
+ * @description Request model for assigning a ticket
2913
2922
  */
2914
- ExecuteMacroRequest: {
2923
+ AssignTicketRequest: {
2915
2924
  /**
2916
- * Ticket Data
2917
- * @description Ticket context data
2925
+ * Assigned To User Id
2926
+ * @description User ID to assign to
2918
2927
  */
2919
- ticket_data: {
2920
- [key: string]: unknown;
2921
- };
2928
+ assigned_to_user_id?: number | null;
2929
+ /**
2930
+ * Assigned Team Id
2931
+ * @description Team ID to assign to
2932
+ */
2933
+ assigned_team_id?: number | null;
2922
2934
  };
2923
2935
  /**
2924
- * MergeTicketsRequest
2925
- * @description Request model for merging tickets
2936
+ * BulkAssignRequest
2937
+ * @description Request model for bulk assigning tickets
2926
2938
  */
2927
- MergeTicketsRequest: {
2928
- /**
2929
- * Parent Ticket Id
2930
- * @description Parent ticket ID (kept active)
2931
- */
2932
- parent_ticket_id: number;
2933
- /**
2934
- * Child Ticket Id
2935
- * @description Child ticket ID (merged)
2936
- */
2937
- child_ticket_id: number;
2938
- /**
2939
- * Merge Reason
2940
- * @description Reason for merge
2941
- */
2942
- merge_reason: string;
2939
+ BulkAssignRequest: {
2943
2940
  /**
2944
- * Merge Type
2945
- * @description Merge type
2941
+ * Ticket Ids
2942
+ * @description List of ticket IDs
2946
2943
  */
2947
- merge_type: string;
2944
+ ticket_ids: number[];
2948
2945
  /**
2949
- * Copy Comments
2950
- * @description Copy comments to parent
2951
- * @default true
2946
+ * Assigned To User Id
2947
+ * @description User to assign to
2952
2948
  */
2953
- copy_comments: boolean;
2949
+ assigned_to_user_id: number;
2954
2950
  /**
2955
- * Copy Attachments
2956
- * @description Copy attachments to parent
2957
- * @default true
2951
+ * Assigned To Name
2952
+ * @description User name
2958
2953
  */
2959
- copy_attachments: boolean;
2954
+ assigned_to_name: string;
2960
2955
  /**
2961
- * Notify Customers
2962
- * @description Notify customers
2963
- * @default true
2956
+ * Assigned Team Id
2957
+ * @description Team ID (optional)
2964
2958
  */
2965
- notify_customers: boolean;
2959
+ assigned_team_id?: number | null;
2960
+ };
2961
+ InvalidParam: {
2962
+ /** @example items[0].quantity */
2963
+ field?: string;
2964
+ /** @example Input should be greater than or equal to 1 */
2965
+ error?: string;
2966
2966
  };
2967
2967
  /**
2968
- * UpdateSavedFilterRequest
2969
- * @description Request model for updating a saved filter
2968
+ * ApplyCannedResponseRequest
2969
+ * @description Request model for applying a canned response
2970
+ * @example {
2971
+ * "context": {
2972
+ * "agent": {
2973
+ * "email": "jane@example.com",
2974
+ * "name": "Jane Smith"
2975
+ * },
2976
+ * "ticket": {
2977
+ * "customer_name": "John Doe",
2978
+ * "ticket_number": "TKT-12345"
2979
+ * }
2980
+ * }
2981
+ * }
2970
2982
  */
2971
- UpdateSavedFilterRequest: {
2972
- /** Filter Name */
2973
- filter_name?: string | null;
2974
- /** Filter Slug */
2975
- filter_slug?: string | null;
2976
- /** Description */
2977
- description?: string | null;
2978
- /** Filter Config */
2979
- filter_config?: {
2983
+ ApplyCannedResponseRequest: {
2984
+ /**
2985
+ * Context
2986
+ * @description Context data for placeholder replacement (e.g., ticket data, agent data)
2987
+ */
2988
+ context: {
2980
2989
  [key: string]: unknown;
2981
- } | null;
2982
- /** Is Public */
2983
- is_public?: boolean | null;
2984
- /** Is Default */
2985
- is_default?: boolean | null;
2986
- /** Status */
2987
- status?: string | null;
2990
+ };
2988
2991
  };
2989
2992
  /**
2990
- * TemplateType
2991
- * @description Email template types
2992
- * @enum {string}
2993
+ * GenerateSurveyRequest
2994
+ * @description Request model for generating a satisfaction survey
2993
2995
  */
2994
- TemplateType: "ticket_created" | "ticket_updated" | "ticket_assigned" | "ticket_resolved" | "ticket_closed" | "comment_added" | "agent_assigned" | "sla_warning" | "customer_satisfaction";
2996
+ GenerateSurveyRequest: {
2997
+ /**
2998
+ * Survey Type
2999
+ * @description Survey type
3000
+ * @default post_resolution
3001
+ */
3002
+ survey_type: string;
3003
+ };
3004
+ ErrorResponse: {
3005
+ /** @example about:blank */
3006
+ type?: string;
3007
+ /** @example GENERIC_ERROR */
3008
+ code?: string;
3009
+ /** @example Client Error */
3010
+ title?: string;
3011
+ /** @example 400 */
3012
+ status?: number;
3013
+ /** @example An error occurred */
3014
+ detail?: string;
3015
+ /** @example /v1/cart/items */
3016
+ instance?: string;
3017
+ extensions?: components["schemas"]["Extensions"];
3018
+ };
2995
3019
  /**
2996
- * CreateHolidayRequest
2997
- * @description Request model for creating a holiday
3020
+ * CreateAutomationRuleRequest
3021
+ * @description Request model for creating a new automation rule
2998
3022
  * @example {
2999
- * "affects_sla": true,
3000
- * "holiday_date": "2025-12-25",
3001
- * "holiday_name": "Christmas Day",
3002
- * "is_full_day": true,
3003
- * "is_recurring": true
3023
+ * "actions": [
3024
+ * {
3025
+ * "action": "assign_to_team",
3026
+ * "team_id": 456
3027
+ * },
3028
+ * {
3029
+ * "action": "set_priority",
3030
+ * "priority_id": 2
3031
+ * }
3032
+ * ],
3033
+ * "applies_to_all_categories": false,
3034
+ * "applies_to_all_priorities": true,
3035
+ * "category_ids": [
3036
+ * 123
3037
+ * ],
3038
+ * "conditions": {
3039
+ * "all": [
3040
+ * {
3041
+ * "field": "category_id",
3042
+ * "operator": "equals",
3043
+ * "value": 123
3044
+ * }
3045
+ * ]
3046
+ * },
3047
+ * "description": "Automatically assign new tickets to the support team",
3048
+ * "execution_order": 1,
3049
+ * "is_active": true,
3050
+ * "rule_name": "Auto-assign New Tickets",
3051
+ * "rule_slug": "auto-assign-new",
3052
+ * "status": "active",
3053
+ * "stop_processing": false,
3054
+ * "trigger_event": "ticket_created"
3004
3055
  * }
3005
3056
  */
3006
- CreateHolidayRequest: {
3007
- /** Holiday Name */
3008
- holiday_name: string;
3057
+ CreateAutomationRuleRequest: {
3009
3058
  /**
3010
- * Holiday Date
3011
- * Format: date
3012
- * @description Holiday date
3059
+ * Rule Name
3060
+ * @description Rule name
3013
3061
  */
3014
- holiday_date: string;
3062
+ rule_name: string;
3015
3063
  /**
3016
- * Is Recurring
3017
- * @description Recurs annually
3018
- * @default false
3064
+ * Rule Slug
3065
+ * @description URL-friendly slug (lowercase, hyphens only)
3019
3066
  */
3020
- is_recurring: boolean;
3067
+ rule_slug: string;
3021
3068
  /**
3022
- * Affects Sla
3023
- * @description Whether this holiday affects SLA
3024
- * @default true
3069
+ * Description
3070
+ * @description Rule description
3025
3071
  */
3026
- affects_sla: boolean;
3072
+ description?: string | null;
3027
3073
  /**
3028
- * Is Full Day
3029
- * @description Full day or partial day holiday
3030
- * @default true
3074
+ * Trigger Event
3075
+ * @description Event that triggers the rule (ticket_created, status_changed, etc.)
3031
3076
  */
3032
- is_full_day: boolean;
3077
+ trigger_event: string;
3033
3078
  /**
3034
- * Start Time
3035
- * @description Start time for partial day
3079
+ * Execution Order
3080
+ * @description Order of execution (lower runs first)
3081
+ * @default 0
3036
3082
  */
3037
- start_time?: string | null;
3083
+ execution_order: number;
3038
3084
  /**
3039
- * End Time
3040
- * @description End time for partial day
3085
+ * Stop Processing
3086
+ * @description Stop processing other rules if this matches
3087
+ * @default false
3041
3088
  */
3042
- end_time?: string | null;
3043
- /** Notes */
3044
- notes?: string | null;
3045
- };
3046
- /**
3047
- * SearchTicketsRequest
3048
- * @description Request model for searching tickets
3049
- * @example {
3050
- * "filters": {
3051
- * "category_id": [
3052
- * 1,
3053
- * 2
3054
- * ],
3055
- * "created_from": "2025-01-01",
3056
- * "created_to": "2025-12-31",
3057
- * "is_overdue": true,
3058
- * "priority": [
3059
- * "high",
3060
- * "urgent"
3061
- * ],
3062
- * "status": [
3063
- * "open",
3064
- * "pending"
3065
- * ]
3066
- * },
3067
- * "limit": 20,
3068
- * "page": 1,
3069
- * "query": "payment issue",
3070
- * "sort_by": "created_at",
3071
- * "sort_order": "desc"
3072
- * }
3073
- */
3074
- SearchTicketsRequest: {
3089
+ stop_processing: boolean;
3075
3090
  /**
3076
- * Query
3077
- * @description Search query for full-text search
3091
+ * Conditions
3092
+ * @description Matching conditions (AND/OR logic)
3078
3093
  */
3079
- query?: string | null;
3094
+ conditions?: {
3095
+ [key: string]: unknown;
3096
+ } | null;
3080
3097
  /**
3081
- * Filters
3082
- * @description Advanced filters (status, priority, category, dates, etc.)
3098
+ * Actions
3099
+ * @description Actions to perform when conditions match
3083
3100
  */
3084
- filters?: {
3101
+ actions: {
3085
3102
  [key: string]: unknown;
3086
- } | null;
3103
+ }[];
3087
3104
  /**
3088
- * Sort By
3089
- * @description Sort field (created_at, updated_at, priority, status)
3090
- * @default created_at
3105
+ * Applies To All Categories
3106
+ * @description Apply to all categories
3107
+ * @default true
3091
3108
  */
3092
- sort_by: string;
3109
+ applies_to_all_categories: boolean;
3093
3110
  /**
3094
- * Sort Order
3095
- * @description Sort order (asc/desc)
3096
- * @default desc
3111
+ * Category Ids
3112
+ * @description Specific category IDs (if not all)
3097
3113
  */
3098
- sort_order: string;
3114
+ category_ids?: number[] | null;
3099
3115
  /**
3100
- * Page
3101
- * @description Page number
3102
- * @default 1
3116
+ * Applies To All Priorities
3117
+ * @description Apply to all priorities
3118
+ * @default true
3103
3119
  */
3104
- page: number;
3120
+ applies_to_all_priorities: boolean;
3105
3121
  /**
3106
- * Limit
3107
- * @description Results per page
3108
- * @default 20
3122
+ * Priority Ids
3123
+ * @description Specific priority IDs (if not all)
3109
3124
  */
3110
- limit: number;
3125
+ priority_ids?: number[] | null;
3126
+ /**
3127
+ * Is Active
3128
+ * @description Rule is active
3129
+ * @default true
3130
+ */
3131
+ is_active: boolean;
3132
+ /**
3133
+ * Status
3134
+ * @description Rule status (active, inactive, paused)
3135
+ * @default active
3136
+ */
3137
+ status: string;
3111
3138
  };
3112
3139
  /**
3113
- * CreateEmailTemplateRequest
3114
- * @description Request model for creating email template
3140
+ * UpdateCannedResponseRequest
3141
+ * @description Request model for updating a canned response
3142
+ */
3143
+ UpdateCannedResponseRequest: {
3144
+ /** Response Name */
3145
+ response_name?: string | null;
3146
+ /** Response Slug */
3147
+ response_slug?: string | null;
3148
+ /** Subject */
3149
+ subject?: string | null;
3150
+ /** Content */
3151
+ content?: string | null;
3152
+ /** Content Type */
3153
+ content_type?: string | null;
3154
+ /** Category */
3155
+ category?: string | null;
3156
+ /** Tags */
3157
+ tags?: string[] | null;
3158
+ /** Is Public */
3159
+ is_public?: boolean | null;
3160
+ /** Team Ids */
3161
+ team_ids?: number[] | null;
3162
+ /** User Ids */
3163
+ user_ids?: number[] | null;
3164
+ /** Shortcut */
3165
+ shortcut?: string | null;
3166
+ /** Status */
3167
+ status?: string | null;
3168
+ };
3169
+ /**
3170
+ * CreateMacroRequest
3171
+ * @description Request model for creating a new macro
3115
3172
  * @example {
3116
- * "available_variables": [
3117
- * "ticket_number",
3118
- * "ticket_subject",
3119
- * "customer_name"
3173
+ * "actions": [
3174
+ * {
3175
+ * "action": "set_status",
3176
+ * "value": "solved"
3177
+ * },
3178
+ * {
3179
+ * "action": "add_internal_note",
3180
+ * "note": "Ticket closed as solved"
3181
+ * }
3120
3182
  * ],
3121
- * "body_html": "<h1>Your ticket has been created</h1><p>Ticket: {{ticket_number}}</p>",
3122
- * "body_text": "Your ticket {{ticket_number}} has been created.",
3123
- * "is_default": true,
3124
- * "subject_template": "Ticket #{{ticket_number}} Created: {{ticket_subject}}",
3125
- * "template_name": "New Ticket Created",
3126
- * "template_slug": "ticket-created",
3127
- * "template_type": "ticket_created"
3183
+ * "button_color": "#4CAF50",
3184
+ * "description": "Mark ticket as solved and close it",
3185
+ * "display_order": 1,
3186
+ * "icon": "check-circle",
3187
+ * "include_response": false,
3188
+ * "is_public": true,
3189
+ * "macro_name": "Close as Solved",
3190
+ * "macro_slug": "close-solved",
3191
+ * "status": "active"
3128
3192
  * }
3129
3193
  */
3130
- CreateEmailTemplateRequest: {
3194
+ CreateMacroRequest: {
3131
3195
  /**
3132
- * Template Name
3133
- * @description Template name
3196
+ * Macro Name
3197
+ * @description Macro name
3134
3198
  */
3135
- template_name: string;
3199
+ macro_name: string;
3136
3200
  /**
3137
- * Template Slug
3138
- * @description Unique template slug
3201
+ * Macro Slug
3202
+ * @description URL-friendly slug
3139
3203
  */
3140
- template_slug: string;
3204
+ macro_slug: string;
3141
3205
  /**
3142
3206
  * Description
3143
- * @description Template description
3207
+ * @description Macro description
3144
3208
  */
3145
3209
  description?: string | null;
3146
- /** @description Template type */
3147
- template_type: components["schemas"]["TemplateType"];
3148
3210
  /**
3149
- * Subject Template
3150
- * @description Subject with {{variables}}
3211
+ * Actions
3212
+ * @description Actions to perform
3151
3213
  */
3152
- subject_template: string;
3214
+ actions: {
3215
+ [key: string]: unknown;
3216
+ }[];
3153
3217
  /**
3154
- * Body Html
3155
- * @description HTML body template
3218
+ * Include Response
3219
+ * @description Include a canned response
3220
+ * @default false
3156
3221
  */
3157
- body_html: string;
3222
+ include_response: boolean;
3158
3223
  /**
3159
- * Body Text
3160
- * @description Plain text body template
3224
+ * Canned Response Id
3225
+ * @description Canned response to include
3161
3226
  */
3162
- body_text?: string | null;
3227
+ canned_response_id?: number | null;
3163
3228
  /**
3164
- * Available Variables
3165
- * @description Available template variables
3229
+ * Is Public
3230
+ * @description Available to all agents
3231
+ * @default true
3166
3232
  */
3167
- available_variables?: string[] | null;
3233
+ is_public: boolean;
3168
3234
  /**
3169
- * From Email
3170
- * @description Override from email
3235
+ * Team Ids
3236
+ * @description Specific teams (if not public)
3171
3237
  */
3172
- from_email?: string | null;
3238
+ team_ids?: number[] | null;
3173
3239
  /**
3174
- * From Name
3175
- * @description Override from name
3240
+ * User Ids
3241
+ * @description Specific users (if not public)
3176
3242
  */
3177
- from_name?: string | null;
3243
+ user_ids?: number[] | null;
3178
3244
  /**
3179
- * Reply To
3180
- * @description Reply-to address
3245
+ * Display Order
3246
+ * @description Display order
3247
+ * @default 0
3181
3248
  */
3182
- reply_to?: string | null;
3249
+ display_order: number;
3183
3250
  /**
3184
- * Is Default
3185
- * @description Set as default template for type
3186
- * @default false
3251
+ * Button Color
3252
+ * @description Button color (hex)
3187
3253
  */
3188
- is_default: boolean;
3254
+ button_color?: string | null;
3189
3255
  /**
3190
- * Language
3191
- * @description Template language
3192
- * @default en-US
3256
+ * Icon
3257
+ * @description Icon identifier
3193
3258
  */
3194
- language: string;
3259
+ icon?: string | null;
3260
+ /**
3261
+ * Status
3262
+ * @description Macro status (active, inactive)
3263
+ * @default active
3264
+ */
3265
+ status: string;
3195
3266
  };
3196
3267
  /**
3197
- * CreateTicketRequest
3198
- * @description Request model for creating a new support ticket
3268
+ * CreateReportExportRequest
3269
+ * @description Request model for creating a report export
3270
+ * @example {
3271
+ * "export_format": "excel",
3272
+ * "report_name": "Monthly Ticket Report - November 2025",
3273
+ * "report_params": {
3274
+ * "date_from": "2025-11-01",
3275
+ * "date_to": "2025-11-30",
3276
+ * "include_breakdowns": true,
3277
+ * "period_type": "daily"
3278
+ * },
3279
+ * "report_type": "ticket_metrics"
3280
+ * }
3199
3281
  */
3200
- CreateTicketRequest: {
3282
+ CreateReportExportRequest: {
3283
+ /** @description Type of report to export */
3284
+ report_type: components["schemas"]["ReportType"];
3285
+ /**
3286
+ * Report Name
3287
+ * @description User-friendly report name
3288
+ */
3289
+ report_name: string;
3290
+ /**
3291
+ * Report Params
3292
+ * @description Report parameters (filters, date ranges, etc.)
3293
+ */
3294
+ report_params: {
3295
+ [key: string]: unknown;
3296
+ };
3297
+ /** @description Export file format */
3298
+ export_format: components["schemas"]["ExportFormat"];
3299
+ };
3300
+ /**
3301
+ * CreateCannedResponseRequest
3302
+ * @description Request model for creating a new canned response
3303
+ * @example {
3304
+ * "category": "greeting",
3305
+ * "content": "Hello {{ticket.customer_name}},\\n\\nThank you for contacting support. We received your request and will get back to you shortly.\\n\\nBest regards,\\n{{agent.name}}",
3306
+ * "content_type": "plain",
3307
+ * "is_public": true,
3308
+ * "response_name": "Greeting",
3309
+ * "response_slug": "greeting",
3310
+ * "shortcut": "/greeting",
3311
+ * "status": "active",
3312
+ * "subject": "Thank you for contacting us",
3313
+ * "tags": [
3314
+ * "initial",
3315
+ * "acknowledgment"
3316
+ * ]
3317
+ * }
3318
+ */
3319
+ CreateCannedResponseRequest: {
3320
+ /**
3321
+ * Response Name
3322
+ * @description Response name/title
3323
+ */
3324
+ response_name: string;
3325
+ /**
3326
+ * Response Slug
3327
+ * @description URL-friendly slug
3328
+ */
3329
+ response_slug: string;
3201
3330
  /**
3202
3331
  * Subject
3203
- * @description Ticket subject/title
3332
+ * @description Email subject (if applicable)
3204
3333
  */
3205
- subject: string;
3334
+ subject?: string | null;
3206
3335
  /**
3207
- * Description
3208
- * @description Detailed description of the issue
3336
+ * Content
3337
+ * @description Response content (supports placeholders like {{ticket.customer_name}})
3209
3338
  */
3210
- description: string;
3339
+ content: string;
3340
+ /**
3341
+ * Content Type
3342
+ * @description Content type (plain, html, markdown)
3343
+ * @default plain
3344
+ */
3345
+ content_type: string;
3211
3346
  /**
3212
3347
  * Category
3213
- * @description Ticket category (Bug, Feature Request, etc.)
3348
+ * @description Response category (greeting, closing, solution, etc.)
3214
3349
  */
3215
3350
  category?: string | null;
3216
3351
  /**
3217
- * Priority
3218
- * @description Priority: low, medium, high, urgent, critical
3219
- * @default medium
3352
+ * Tags
3353
+ * @description Tags for quick filtering
3220
3354
  */
3221
- priority: string | null;
3355
+ tags?: string[] | null;
3222
3356
  /**
3223
- * Company Id
3224
- * @description Company ID within organization
3357
+ * Is Public
3358
+ * @description Available to all agents
3359
+ * @default true
3225
3360
  */
3226
- company_id?: number | null;
3361
+ is_public: boolean;
3227
3362
  /**
3228
- * Requester Name
3229
- * @description Requester name (if not from auth)
3363
+ * Team Ids
3364
+ * @description Specific teams (if not public)
3230
3365
  */
3231
- requester_name?: string | null;
3366
+ team_ids?: number[] | null;
3232
3367
  /**
3233
- * Requester Email
3234
- * @description Requester email (if not from auth)
3368
+ * User Ids
3369
+ * @description Specific users (if not public)
3235
3370
  */
3236
- requester_email?: string | null;
3371
+ user_ids?: number[] | null;
3237
3372
  /**
3238
- * Requester Mobile
3239
- * @description Requester phone number
3373
+ * Shortcut
3374
+ * @description Keyboard shortcut (e.g., /greeting)
3240
3375
  */
3241
- requester_mobile?: string | null;
3376
+ shortcut?: string | null;
3242
3377
  /**
3243
- * Tags
3244
- * @description Tags for categorization
3378
+ * Status
3379
+ * @description Response status (active, inactive, archived)
3380
+ * @default active
3245
3381
  */
3246
- tags?: string[] | null;
3382
+ status: string;
3383
+ };
3384
+ /**
3385
+ * UpdateTeamRequest
3386
+ * @description Request model for updating a team
3387
+ */
3388
+ UpdateTeamRequest: {
3389
+ /** Team Name */
3390
+ team_name?: string | null;
3391
+ /** Description */
3392
+ description?: string | null;
3393
+ /** Team Type */
3394
+ team_type?: string | null;
3395
+ /** Team Lead User Id */
3396
+ team_lead_user_id?: number | null;
3397
+ /** Team Lead Name */
3398
+ team_lead_name?: string | null;
3399
+ /** Team Lead Email */
3400
+ team_lead_email?: string | null;
3401
+ /** Auto Assign Enabled */
3402
+ auto_assign_enabled?: boolean | null;
3403
+ /** Assignment Strategy */
3404
+ assignment_strategy?: string | null;
3405
+ /** Max Tickets Per Agent */
3406
+ max_tickets_per_agent?: number | null;
3407
+ /** Business Hours */
3408
+ business_hours?: {
3409
+ [key: string]: unknown;
3410
+ } | null;
3411
+ /** Timezone */
3412
+ timezone?: string | null;
3413
+ /** Routing Rules */
3414
+ routing_rules?: {
3415
+ [key: string]: unknown;
3416
+ } | null;
3417
+ /** Sla First Response Minutes */
3418
+ sla_first_response_minutes?: number | null;
3419
+ /** Sla Resolution Minutes */
3420
+ sla_resolution_minutes?: number | null;
3421
+ /** Escalation Enabled */
3422
+ escalation_enabled?: boolean | null;
3423
+ /** Escalation After Minutes */
3424
+ escalation_after_minutes?: number | null;
3425
+ /** Escalation Team Id */
3426
+ escalation_team_id?: string | null;
3427
+ /** Is Default */
3428
+ is_default?: boolean | null;
3247
3429
  /**
3248
- * Custom Fields
3249
- * @description Custom field values
3430
+ * Status
3431
+ * @description active, inactive, archived
3250
3432
  */
3433
+ status?: string | null;
3434
+ /** Settings */
3435
+ settings?: {
3436
+ [key: string]: unknown;
3437
+ } | null;
3438
+ /** Custom Fields */
3251
3439
  custom_fields?: {
3252
3440
  [key: string]: unknown;
3253
3441
  } | null;
3254
3442
  };
3443
+ /**
3444
+ * UpdateSavedFilterRequest
3445
+ * @description Request model for updating a saved filter
3446
+ */
3447
+ UpdateSavedFilterRequest: {
3448
+ /** Filter Name */
3449
+ filter_name?: string | null;
3450
+ /** Filter Slug */
3451
+ filter_slug?: string | null;
3452
+ /** Description */
3453
+ description?: string | null;
3454
+ /** Filter Config */
3455
+ filter_config?: {
3456
+ [key: string]: unknown;
3457
+ } | null;
3458
+ /** Is Public */
3459
+ is_public?: boolean | null;
3460
+ /** Is Default */
3461
+ is_default?: boolean | null;
3462
+ /** Status */
3463
+ status?: string | null;
3464
+ };
3255
3465
  /**
3256
3466
  * GetDashboardMetricsRequest
3257
3467
  * @description Request model for getting dashboard metrics
@@ -3279,788 +3489,740 @@ export interface components {
3279
3489
  date_to?: string | null;
3280
3490
  };
3281
3491
  /**
3282
- * CreateTagRequest
3283
- * @description Request model for creating a new support tag
3284
- * @example {
3285
- * "color": "#FF5733",
3286
- * "description": "Technical bug or issue",
3287
- * "tag_name": "Bug",
3288
- * "tag_slug": "bug"
3289
- * }
3290
- */
3291
- app__models__support__category_models__CreateTagRequest: {
3292
- /**
3293
- * Tag Name
3294
- * @description Tag name
3295
- */
3296
- tag_name: string;
3297
- /**
3298
- * Tag Slug
3299
- * @description URL-friendly slug (lowercase, hyphens only)
3300
- */
3301
- tag_slug: string;
3302
- /**
3303
- * Description
3304
- * @description Tag description
3305
- */
3306
- description?: string | null;
3307
- /**
3308
- * Color
3309
- * @description Color hex code (e.g., '#FF5733')
3310
- */
3311
- color?: string | null;
3312
- };
3313
- /**
3314
- * BulkCloseRequest
3315
- * @description Request model for bulk closing tickets
3316
- */
3317
- BulkCloseRequest: {
3318
- /**
3319
- * Ticket Ids
3320
- * @description List of ticket IDs
3321
- */
3322
- ticket_ids: number[];
3323
- };
3324
- /**
3325
- * UpdateCategoryRequest
3326
- * @description Request model for updating a support category
3492
+ * GetAgentPerformanceRequest
3493
+ * @description Request model for getting agent performance metrics
3327
3494
  * @example {
3328
- * "category_name": "Billing & Payment Issues",
3329
- * "description": "Updated description for billing category",
3330
- * "is_public": true,
3331
- * "sla_first_response_minutes": 30,
3332
- * "status": "active"
3495
+ * "agent_id": 123,
3496
+ * "date_from": "2025-11-01",
3497
+ * "date_to": "2025-12-01",
3498
+ * "limit": 50,
3499
+ * "page": 1,
3500
+ * "period_type": "daily"
3333
3501
  * }
3334
3502
  */
3335
- app__models__support__category_models__UpdateCategoryRequest: {
3336
- /**
3337
- * Category Name
3338
- * @description Category name
3339
- */
3340
- category_name?: string | null;
3341
- /**
3342
- * Description
3343
- * @description Category description
3344
- */
3345
- description?: string | null;
3346
- /**
3347
- * Category Slug
3348
- * @description URL-friendly slug
3349
- */
3350
- category_slug?: string | null;
3351
- /**
3352
- * Parent Category Id
3353
- * @description Parent category ID
3354
- */
3355
- parent_category_id?: number | null;
3356
- /**
3357
- * Default Team Id
3358
- * @description Default team ID for auto-routing
3359
- */
3360
- default_team_id?: number | null;
3361
- /**
3362
- * Default Priority
3363
- * @description Default priority slug
3364
- */
3365
- default_priority?: string | null;
3366
- /**
3367
- * Sla First Response Minutes
3368
- * @description SLA for first response in minutes
3369
- */
3370
- sla_first_response_minutes?: number | null;
3503
+ GetAgentPerformanceRequest: {
3371
3504
  /**
3372
- * Sla Resolution Minutes
3373
- * @description SLA for resolution in minutes
3505
+ * Agent Id
3506
+ * @description Specific agent ID
3374
3507
  */
3375
- sla_resolution_minutes?: number | null;
3508
+ agent_id?: number | null;
3376
3509
  /**
3377
- * Is Public
3378
- * @description Whether category is visible to customers
3510
+ * Team Id
3511
+ * @description Filter by team ID
3379
3512
  */
3380
- is_public?: boolean | null;
3513
+ team_id?: number | null;
3381
3514
  /**
3382
- * Display Order
3383
- * @description Display order for sorting
3515
+ * @description Period type: daily, weekly, monthly
3516
+ * @default daily
3384
3517
  */
3385
- display_order?: number | null;
3518
+ period_type: components["schemas"]["PeriodType"];
3386
3519
  /**
3387
- * Icon
3388
- * @description Icon identifier
3520
+ * Date From
3521
+ * @description Start date
3389
3522
  */
3390
- icon?: string | null;
3523
+ date_from?: string | null;
3391
3524
  /**
3392
- * Color
3393
- * @description Color hex code
3525
+ * Date To
3526
+ * @description End date
3394
3527
  */
3395
- color?: string | null;
3528
+ date_to?: string | null;
3396
3529
  /**
3397
- * Status
3398
- * @description Category status: active, inactive, archived
3530
+ * Page
3531
+ * @description Page number
3532
+ * @default 1
3399
3533
  */
3400
- status?: string | null;
3534
+ page: number;
3401
3535
  /**
3402
- * Settings
3403
- * @description Additional JSON settings
3536
+ * Limit
3537
+ * @description Items per page
3538
+ * @default 50
3404
3539
  */
3405
- settings?: {
3406
- [key: string]: unknown;
3407
- } | null;
3540
+ limit: number;
3408
3541
  };
3409
3542
  /**
3410
- * SubmitRatingRequest
3411
- * @description Request model for submitting a satisfaction rating
3543
+ * TemplateStatus
3544
+ * @description Template status values
3545
+ * @enum {string}
3412
3546
  */
3413
- SubmitRatingRequest: {
3414
- /**
3415
- * Survey Token
3416
- * @description Survey token
3417
- */
3418
- survey_token: string;
3419
- /**
3420
- * Rating
3421
- * @description Rating (1-5 stars)
3422
- */
3423
- rating: number;
3424
- /**
3425
- * Feedback Text
3426
- * @description Optional feedback text
3427
- */
3428
- feedback_text?: string | null;
3429
- /**
3430
- * Feedback Category
3431
- * @description Feedback category
3432
- */
3433
- feedback_category?: string | null;
3434
- };
3547
+ TemplateStatus: "active" | "draft" | "archived";
3435
3548
  /**
3436
- * CreateSLAPolicyRequest
3437
- * @description Request model for creating a new SLA policy
3438
3549
  * @example {
3439
- * "description": "Standard SLA for all tickets",
3440
- * "escalation_enabled": true,
3441
- * "escalation_threshold_percent": 80,
3442
- * "first_response_target_minutes": 60,
3443
- * "is_default": true,
3444
- * "policy_name": "Standard Support",
3445
- * "policy_slug": "standard-support",
3446
- * "priority_order": 0,
3447
- * "resolution_target_minutes": 480
3550
+ * "status": "success",
3551
+ * "message": "Operation successful",
3552
+ * "message_code": "api_suc_20001",
3553
+ * "data": {},
3554
+ * "metadata": {
3555
+ * "timestamp": "2026-03-26T10:00:00.000Z",
3556
+ * "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
3557
+ * "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
3558
+ * "version": "v1",
3559
+ * "executionTime": 42,
3560
+ * "language": "en-US"
3561
+ * }
3448
3562
  * }
3449
3563
  */
3450
- CreateSLAPolicyRequest: {
3451
- /**
3452
- * Policy Name
3453
- * @description Policy name
3454
- */
3455
- policy_name: string;
3564
+ StandardResponse: {
3565
+ /** @example success */
3566
+ status?: string;
3567
+ data?: Record<string, never> | null;
3568
+ /** @example Operation successful */
3569
+ message?: string | null;
3570
+ /** @example api_suc_20001 */
3571
+ message_code?: string | null;
3572
+ metadata?: Record<string, never> | null;
3573
+ error?: components["schemas"]["ErrorResponse"];
3574
+ };
3575
+ /**
3576
+ * PeriodType
3577
+ * @description Period type for metrics snapshots
3578
+ * @enum {string}
3579
+ */
3580
+ PeriodType: "daily" | "weekly" | "monthly";
3581
+ /**
3582
+ * UpdateTicketRequest
3583
+ * @description Request model for updating a ticket (customer-facing)
3584
+ */
3585
+ UpdateTicketRequest: {
3456
3586
  /**
3457
- * Policy Slug
3458
- * @description URL-friendly slug (lowercase, hyphens only)
3587
+ * Subject
3588
+ * @description Ticket subject
3459
3589
  */
3460
- policy_slug: string;
3590
+ subject?: string | null;
3461
3591
  /**
3462
3592
  * Description
3463
- * @description Policy description
3593
+ * @description Ticket description
3464
3594
  */
3465
3595
  description?: string | null;
3466
3596
  /**
3467
- * First Response Target Minutes
3468
- * @description Target for first response in minutes
3597
+ * Priority
3598
+ * @description Priority level
3469
3599
  */
3470
- first_response_target_minutes: number;
3600
+ priority?: string | null;
3471
3601
  /**
3472
- * Resolution Target Minutes
3473
- * @description Target for resolution in minutes
3602
+ * Category
3603
+ * @description Ticket category
3474
3604
  */
3475
- resolution_target_minutes: number;
3605
+ category?: string | null;
3476
3606
  /**
3477
- * Operational Hours Id
3478
- * @description Business hours schedule ID (NULL = 24/7)
3607
+ * Tags
3608
+ * @description Tags
3479
3609
  */
3480
- operational_hours_id?: number | null;
3610
+ tags?: string[] | null;
3611
+ };
3612
+ /**
3613
+ * CreatePriorityRequest
3614
+ * @description Request model for creating a new priority level
3615
+ * @example {
3616
+ * "color": "#FF0000",
3617
+ * "is_default": false,
3618
+ * "priority_level": 1,
3619
+ * "priority_name": "Urgent",
3620
+ * "priority_slug": "urgent",
3621
+ * "sla_first_response_minutes": 15,
3622
+ * "sla_resolution_minutes": 120
3623
+ * }
3624
+ */
3625
+ CreatePriorityRequest: {
3481
3626
  /**
3482
- * Escalation Enabled
3483
- * @description Enable auto-escalation on breach
3484
- * @default true
3627
+ * Priority Name
3628
+ * @description Priority name (e.g., 'Urgent', 'High', 'Medium', 'Low')
3485
3629
  */
3486
- escalation_enabled: boolean;
3630
+ priority_name: string;
3487
3631
  /**
3488
- * Escalation Threshold Percent
3489
- * @description Escalate at X% of SLA time
3490
- * @default 80
3632
+ * Priority Slug
3633
+ * @description URL-friendly slug (lowercase, hyphens only)
3491
3634
  */
3492
- escalation_threshold_percent: number;
3635
+ priority_slug: string;
3493
3636
  /**
3494
- * Is Default
3495
- * @description Whether this is the default SLA policy
3496
- * @default false
3637
+ * Priority Level
3638
+ * @description Priority level (1=highest, 100=lowest)
3497
3639
  */
3498
- is_default: boolean;
3640
+ priority_level: number;
3499
3641
  /**
3500
- * Priority Order
3501
- * @description Priority order (lower = higher priority)
3502
- * @default 0
3642
+ * Sla First Response Minutes
3643
+ * @description SLA for first response in minutes
3503
3644
  */
3504
- priority_order: number;
3645
+ sla_first_response_minutes?: number | null;
3505
3646
  /**
3506
- * Settings
3507
- * @description Additional JSON settings
3647
+ * Sla Resolution Minutes
3648
+ * @description SLA for resolution in minutes
3508
3649
  */
3509
- settings?: {
3510
- [key: string]: unknown;
3511
- } | null;
3512
- };
3513
- /**
3514
- * RemoveTeamMemberRequest
3515
- * @description Request model for removing a team member
3516
- */
3517
- RemoveTeamMemberRequest: {
3650
+ sla_resolution_minutes?: number | null;
3518
3651
  /**
3519
- * Removal Reason
3520
- * @description Reason for removal
3652
+ * Is Default
3653
+ * @description Whether this is the default priority level
3654
+ * @default false
3521
3655
  */
3522
- removal_reason?: string | null;
3523
- };
3524
- /**
3525
- * UpdateAutomationRuleRequest
3526
- * @description Request model for updating an automation rule
3527
- */
3528
- UpdateAutomationRuleRequest: {
3529
- /** Rule Name */
3530
- rule_name?: string | null;
3531
- /** Rule Slug */
3532
- rule_slug?: string | null;
3533
- /** Description */
3534
- description?: string | null;
3535
- /** Trigger Event */
3536
- trigger_event?: string | null;
3537
- /** Execution Order */
3538
- execution_order?: number | null;
3539
- /** Stop Processing */
3540
- stop_processing?: boolean | null;
3541
- /** Conditions */
3542
- conditions?: {
3543
- [key: string]: unknown;
3544
- } | null;
3545
- /** Actions */
3546
- actions?: {
3547
- [key: string]: unknown;
3548
- }[] | null;
3549
- /** Applies To All Categories */
3550
- applies_to_all_categories?: boolean | null;
3551
- /** Category Ids */
3552
- category_ids?: number[] | null;
3553
- /** Applies To All Priorities */
3554
- applies_to_all_priorities?: boolean | null;
3555
- /** Priority Ids */
3556
- priority_ids?: number[] | null;
3557
- /** Is Active */
3558
- is_active?: boolean | null;
3559
- /** Status */
3560
- status?: string | null;
3656
+ is_default: boolean;
3657
+ /**
3658
+ * Color
3659
+ * @description Color hex code (e.g., '#FF5733')
3660
+ */
3661
+ color?: string | null;
3561
3662
  };
3562
3663
  /**
3563
- * CreateCannedResponseRequest
3564
- * @description Request model for creating a new canned response
3664
+ * CreateHolidayRequest
3665
+ * @description Request model for creating a holiday
3565
3666
  * @example {
3566
- * "category": "greeting",
3567
- * "content": "Hello {{ticket.customer_name}},\\n\\nThank you for contacting support. We received your request and will get back to you shortly.\\n\\nBest regards,\\n{{agent.name}}",
3568
- * "content_type": "plain",
3569
- * "is_public": true,
3570
- * "response_name": "Greeting",
3571
- * "response_slug": "greeting",
3572
- * "shortcut": "/greeting",
3573
- * "status": "active",
3574
- * "subject": "Thank you for contacting us",
3575
- * "tags": [
3576
- * "initial",
3577
- * "acknowledgment"
3578
- * ]
3667
+ * "affects_sla": true,
3668
+ * "holiday_date": "2025-12-25",
3669
+ * "holiday_name": "Christmas Day",
3670
+ * "is_full_day": true,
3671
+ * "is_recurring": true
3579
3672
  * }
3580
3673
  */
3581
- CreateCannedResponseRequest: {
3582
- /**
3583
- * Response Name
3584
- * @description Response name/title
3585
- */
3586
- response_name: string;
3587
- /**
3588
- * Response Slug
3589
- * @description URL-friendly slug
3590
- */
3591
- response_slug: string;
3592
- /**
3593
- * Subject
3594
- * @description Email subject (if applicable)
3595
- */
3596
- subject?: string | null;
3597
- /**
3598
- * Content
3599
- * @description Response content (supports placeholders like {{ticket.customer_name}})
3600
- */
3601
- content: string;
3674
+ CreateHolidayRequest: {
3675
+ /** Holiday Name */
3676
+ holiday_name: string;
3602
3677
  /**
3603
- * Content Type
3604
- * @description Content type (plain, html, markdown)
3605
- * @default plain
3678
+ * Holiday Date
3679
+ * Format: date
3680
+ * @description Holiday date
3606
3681
  */
3607
- content_type: string;
3682
+ holiday_date: string;
3608
3683
  /**
3609
- * Category
3610
- * @description Response category (greeting, closing, solution, etc.)
3684
+ * Is Recurring
3685
+ * @description Recurs annually
3686
+ * @default false
3611
3687
  */
3612
- category?: string | null;
3688
+ is_recurring: boolean;
3613
3689
  /**
3614
- * Tags
3615
- * @description Tags for quick filtering
3690
+ * Affects Sla
3691
+ * @description Whether this holiday affects SLA
3692
+ * @default true
3616
3693
  */
3617
- tags?: string[] | null;
3694
+ affects_sla: boolean;
3618
3695
  /**
3619
- * Is Public
3620
- * @description Available to all agents
3696
+ * Is Full Day
3697
+ * @description Full day or partial day holiday
3621
3698
  * @default true
3622
3699
  */
3623
- is_public: boolean;
3700
+ is_full_day: boolean;
3624
3701
  /**
3625
- * Team Ids
3626
- * @description Specific teams (if not public)
3702
+ * Start Time
3703
+ * @description Start time for partial day
3627
3704
  */
3628
- team_ids?: number[] | null;
3705
+ start_time?: string | null;
3629
3706
  /**
3630
- * User Ids
3631
- * @description Specific users (if not public)
3707
+ * End Time
3708
+ * @description End time for partial day
3632
3709
  */
3633
- user_ids?: number[] | null;
3710
+ end_time?: string | null;
3711
+ /** Notes */
3712
+ notes?: string | null;
3713
+ };
3714
+ /**
3715
+ * GroupByDimension
3716
+ * @description Grouping dimensions for SLA compliance
3717
+ * @enum {string}
3718
+ */
3719
+ GroupByDimension: "daily" | "weekly" | "monthly" | "team" | "agent";
3720
+ /**
3721
+ * AddWatcherRequest
3722
+ * @description Request model for adding a watcher to a ticket
3723
+ */
3724
+ AddWatcherRequest: {
3634
3725
  /**
3635
- * Shortcut
3636
- * @description Keyboard shortcut (e.g., /greeting)
3726
+ * User Id
3727
+ * @description User ID to add as watcher
3637
3728
  */
3638
- shortcut?: string | null;
3729
+ user_id: number;
3639
3730
  /**
3640
- * Status
3641
- * @description Response status (active, inactive, archived)
3642
- * @default active
3731
+ * User Name
3732
+ * @description User name
3643
3733
  */
3644
- status: string;
3645
- };
3646
- /**
3647
- * UpdateTicketRequest
3648
- * @description Request model for updating a ticket (customer-facing)
3649
- */
3650
- UpdateTicketRequest: {
3734
+ user_name: string;
3651
3735
  /**
3652
- * Subject
3653
- * @description Ticket subject
3736
+ * User Email
3737
+ * @description User email
3738
+ */
3739
+ user_email: string;
3740
+ /**
3741
+ * Watch Type
3742
+ * @description Watch type
3743
+ * @default manual
3654
3744
  */
3655
- subject?: string | null;
3745
+ watch_type: string;
3656
3746
  /**
3657
- * Description
3658
- * @description Ticket description
3747
+ * Notify On Comment
3748
+ * @description Notify on comments
3749
+ * @default true
3659
3750
  */
3660
- description?: string | null;
3751
+ notify_on_comment: boolean;
3661
3752
  /**
3662
- * Priority
3663
- * @description Priority level
3753
+ * Notify On Status Change
3754
+ * @description Notify on status change
3755
+ * @default true
3664
3756
  */
3665
- priority?: string | null;
3757
+ notify_on_status_change: boolean;
3666
3758
  /**
3667
- * Category
3668
- * @description Ticket category
3759
+ * Notify On Assignment
3760
+ * @description Notify on assignment
3761
+ * @default true
3669
3762
  */
3670
- category?: string | null;
3763
+ notify_on_assignment: boolean;
3671
3764
  /**
3672
- * Tags
3673
- * @description Tags
3765
+ * Notify On Resolution
3766
+ * @description Notify on resolution
3767
+ * @default true
3674
3768
  */
3675
- tags?: string[] | null;
3769
+ notify_on_resolution: boolean;
3676
3770
  };
3677
3771
  /**
3678
- * CreateSavedFilterRequest
3679
- * @description Request model for creating a saved filter
3680
- * @example {
3681
- * "description": "All high priority tickets assigned to me",
3682
- * "filter_config": {
3683
- * "priority": [
3684
- * "high",
3685
- * "urgent"
3686
- * ],
3687
- * "status": [
3688
- * "open",
3689
- * "pending"
3690
- * ]
3691
- * },
3692
- * "filter_name": "My High Priority Tickets",
3693
- * "filter_slug": "my-high-priority",
3694
- * "is_default": true,
3695
- * "is_public": false
3696
- * }
3772
+ * UpdateAutomationRuleRequest
3773
+ * @description Request model for updating an automation rule
3697
3774
  */
3698
- CreateSavedFilterRequest: {
3775
+ UpdateAutomationRuleRequest: {
3776
+ /** Rule Name */
3777
+ rule_name?: string | null;
3778
+ /** Rule Slug */
3779
+ rule_slug?: string | null;
3780
+ /** Description */
3781
+ description?: string | null;
3782
+ /** Trigger Event */
3783
+ trigger_event?: string | null;
3784
+ /** Execution Order */
3785
+ execution_order?: number | null;
3786
+ /** Stop Processing */
3787
+ stop_processing?: boolean | null;
3788
+ /** Conditions */
3789
+ conditions?: {
3790
+ [key: string]: unknown;
3791
+ } | null;
3792
+ /** Actions */
3793
+ actions?: {
3794
+ [key: string]: unknown;
3795
+ }[] | null;
3796
+ /** Applies To All Categories */
3797
+ applies_to_all_categories?: boolean | null;
3798
+ /** Category Ids */
3799
+ category_ids?: number[] | null;
3800
+ /** Applies To All Priorities */
3801
+ applies_to_all_priorities?: boolean | null;
3802
+ /** Priority Ids */
3803
+ priority_ids?: number[] | null;
3804
+ /** Is Active */
3805
+ is_active?: boolean | null;
3806
+ /** Status */
3807
+ status?: string | null;
3808
+ };
3809
+ /**
3810
+ * SubmitRatingRequest
3811
+ * @description Request model for submitting a satisfaction rating
3812
+ */
3813
+ SubmitRatingRequest: {
3699
3814
  /**
3700
- * Filter Name
3701
- * @description Filter name
3815
+ * Survey Token
3816
+ * @description Survey token
3702
3817
  */
3703
- filter_name: string;
3818
+ survey_token: string;
3704
3819
  /**
3705
- * Filter Slug
3706
- * @description URL-friendly slug
3820
+ * Rating
3821
+ * @description Rating (1-5 stars)
3707
3822
  */
3708
- filter_slug: string;
3823
+ rating: number;
3709
3824
  /**
3710
- * Description
3711
- * @description Filter description
3825
+ * Feedback Text
3826
+ * @description Optional feedback text
3712
3827
  */
3713
- description?: string | null;
3828
+ feedback_text?: string | null;
3714
3829
  /**
3715
- * Filter Config
3716
- * @description Filter configuration (query, filters, sort)
3830
+ * Feedback Category
3831
+ * @description Feedback category
3717
3832
  */
3718
- filter_config: {
3719
- [key: string]: unknown;
3720
- };
3833
+ feedback_category?: string | null;
3834
+ };
3835
+ /**
3836
+ * RateSatisfactionRequest
3837
+ * @description Request model for customer satisfaction rating
3838
+ */
3839
+ RateSatisfactionRequest: {
3721
3840
  /**
3722
- * Is Public
3723
- * @description Make filter available to all users in organization
3724
- * @default false
3841
+ * Rating
3842
+ * @description Satisfaction rating 1-5
3725
3843
  */
3726
- is_public: boolean;
3844
+ rating: number;
3727
3845
  /**
3728
- * Is Default
3729
- * @description Set as default filter for user
3730
- * @default false
3846
+ * Comment
3847
+ * @description Additional feedback
3731
3848
  */
3732
- is_default: boolean;
3849
+ comment?: string | null;
3733
3850
  };
3734
3851
  /**
3735
- * PeriodType
3736
- * @description Period type for metrics snapshots
3737
- * @enum {string}
3738
- */
3739
- PeriodType: "daily" | "weekly" | "monthly";
3740
- /**
3741
- * UpdateEmailConfigRequest
3742
- * @description Request model for updating email configuration
3743
- * @example {
3744
- * "from_email": "noreply@company.com",
3745
- * "from_name": "Company Support",
3746
- * "inbound_email": "support@company.com",
3747
- * "inbound_enabled": true,
3748
- * "smtp_enabled": true,
3749
- * "smtp_host": "smtp.gmail.com",
3750
- * "smtp_port": 587,
3751
- * "smtp_use_tls": true
3752
- * }
3852
+ * AddTeamMemberRequest
3853
+ * @description Request model for adding a team member
3753
3854
  */
3754
- UpdateEmailConfigRequest: {
3755
- /**
3756
- * Inbound Enabled
3757
- * @description Enable email-to-ticket
3758
- */
3759
- inbound_enabled?: boolean | null;
3855
+ AddTeamMemberRequest: {
3760
3856
  /**
3761
- * Inbound Email
3762
- * @description Support email address
3857
+ * User Id
3858
+ * @description User ID to add to team
3763
3859
  */
3764
- inbound_email?: string | null;
3860
+ user_id: number;
3861
+ /** User Name */
3862
+ user_name: string;
3863
+ /** User Email */
3864
+ user_email: string;
3765
3865
  /**
3766
- * Auto Create Tickets
3767
- * @description Auto-create tickets from unknown senders
3866
+ * Role
3867
+ * @description agent, senior_agent, team_lead, trainee
3868
+ * @default agent
3768
3869
  */
3769
- auto_create_tickets?: boolean | null;
3870
+ role: string;
3770
3871
  /**
3771
- * Require Verified Emails
3772
- * @description Require email verification
3872
+ * Is Team Lead
3873
+ * @default false
3773
3874
  */
3774
- require_verified_emails?: boolean | null;
3875
+ is_team_lead: boolean;
3876
+ /** Max Concurrent Tickets */
3877
+ max_concurrent_tickets?: number | null;
3775
3878
  /**
3776
- * Strip Signatures
3777
- * @description Remove signatures from body
3879
+ * Skills
3880
+ * @description Agent skills and expertise
3778
3881
  */
3779
- strip_signatures?: boolean | null;
3882
+ skills?: string[] | null;
3780
3883
  /**
3781
- * Strip Quotes
3782
- * @description Remove quoted text from replies
3884
+ * Skill Level
3885
+ * @description beginner, intermediate, expert, master
3886
+ * @default intermediate
3783
3887
  */
3784
- strip_quotes?: boolean | null;
3888
+ skill_level: string;
3785
3889
  /**
3786
- * Outbound Enabled
3787
- * @description Enable email notifications
3890
+ * Categories
3891
+ * @description Categories agent handles
3788
3892
  */
3789
- outbound_enabled?: boolean | null;
3893
+ categories?: string[] | null;
3790
3894
  /**
3791
- * From Email
3792
- * @description Default from email
3895
+ * Priority Levels
3896
+ * @description Priority levels: low, medium, high, critical
3793
3897
  */
3794
- from_email?: string | null;
3898
+ priority_levels?: string[] | null;
3795
3899
  /**
3796
- * From Name
3797
- * @description Default from name
3900
+ * Auto Assign Enabled
3901
+ * @default true
3798
3902
  */
3799
- from_name?: string | null;
3903
+ auto_assign_enabled: boolean;
3800
3904
  /**
3801
- * Reply To
3802
- * @description Default reply-to email
3905
+ * Assignment Weight
3906
+ * @description Weight for load balancing (100 = normal)
3907
+ * @default 100
3803
3908
  */
3804
- reply_to?: string | null;
3909
+ assignment_weight: number;
3910
+ /** Working Hours */
3911
+ working_hours?: {
3912
+ [key: string]: unknown;
3913
+ } | null;
3805
3914
  /**
3806
- * Smtp Enabled
3807
- * @description Use SMTP provider
3915
+ * Timezone
3916
+ * @default UTC
3808
3917
  */
3809
- smtp_enabled?: boolean | null;
3918
+ timezone: string;
3919
+ };
3920
+ /**
3921
+ * CreateSLAPolicyRequest
3922
+ * @description Request model for creating a new SLA policy
3923
+ * @example {
3924
+ * "description": "Standard SLA for all tickets",
3925
+ * "escalation_enabled": true,
3926
+ * "escalation_threshold_percent": 80,
3927
+ * "first_response_target_minutes": 60,
3928
+ * "is_default": true,
3929
+ * "policy_name": "Standard Support",
3930
+ * "policy_slug": "standard-support",
3931
+ * "priority_order": 0,
3932
+ * "resolution_target_minutes": 480
3933
+ * }
3934
+ */
3935
+ CreateSLAPolicyRequest: {
3810
3936
  /**
3811
- * Smtp Host
3812
- * @description SMTP host
3937
+ * Policy Name
3938
+ * @description Policy name
3813
3939
  */
3814
- smtp_host?: string | null;
3940
+ policy_name: string;
3815
3941
  /**
3816
- * Smtp Port
3817
- * @description SMTP port
3942
+ * Policy Slug
3943
+ * @description URL-friendly slug (lowercase, hyphens only)
3818
3944
  */
3819
- smtp_port?: number | null;
3945
+ policy_slug: string;
3820
3946
  /**
3821
- * Smtp Username
3822
- * @description SMTP username
3947
+ * Description
3948
+ * @description Policy description
3823
3949
  */
3824
- smtp_username?: string | null;
3950
+ description?: string | null;
3825
3951
  /**
3826
- * Smtp Password
3827
- * @description SMTP password (will be encrypted)
3952
+ * First Response Target Minutes
3953
+ * @description Target for first response in minutes
3828
3954
  */
3829
- smtp_password?: string | null;
3955
+ first_response_target_minutes: number;
3830
3956
  /**
3831
- * Smtp Use Tls
3832
- * @description Use TLS/SSL
3957
+ * Resolution Target Minutes
3958
+ * @description Target for resolution in minutes
3833
3959
  */
3834
- smtp_use_tls?: boolean | null;
3960
+ resolution_target_minutes: number;
3835
3961
  /**
3836
- * Ses Enabled
3837
- * @description Use AWS SES
3962
+ * Operational Hours Id
3963
+ * @description Business hours schedule ID (NULL = 24/7)
3838
3964
  */
3839
- ses_enabled?: boolean | null;
3965
+ operational_hours_id?: number | null;
3840
3966
  /**
3841
- * Ses Region
3842
- * @description AWS region
3967
+ * Escalation Enabled
3968
+ * @description Enable auto-escalation on breach
3969
+ * @default true
3843
3970
  */
3844
- ses_region?: string | null;
3971
+ escalation_enabled: boolean;
3845
3972
  /**
3846
- * Ses Access Key
3847
- * @description AWS access key (will be encrypted)
3973
+ * Escalation Threshold Percent
3974
+ * @description Escalate at X% of SLA time
3975
+ * @default 80
3848
3976
  */
3849
- ses_access_key?: string | null;
3977
+ escalation_threshold_percent: number;
3850
3978
  /**
3851
- * Ses Secret Key
3852
- * @description AWS secret key (will be encrypted)
3979
+ * Is Default
3980
+ * @description Whether this is the default SLA policy
3981
+ * @default false
3853
3982
  */
3854
- ses_secret_key?: string | null;
3983
+ is_default: boolean;
3855
3984
  /**
3856
- * Enable Threading
3857
- * @description Enable email threading
3985
+ * Priority Order
3986
+ * @description Priority order (lower = higher priority)
3987
+ * @default 0
3858
3988
  */
3859
- enable_threading?: boolean | null;
3989
+ priority_order: number;
3860
3990
  /**
3861
- * Include Ticket Id In Subject
3862
- * @description Add [#TKT-123] to subject
3991
+ * Settings
3992
+ * @description Additional JSON settings
3863
3993
  */
3864
- include_ticket_id_in_subject?: boolean | null;
3994
+ settings?: {
3995
+ [key: string]: unknown;
3996
+ } | null;
3997
+ };
3998
+ /**
3999
+ * SearchTicketsRequest
4000
+ * @description Request model for searching tickets
4001
+ * @example {
4002
+ * "filters": {
4003
+ * "category_id": [
4004
+ * 1,
4005
+ * 2
4006
+ * ],
4007
+ * "created_from": "2025-01-01",
4008
+ * "created_to": "2025-12-31",
4009
+ * "is_overdue": true,
4010
+ * "priority": [
4011
+ * "high",
4012
+ * "urgent"
4013
+ * ],
4014
+ * "status": [
4015
+ * "open",
4016
+ * "pending"
4017
+ * ]
4018
+ * },
4019
+ * "limit": 20,
4020
+ * "page": 1,
4021
+ * "query": "payment issue",
4022
+ * "sort_by": "created_at",
4023
+ * "sort_order": "desc"
4024
+ * }
4025
+ */
4026
+ SearchTicketsRequest: {
3865
4027
  /**
3866
- * Spam Threshold
3867
- * @description Spam score threshold
4028
+ * Query
4029
+ * @description Search query for full-text search
3868
4030
  */
3869
- spam_threshold?: number | null;
4031
+ query?: string | null;
3870
4032
  /**
3871
- * Block Spam
3872
- * @description Block emails marked as spam
4033
+ * Filters
4034
+ * @description Advanced filters (status, priority, category, dates, etc.)
3873
4035
  */
3874
- block_spam?: boolean | null;
4036
+ filters?: {
4037
+ [key: string]: unknown;
4038
+ } | null;
3875
4039
  /**
3876
- * Notify Customer On Create
3877
- * @description Notify customer when ticket created
4040
+ * Sort By
4041
+ * @description Sort field (created_at, updated_at, priority, status)
4042
+ * @default created_at
3878
4043
  */
3879
- notify_customer_on_create?: boolean | null;
4044
+ sort_by: string;
3880
4045
  /**
3881
- * Notify Customer On Update
3882
- * @description Notify customer on updates
4046
+ * Sort Order
4047
+ * @description Sort order (asc/desc)
4048
+ * @default desc
3883
4049
  */
3884
- notify_customer_on_update?: boolean | null;
4050
+ sort_order: string;
3885
4051
  /**
3886
- * Notify Agent On Assignment
3887
- * @description Notify agent on assignment
4052
+ * Page
4053
+ * @description Page number
4054
+ * @default 1
3888
4055
  */
3889
- notify_agent_on_assignment?: boolean | null;
3890
- };
3891
- /**
3892
- * MarkFollowupRequest
3893
- * @description Request model for marking follow-up as completed
3894
- */
3895
- MarkFollowupRequest: {
4056
+ page: number;
3896
4057
  /**
3897
- * Followup Notes
3898
- * @description Follow-up notes
4058
+ * Limit
4059
+ * @description Results per page
4060
+ * @default 20
3899
4061
  */
3900
- followup_notes: string;
4062
+ limit: number;
3901
4063
  };
3902
4064
  /**
3903
- * TemplateStatus
3904
- * @description Template status values
3905
- * @enum {string}
3906
- */
3907
- TemplateStatus: "active" | "draft" | "archived";
3908
- /**
3909
- * UpdateMacroRequest
3910
- * @description Request model for updating a macro
4065
+ * UpdateAgentTicketRequest
4066
+ * @description Request model for updating a ticket (agent-facing)
3911
4067
  */
3912
- UpdateMacroRequest: {
3913
- /** Macro Name */
3914
- macro_name?: string | null;
3915
- /** Macro Slug */
3916
- macro_slug?: string | null;
4068
+ UpdateAgentTicketRequest: {
4069
+ /** Subject */
4070
+ subject?: string | null;
3917
4071
  /** Description */
3918
4072
  description?: string | null;
3919
- /** Actions */
3920
- actions?: {
3921
- [key: string]: unknown;
3922
- }[] | null;
3923
- /** Include Response */
3924
- include_response?: boolean | null;
3925
- /** Canned Response Id */
3926
- canned_response_id?: number | null;
3927
- /** Is Public */
3928
- is_public?: boolean | null;
3929
- /** Team Ids */
3930
- team_ids?: number[] | null;
3931
- /** User Ids */
3932
- user_ids?: number[] | null;
3933
- /** Display Order */
3934
- display_order?: number | null;
3935
- /** Button Color */
3936
- button_color?: string | null;
3937
- /** Icon */
3938
- icon?: string | null;
3939
- /** Status */
3940
- status?: string | null;
3941
- };
3942
- /**
3943
- * GenerateSurveyRequest
3944
- * @description Request model for generating a satisfaction survey
3945
- */
3946
- GenerateSurveyRequest: {
3947
4073
  /**
3948
- * Survey Type
3949
- * @description Survey type
3950
- * @default post_resolution
4074
+ * Priority
4075
+ * @description low, medium, high, urgent, critical
3951
4076
  */
3952
- survey_type: string;
4077
+ priority?: string | null;
4078
+ /** Category */
4079
+ category?: string | null;
4080
+ /** Sub Category */
4081
+ sub_category?: string | null;
4082
+ /**
4083
+ * Status
4084
+ * @description new, open, pending, waiting_for_customer, on_hold, resolved, closed
4085
+ */
4086
+ status?: string | null;
4087
+ /** Tags */
4088
+ tags?: string[] | null;
4089
+ /** Custom Fields */
4090
+ custom_fields?: {
4091
+ [key: string]: unknown;
4092
+ } | null;
3953
4093
  };
3954
4094
  /**
3955
- * CreateTeamRequest
3956
- * @description Request model for creating a team
4095
+ * CreateCommentRequest
4096
+ * @description Request model for adding a comment
3957
4097
  */
3958
- CreateTeamRequest: {
3959
- /**
3960
- * Team Name
3961
- * @description Team name
3962
- */
3963
- team_name: string;
3964
- /**
3965
- * Description
3966
- * @description Team description
3967
- */
3968
- description?: string | null;
3969
- /**
3970
- * Team Type
3971
- * @description Team type: general, technical, billing, sales, custom
3972
- * @default general
3973
- */
3974
- team_type: string;
3975
- /**
3976
- * Team Lead User Id
3977
- * @description User ID of team leader
3978
- */
3979
- team_lead_user_id?: number | null;
3980
- /** Team Lead Name */
3981
- team_lead_name?: string | null;
3982
- /** Team Lead Email */
3983
- team_lead_email?: string | null;
3984
- /**
3985
- * Auto Assign Enabled
3986
- * @description Enable auto-assignment
3987
- * @default false
3988
- */
3989
- auto_assign_enabled: boolean;
4098
+ CreateCommentRequest: {
3990
4099
  /**
3991
- * Assignment Strategy
3992
- * @description round_robin, least_active, skill_based, random
3993
- * @default round_robin
4100
+ * Comment Body
4101
+ * @description Comment text
3994
4102
  */
3995
- assignment_strategy: string;
3996
- /** Max Tickets Per Agent */
3997
- max_tickets_per_agent?: number | null;
4103
+ comment_body: string;
3998
4104
  /**
3999
- * Business Hours
4000
- * @description Business hours schedule
4105
+ * Is Internal
4106
+ * @description Internal note (agents only)
4107
+ * @default false
4001
4108
  */
4002
- business_hours?: {
4003
- [key: string]: unknown;
4004
- } | null;
4109
+ is_internal: boolean | null;
4110
+ };
4111
+ /**
4112
+ * CreateBusinessHoursRequest
4113
+ * @description Request model for creating business hours schedule
4114
+ * @example {
4115
+ * "is_default": true,
4116
+ * "observes_holidays": true,
4117
+ * "schedule_name": "Standard Business Hours",
4118
+ * "schedule_slug": "standard-hours",
4119
+ * "timezone": "America/New_York",
4120
+ * "working_hours": {
4121
+ * "friday": {
4122
+ * "enabled": true,
4123
+ * "end": "17:00",
4124
+ * "start": "09:00"
4125
+ * },
4126
+ * "monday": {
4127
+ * "enabled": true,
4128
+ * "end": "17:00",
4129
+ * "start": "09:00"
4130
+ * },
4131
+ * "saturday": {
4132
+ * "enabled": false
4133
+ * },
4134
+ * "sunday": {
4135
+ * "enabled": false
4136
+ * },
4137
+ * "thursday": {
4138
+ * "enabled": true,
4139
+ * "end": "17:00",
4140
+ * "start": "09:00"
4141
+ * },
4142
+ * "tuesday": {
4143
+ * "enabled": true,
4144
+ * "end": "17:00",
4145
+ * "start": "09:00"
4146
+ * },
4147
+ * "wednesday": {
4148
+ * "enabled": true,
4149
+ * "end": "17:00",
4150
+ * "start": "09:00"
4151
+ * }
4152
+ * }
4153
+ * }
4154
+ */
4155
+ CreateBusinessHoursRequest: {
4156
+ /** Schedule Name */
4157
+ schedule_name: string;
4158
+ /** Schedule Slug */
4159
+ schedule_slug: string;
4160
+ /** Description */
4161
+ description?: string | null;
4005
4162
  /**
4006
4163
  * Timezone
4007
- * @description Team timezone
4164
+ * @description Timezone (e.g., 'America/New_York')
4008
4165
  * @default UTC
4009
4166
  */
4010
4167
  timezone: string;
4011
4168
  /**
4012
- * Routing Rules
4013
- * @description Routing rules for auto-assignment
4169
+ * Working Hours
4170
+ * @description Working hours per day of week
4014
4171
  */
4015
- routing_rules?: {
4172
+ working_hours: {
4016
4173
  [key: string]: unknown;
4017
- } | null;
4018
- /** Sla First Response Minutes */
4019
- sla_first_response_minutes?: number | null;
4020
- /** Sla Resolution Minutes */
4021
- sla_resolution_minutes?: number | null;
4022
- /**
4023
- * Escalation Enabled
4024
- * @default false
4025
- */
4026
- escalation_enabled: boolean;
4027
- /** Escalation After Minutes */
4028
- escalation_after_minutes?: number | null;
4174
+ };
4029
4175
  /**
4030
- * Escalation Team Id
4031
- * @description Team ID to escalate to
4176
+ * Observes Holidays
4177
+ * @description Whether to observe holiday calendar
4178
+ * @default true
4032
4179
  */
4033
- escalation_team_id?: string | null;
4180
+ observes_holidays: boolean;
4034
4181
  /**
4035
4182
  * Is Default
4036
- * @description Set as default team for unassigned tickets
4183
+ * @description Default business hours for organization
4037
4184
  * @default false
4038
4185
  */
4039
4186
  is_default: boolean;
4040
- /** Settings */
4041
- settings?: {
4042
- [key: string]: unknown;
4043
- } | null;
4044
- /** Custom Fields */
4045
- custom_fields?: {
4046
- [key: string]: unknown;
4047
- } | null;
4048
4187
  };
4049
4188
  /**
4050
- * AssignTicketRequest
4051
- * @description Request model for assigning a ticket
4189
+ * GetSLAComplianceRequest
4190
+ * @description Request model for SLA compliance report
4191
+ * @example {
4192
+ * "date_from": "2025-11-01",
4193
+ * "date_to": "2025-12-01",
4194
+ * "group_by": "agent"
4195
+ * }
4052
4196
  */
4053
- AssignTicketRequest: {
4197
+ GetSLAComplianceRequest: {
4054
4198
  /**
4055
- * Assigned To User Id
4056
- * @description User ID to assign to
4199
+ * Date From
4200
+ * Format: date
4201
+ * @description Start date (required)
4057
4202
  */
4058
- assigned_to_user_id?: number | null;
4203
+ date_from: string;
4059
4204
  /**
4060
- * Assigned Team Id
4061
- * @description Team ID to assign to
4205
+ * Date To
4206
+ * Format: date
4207
+ * @description End date (required)
4062
4208
  */
4063
- assigned_team_id?: number | null;
4209
+ date_to: string;
4210
+ /**
4211
+ * @description Grouping dimension
4212
+ * @default daily
4213
+ */
4214
+ group_by: components["schemas"]["GroupByDimension"];
4215
+ };
4216
+ /**
4217
+ * RemoveTeamMemberRequest
4218
+ * @description Request model for removing a team member
4219
+ */
4220
+ RemoveTeamMemberRequest: {
4221
+ /**
4222
+ * Removal Reason
4223
+ * @description Reason for removal
4224
+ */
4225
+ removal_reason?: string | null;
4064
4226
  };
4065
4227
  /**
4066
4228
  * UpdateEmailTemplateRequest
@@ -4095,317 +4257,155 @@ export interface components {
4095
4257
  status?: components["schemas"]["TemplateStatus"] | null;
4096
4258
  };
4097
4259
  /**
4098
- * UpdateTeamRequest
4099
- * @description Request model for updating a team
4100
- */
4101
- UpdateTeamRequest: {
4102
- /** Team Name */
4103
- team_name?: string | null;
4104
- /** Description */
4105
- description?: string | null;
4106
- /** Team Type */
4107
- team_type?: string | null;
4108
- /** Team Lead User Id */
4109
- team_lead_user_id?: number | null;
4110
- /** Team Lead Name */
4111
- team_lead_name?: string | null;
4112
- /** Team Lead Email */
4113
- team_lead_email?: string | null;
4114
- /** Auto Assign Enabled */
4115
- auto_assign_enabled?: boolean | null;
4116
- /** Assignment Strategy */
4117
- assignment_strategy?: string | null;
4118
- /** Max Tickets Per Agent */
4119
- max_tickets_per_agent?: number | null;
4120
- /** Business Hours */
4121
- business_hours?: {
4122
- [key: string]: unknown;
4123
- } | null;
4124
- /** Timezone */
4125
- timezone?: string | null;
4126
- /** Routing Rules */
4127
- routing_rules?: {
4128
- [key: string]: unknown;
4129
- } | null;
4130
- /** Sla First Response Minutes */
4131
- sla_first_response_minutes?: number | null;
4132
- /** Sla Resolution Minutes */
4133
- sla_resolution_minutes?: number | null;
4134
- /** Escalation Enabled */
4135
- escalation_enabled?: boolean | null;
4136
- /** Escalation After Minutes */
4137
- escalation_after_minutes?: number | null;
4138
- /** Escalation Team Id */
4139
- escalation_team_id?: string | null;
4140
- /** Is Default */
4141
- is_default?: boolean | null;
4142
- /**
4143
- * Status
4144
- * @description active, inactive, archived
4145
- */
4146
- status?: string | null;
4147
- /** Settings */
4148
- settings?: {
4149
- [key: string]: unknown;
4150
- } | null;
4151
- /** Custom Fields */
4152
- custom_fields?: {
4153
- [key: string]: unknown;
4154
- } | null;
4155
- };
4156
- /**
4157
- * CreateReportExportRequest
4158
- * @description Request model for creating a report export
4260
+ * UpdateEmailConfigRequest
4261
+ * @description Request model for updating email configuration
4159
4262
  * @example {
4160
- * "export_format": "excel",
4161
- * "report_name": "Monthly Ticket Report - November 2025",
4162
- * "report_params": {
4163
- * "date_from": "2025-11-01",
4164
- * "date_to": "2025-11-30",
4165
- * "include_breakdowns": true,
4166
- * "period_type": "daily"
4167
- * },
4168
- * "report_type": "ticket_metrics"
4263
+ * "from_email": "noreply@company.com",
4264
+ * "from_name": "Company Support",
4265
+ * "inbound_email": "support@company.com",
4266
+ * "inbound_enabled": true,
4267
+ * "smtp_enabled": true,
4268
+ * "smtp_host": "smtp.gmail.com",
4269
+ * "smtp_port": 587,
4270
+ * "smtp_use_tls": true
4169
4271
  * }
4170
4272
  */
4171
- CreateReportExportRequest: {
4172
- /** @description Type of report to export */
4173
- report_type: components["schemas"]["ReportType"];
4273
+ UpdateEmailConfigRequest: {
4174
4274
  /**
4175
- * Report Name
4176
- * @description User-friendly report name
4275
+ * Inbound Enabled
4276
+ * @description Enable email-to-ticket
4277
+ */
4278
+ inbound_enabled?: boolean | null;
4279
+ /**
4280
+ * Inbound Email
4281
+ * @description Support email address
4282
+ */
4283
+ inbound_email?: string | null;
4284
+ /**
4285
+ * Auto Create Tickets
4286
+ * @description Auto-create tickets from unknown senders
4287
+ */
4288
+ auto_create_tickets?: boolean | null;
4289
+ /**
4290
+ * Require Verified Emails
4291
+ * @description Require email verification
4292
+ */
4293
+ require_verified_emails?: boolean | null;
4294
+ /**
4295
+ * Strip Signatures
4296
+ * @description Remove signatures from body
4177
4297
  */
4178
- report_name: string;
4298
+ strip_signatures?: boolean | null;
4179
4299
  /**
4180
- * Report Params
4181
- * @description Report parameters (filters, date ranges, etc.)
4300
+ * Strip Quotes
4301
+ * @description Remove quoted text from replies
4182
4302
  */
4183
- report_params: {
4184
- [key: string]: unknown;
4185
- };
4186
- /** @description Export file format */
4187
- export_format: components["schemas"]["ExportFormat"];
4188
- };
4189
- /**
4190
- * CreateBusinessHoursRequest
4191
- * @description Request model for creating business hours schedule
4192
- * @example {
4193
- * "is_default": true,
4194
- * "observes_holidays": true,
4195
- * "schedule_name": "Standard Business Hours",
4196
- * "schedule_slug": "standard-hours",
4197
- * "timezone": "America/New_York",
4198
- * "working_hours": {
4199
- * "friday": {
4200
- * "enabled": true,
4201
- * "end": "17:00",
4202
- * "start": "09:00"
4203
- * },
4204
- * "monday": {
4205
- * "enabled": true,
4206
- * "end": "17:00",
4207
- * "start": "09:00"
4208
- * },
4209
- * "saturday": {
4210
- * "enabled": false
4211
- * },
4212
- * "sunday": {
4213
- * "enabled": false
4214
- * },
4215
- * "thursday": {
4216
- * "enabled": true,
4217
- * "end": "17:00",
4218
- * "start": "09:00"
4219
- * },
4220
- * "tuesday": {
4221
- * "enabled": true,
4222
- * "end": "17:00",
4223
- * "start": "09:00"
4224
- * },
4225
- * "wednesday": {
4226
- * "enabled": true,
4227
- * "end": "17:00",
4228
- * "start": "09:00"
4229
- * }
4230
- * }
4231
- * }
4232
- */
4233
- CreateBusinessHoursRequest: {
4234
- /** Schedule Name */
4235
- schedule_name: string;
4236
- /** Schedule Slug */
4237
- schedule_slug: string;
4238
- /** Description */
4239
- description?: string | null;
4303
+ strip_quotes?: boolean | null;
4240
4304
  /**
4241
- * Timezone
4242
- * @description Timezone (e.g., 'America/New_York')
4243
- * @default UTC
4305
+ * Outbound Enabled
4306
+ * @description Enable email notifications
4244
4307
  */
4245
- timezone: string;
4308
+ outbound_enabled?: boolean | null;
4246
4309
  /**
4247
- * Working Hours
4248
- * @description Working hours per day of week
4310
+ * From Email
4311
+ * @description Default from email
4249
4312
  */
4250
- working_hours: {
4251
- [key: string]: unknown;
4252
- };
4313
+ from_email?: string | null;
4253
4314
  /**
4254
- * Observes Holidays
4255
- * @description Whether to observe holiday calendar
4256
- * @default true
4315
+ * From Name
4316
+ * @description Default from name
4257
4317
  */
4258
- observes_holidays: boolean;
4318
+ from_name?: string | null;
4259
4319
  /**
4260
- * Is Default
4261
- * @description Default business hours for organization
4262
- * @default false
4320
+ * Reply To
4321
+ * @description Default reply-to email
4263
4322
  */
4264
- is_default: boolean;
4265
- };
4266
- /**
4267
- * CreateCategoryRequest
4268
- * @description Request model for creating a new support category
4269
- * @example {
4270
- * "category_name": "Billing & Payments",
4271
- * "category_slug": "billing-payments",
4272
- * "color": "#4CAF50",
4273
- * "default_priority": "medium",
4274
- * "default_team_id": 123,
4275
- * "description": "Issues related to billing, invoices, and payments",
4276
- * "display_order": 1,
4277
- * "icon": "icon-billing",
4278
- * "is_public": true,
4279
- * "settings": {
4280
- * "require_account_verification": true
4281
- * },
4282
- * "sla_first_response_minutes": 60,
4283
- * "sla_resolution_minutes": 480
4284
- * }
4285
- */
4286
- app__models__support__category_models__CreateCategoryRequest: {
4323
+ reply_to?: string | null;
4287
4324
  /**
4288
- * Category Name
4289
- * @description Category name
4325
+ * Smtp Enabled
4326
+ * @description Use SMTP provider
4290
4327
  */
4291
- category_name: string;
4328
+ smtp_enabled?: boolean | null;
4292
4329
  /**
4293
- * Description
4294
- * @description Category description
4330
+ * Smtp Host
4331
+ * @description SMTP host
4295
4332
  */
4296
- description?: string | null;
4333
+ smtp_host?: string | null;
4297
4334
  /**
4298
- * Category Slug
4299
- * @description URL-friendly slug (lowercase, hyphens only)
4335
+ * Smtp Port
4336
+ * @description SMTP port
4300
4337
  */
4301
- category_slug: string;
4338
+ smtp_port?: number | null;
4302
4339
  /**
4303
- * Parent Category Id
4304
- * @description Parent category ID for hierarchical categories
4340
+ * Smtp Username
4341
+ * @description SMTP username
4305
4342
  */
4306
- parent_category_id?: number | null;
4343
+ smtp_username?: string | null;
4307
4344
  /**
4308
- * Default Team Id
4309
- * @description Default team ID for auto-routing tickets
4345
+ * Smtp Password
4346
+ * @description SMTP password (will be encrypted)
4310
4347
  */
4311
- default_team_id?: number | null;
4348
+ smtp_password?: string | null;
4312
4349
  /**
4313
- * Default Priority
4314
- * @description Default priority slug for tickets in this category
4350
+ * Smtp Use Tls
4351
+ * @description Use TLS/SSL
4315
4352
  */
4316
- default_priority?: string | null;
4353
+ smtp_use_tls?: boolean | null;
4317
4354
  /**
4318
- * Sla First Response Minutes
4319
- * @description SLA for first response in minutes
4355
+ * Ses Enabled
4356
+ * @description Use AWS SES
4320
4357
  */
4321
- sla_first_response_minutes?: number | null;
4358
+ ses_enabled?: boolean | null;
4322
4359
  /**
4323
- * Sla Resolution Minutes
4324
- * @description SLA for resolution in minutes
4360
+ * Ses Region
4361
+ * @description AWS region
4325
4362
  */
4326
- sla_resolution_minutes?: number | null;
4363
+ ses_region?: string | null;
4327
4364
  /**
4328
- * Is Public
4329
- * @description Whether category is visible to customers
4330
- * @default true
4365
+ * Ses Access Key
4366
+ * @description AWS access key (will be encrypted)
4331
4367
  */
4332
- is_public: boolean;
4368
+ ses_access_key?: string | null;
4333
4369
  /**
4334
- * Display Order
4335
- * @description Display order for sorting categories
4336
- * @default 0
4370
+ * Ses Secret Key
4371
+ * @description AWS secret key (will be encrypted)
4337
4372
  */
4338
- display_order: number;
4373
+ ses_secret_key?: string | null;
4339
4374
  /**
4340
- * Icon
4341
- * @description Icon identifier (e.g., 'icon-support', 'fa-question')
4375
+ * Enable Threading
4376
+ * @description Enable email threading
4342
4377
  */
4343
- icon?: string | null;
4378
+ enable_threading?: boolean | null;
4344
4379
  /**
4345
- * Color
4346
- * @description Color hex code (e.g., '#FF5733')
4380
+ * Include Ticket Id In Subject
4381
+ * @description Add [#TKT-123] to subject
4347
4382
  */
4348
- color?: string | null;
4383
+ include_ticket_id_in_subject?: boolean | null;
4349
4384
  /**
4350
- * Settings
4351
- * @description Additional JSON settings
4385
+ * Spam Threshold
4386
+ * @description Spam score threshold
4352
4387
  */
4353
- settings?: {
4354
- [key: string]: unknown;
4355
- } | null;
4356
- };
4357
- ErrorResponse: {
4358
- /** @example about:blank */
4359
- type?: string;
4360
- /** @example GENERIC_ERROR */
4361
- code?: string;
4362
- /** @example Client Error */
4363
- title?: string;
4364
- /** @example 400 */
4365
- status?: number;
4366
- /** @example An error occurred */
4367
- detail?: string;
4368
- /** @example /v1/cart/items */
4369
- instance?: string;
4370
- extensions?: components["schemas"]["Extensions"];
4371
- };
4372
- /**
4373
- * UpdateTicketStatusRequest
4374
- * @description Request model for updating ticket status
4375
- */
4376
- UpdateTicketStatusRequest: {
4388
+ spam_threshold?: number | null;
4377
4389
  /**
4378
- * Status
4379
- * @description New status: new, open, pending, waiting_for_customer, on_hold, resolved, closed
4390
+ * Block Spam
4391
+ * @description Block emails marked as spam
4380
4392
  */
4381
- status: string;
4393
+ block_spam?: boolean | null;
4382
4394
  /**
4383
- * Reason
4384
- * @description Reason for status change
4395
+ * Notify Customer On Create
4396
+ * @description Notify customer when ticket created
4385
4397
  */
4386
- reason?: string | null;
4387
- };
4388
- /**
4389
- * GroupByDimension
4390
- * @description Grouping dimensions for SLA compliance
4391
- * @enum {string}
4392
- */
4393
- GroupByDimension: "daily" | "weekly" | "monthly" | "team" | "agent";
4394
- /**
4395
- * BulkUpdateStatusRequest
4396
- * @description Request model for bulk updating ticket status
4397
- */
4398
- BulkUpdateStatusRequest: {
4398
+ notify_customer_on_create?: boolean | null;
4399
4399
  /**
4400
- * Ticket Ids
4401
- * @description List of ticket IDs
4400
+ * Notify Customer On Update
4401
+ * @description Notify customer on updates
4402
4402
  */
4403
- ticket_ids: number[];
4403
+ notify_customer_on_update?: boolean | null;
4404
4404
  /**
4405
- * New Status
4406
- * @description New status
4405
+ * Notify Agent On Assignment
4406
+ * @description Notify agent on assignment
4407
4407
  */
4408
- new_status: string;
4408
+ notify_agent_on_assignment?: boolean | null;
4409
4409
  };
4410
4410
  };
4411
4411
  responses: never;