@blezgo/api-sdk 0.1.3 → 0.1.5

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