@blezgo/api-sdk 0.1.5 → 0.1.6

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