@opencx/mcp 1.15.61 → 1.15.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/schema.d.ts CHANGED
@@ -135,6 +135,26 @@ export interface paths {
135
135
  patch?: never;
136
136
  trace?: never;
137
137
  };
138
+ "/agent-availability/me/wrap-up/ready": {
139
+ parameters: {
140
+ query?: never;
141
+ header?: never;
142
+ path?: never;
143
+ cookie?: never;
144
+ };
145
+ get?: never;
146
+ put?: never;
147
+ /**
148
+ * Finish your wrap-up for a closed phone session
149
+ * @description End only the authenticated teammate’s wrap-up for the supplied closed phone session. Requires a user-bound token. Does not close the session, change availability, or clear wrap-up belonging to another session. Returns cleared=false when no matching wrap-up remains.
150
+ */
151
+ post: operations["finishSessionWrapUp"];
152
+ delete?: never;
153
+ options?: never;
154
+ head?: never;
155
+ patch?: never;
156
+ trace?: never;
157
+ };
138
158
  "/agent-availability/{userId}": {
139
159
  parameters: {
140
160
  query?: never;
@@ -3115,12 +3135,12 @@ export interface paths {
3115
3135
  };
3116
3136
  /**
3117
3137
  * Get phone agent knowledge-source tree
3118
- * @description Returns independently configurable instruction and knowledge search scopes.
3138
+ * @description Returns the instructions and knowledge the agent can use, which of them are selected, and how the agent gets them during calls. An agent only uses what is selected.
3119
3139
  */
3120
3140
  get: operations["getPhoneAgentKnowledgeSources"];
3121
3141
  /**
3122
3142
  * Update phone agent knowledge sources
3123
- * @description Set independent instruction and knowledge search scopes. Use all mode with empty selections to search all eligible sources.
3143
+ * @description Select the instructions and knowledge the agent can use. Nothing else reaches the agent: an empty list means none. New items inside a selected folder are included; new folders and items outside selected folders are not. When the selection fits, the agent loads it at the start of each call; otherwise it searches it during calls.
3124
3144
  */
3125
3145
  put: operations["updatePhoneAgentKnowledgeSources"];
3126
3146
  post?: never;
@@ -3262,6 +3282,70 @@ export interface paths {
3262
3282
  patch?: never;
3263
3283
  trace?: never;
3264
3284
  };
3285
+ "/phone/web-calls": {
3286
+ parameters: {
3287
+ query?: never;
3288
+ header?: never;
3289
+ path?: never;
3290
+ cookie?: never;
3291
+ };
3292
+ get?: never;
3293
+ put?: never;
3294
+ /**
3295
+ * Create an app voice call
3296
+ * @description Server-only. Requires phone:write and enabled Voice SDK access. Authenticate the customer before choosing their contact and destination. Return these temporary credentials only to that customer.
3297
+ */
3298
+ post: operations["createWebCall"];
3299
+ delete?: never;
3300
+ options?: never;
3301
+ head?: never;
3302
+ patch?: never;
3303
+ trace?: never;
3304
+ };
3305
+ "/phone/web-calls/{callId}/connect": {
3306
+ parameters: {
3307
+ query?: never;
3308
+ header?: never;
3309
+ path?: never;
3310
+ cookie?: never;
3311
+ };
3312
+ get?: never;
3313
+ put?: never;
3314
+ /**
3315
+ * Start a connected app voice call
3316
+ * @description SDK call. Authorize with the call controlToken, after publishing microphone audio. Repeated activation does not start another call.
3317
+ */
3318
+ post: operations["connectWebCall"];
3319
+ delete?: never;
3320
+ options?: never;
3321
+ head?: never;
3322
+ patch?: never;
3323
+ trace?: never;
3324
+ };
3325
+ "/phone/web-calls/{callId}": {
3326
+ parameters: {
3327
+ query?: never;
3328
+ header?: never;
3329
+ path?: never;
3330
+ cookie?: never;
3331
+ };
3332
+ /**
3333
+ * Get app voice call status
3334
+ * @description Authorize with this call’s controlToken.
3335
+ */
3336
+ get: operations["getWebCall"];
3337
+ put?: never;
3338
+ post?: never;
3339
+ /**
3340
+ * End an app voice call
3341
+ * @description Authorize with this call’s controlToken. Ends all participants in this call. Repeated requests are safe.
3342
+ */
3343
+ delete: operations["endWebCall"];
3344
+ options?: never;
3345
+ head?: never;
3346
+ patch?: never;
3347
+ trace?: never;
3348
+ };
3265
3349
  "/redaction/message": {
3266
3350
  parameters: {
3267
3351
  query?: never;
@@ -5167,6 +5251,26 @@ export interface paths {
5167
5251
  patch?: never;
5168
5252
  trace?: never;
5169
5253
  };
5254
+ "/widget/authenticate-user-by-phone": {
5255
+ parameters: {
5256
+ query?: never;
5257
+ header?: never;
5258
+ path?: never;
5259
+ cookie?: never;
5260
+ };
5261
+ get?: never;
5262
+ put?: never;
5263
+ /**
5264
+ * Authenticate a widget user by phone number
5265
+ * @description Returns a token for the contact with this phone number, creating the contact when none exists. When several contacts share the number, the oldest one is used.
5266
+ */
5267
+ post: operations["authenticateWidgetUserByPhone"];
5268
+ delete?: never;
5269
+ options?: never;
5270
+ head?: never;
5271
+ patch?: never;
5272
+ trace?: never;
5273
+ };
5170
5274
  "/test": {
5171
5275
  parameters: {
5172
5276
  query?: never;
@@ -7169,6 +7273,27 @@ export interface components {
7169
7273
  /** @description Seconds between automatic assignments to the same agent under the least-busy strategy: 0 turns pacing off, otherwise 15 to 3600. */
7170
7274
  auto_assign_interval_seconds?: number;
7171
7275
  };
7276
+ CreateWebCallDto: {
7277
+ /**
7278
+ * Format: uuid
7279
+ * @description Reuse for retries of the same call creation request.
7280
+ */
7281
+ requestId: string;
7282
+ /** @description Verified contact belonging to your organization. Resolve this on your server. */
7283
+ contactId: string;
7284
+ destination: {
7285
+ /** @constant */
7286
+ type: "agent";
7287
+ id: string;
7288
+ } | {
7289
+ /** @constant */
7290
+ type: "team";
7291
+ /** Format: uuid */
7292
+ id: string;
7293
+ };
7294
+ /** @default 1800 */
7295
+ maxDurationSeconds: number;
7296
+ };
7172
7297
  /** @enum {string} */
7173
7298
  MiniAppIcon: "ChartBar" | "ChartBarHorizontal" | "ChartLine" | "ChartLineUp" | "ChartPie" | "ChartDonut" | "ChartScatter" | "ChartPolar" | "TrendUp" | "TrendDown" | "Graph" | "Table" | "ListBullets" | "Kanban" | "Funnel" | "Gauge" | "Pulse" | "Percent" | "Calculator" | "Target" | "Crosshair" | "Timer" | "Clock" | "CalendarBlank" | "Users" | "UsersThree" | "User" | "UserCircle" | "IdentificationBadge" | "Headset" | "Handshake" | "Chat" | "ChatsTeardrop" | "Envelope" | "Phone" | "Globe" | "Megaphone" | "PaperPlaneTilt" | "Bell" | "Star" | "Heart" | "Smiley" | "ThumbsUp" | "Warning" | "ShieldCheck" | "Trophy" | "Medal" | "Flag" | "Fire" | "Rocket" | "Lightning" | "Sparkle" | "Robot" | "Brain" | "MagicWand" | "Atom" | "Lightbulb" | "Money" | "CurrencyDollar" | "Coins" | "CreditCard" | "Receipt" | "ShoppingCart" | "Package" | "Truck" | "Storefront" | "Buildings" | "MapPin" | "Tag" | "Bookmark" | "Ticket" | "Database" | "Stack" | "Cube" | "Wrench" | "Gear" | "Flask" | "FileText" | "ClipboardText" | "Notebook" | "SquaresFour" | "TreeStructure" | "Eye" | "Binoculars" | "Compass" | "Scales" | "Question" | "Info";
7174
7299
  CreateMiniAppDto: {
@@ -7221,12 +7346,12 @@ export interface components {
7221
7346
  };
7222
7347
  UpdateKnowledgeSourcesDto: {
7223
7348
  /**
7224
- * @description Explicit instruction scope mode. Omit only for compatibility with older clients.
7349
+ * @description Deprecated; omit. "all" (with empty instructionIds and directoryIds) selects every instruction folder and every instruction outside a folder available now. New folders and new instructions outside a folder are not selected.
7225
7350
  * @enum {string}
7226
7351
  */
7227
7352
  instructionMode?: "all" | "selected";
7228
7353
  /**
7229
- * @description Explicit knowledge scope mode. Omit only for compatibility with older clients.
7354
+ * @description Deprecated; omit. "all" (with empty knowledge selections) selects every knowledge folder available now. New folders are not selected.
7230
7355
  * @enum {string}
7231
7356
  */
7232
7357
  knowledgeMode?: "all" | "selected";
@@ -8363,6 +8488,10 @@ export interface components {
8363
8488
  chat_context?: string;
8364
8489
  http_action_overrides?: components["schemas"]["PublicAPIHttpOverrides"];
8365
8490
  };
8491
+ AuthenticateUserByPhonePayloadDto: {
8492
+ /** @description Phone number including the country code, e.g. +14155550123 */
8493
+ phone: string;
8494
+ };
8366
8495
  SaveContactInput: {
8367
8496
  contact: {
8368
8497
  /** Format: email */
@@ -8814,7 +8943,7 @@ export interface components {
8814
8943
  * @description Sort field (default: last_message_at)
8815
8944
  * @enum {string}
8816
8945
  */
8817
- sort_by?: "last_message_at" | "created_at" | "sla_urgency";
8946
+ sort_by?: "last_message_at" | "created_at" | "sla_urgency" | "snoozed_until";
8818
8947
  /**
8819
8948
  * @description Sort direction (default: desc)
8820
8949
  * @enum {string}
@@ -8824,7 +8953,9 @@ export interface components {
8824
8953
  * @description Group the session list by this field. Omit for a flat list.
8825
8954
  * @enum {string}
8826
8955
  */
8827
- group_by?: "channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id";
8956
+ group_by?: "tags" | "contact_attribute" | "session_attribute" | "channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id";
8957
+ /** @description Exact attribute key for contact_attribute or session_attribute grouping. Missing or empty leaves the list ungrouped. */
8958
+ group_by_attribute?: string;
8828
8959
  /**
8829
8960
  * @description User ids the view is shared with. Leave both share lists empty to share the view with the whole organization. Name users and/or teams to restrict it to them, or pass only your own user id to keep it private. Sharing requires the `sessions-shared-views:write` permission — without it a created view is locked to its creator and the share lists on an update are ignored.
8830
8961
  * @default []
@@ -8897,14 +9028,16 @@ export interface components {
8897
9028
  * @description New sort field
8898
9029
  * @enum {string}
8899
9030
  */
8900
- sort_by?: "last_message_at" | "created_at" | "sla_urgency";
9031
+ sort_by?: "last_message_at" | "created_at" | "sla_urgency" | "snoozed_until";
8901
9032
  /**
8902
9033
  * @description New sort direction
8903
9034
  * @enum {string}
8904
9035
  */
8905
9036
  sort_order?: "asc" | "desc";
8906
9037
  /** @description New grouping field; null removes grouping. Omit to leave it unchanged. */
8907
- group_by?: ("channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id") | null;
9038
+ group_by?: ("tags" | "contact_attribute" | "session_attribute" | "channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id") | null;
9039
+ /** @description Attribute key for attribute grouping. Null clears the key. Omit to preserve it when the grouping field stays the same. */
9040
+ group_by_attribute?: string | null;
8908
9041
  /** @description User ids the view is shared with. Leave both share lists empty to share the view with the whole organization. Name users and/or teams to restrict it to them, or pass only your own user id to keep it private. Sharing requires the `sessions-shared-views:write` permission — without it a created view is locked to its creator and the share lists on an update are ignored. */
8909
9042
  shared_with_user_ids?: number[];
8910
9043
  /** @description Team ids (from GET /teams) whose members can see the view. */
@@ -8994,7 +9127,7 @@ export interface components {
8994
9127
  * @enum {string}
8995
9128
  */
8996
9129
  tts_provider?: "elevenlabs" | "cartesia";
8997
- /** @description ISO-639-1 language codes the agent should speak. A subset of {en, es, fr, de, hi, ru, pt, ja, it, nl} can be combined freely. Any other code (e.g. "ar", "tr", "zh") must be the only entry; Arabic accepts dialect tags such as "ar-SA". */
9130
+ /** @description ISO-639-1 language codes the agent should speak. Supported languages can be combined; Arabic accepts dialect tags such as "ar-SA". */
8998
9131
  language?: string[];
8999
9132
  /** @description What the agent says when it picks up (default: "Hello?") */
9000
9133
  first_message?: string | null;
@@ -9028,7 +9161,7 @@ export interface components {
9028
9161
  * @enum {string}
9029
9162
  */
9030
9163
  tts_provider?: "elevenlabs" | "cartesia";
9031
- /** @description ISO-639-1 language codes the agent should speak. A subset of {en, es, fr, de, hi, ru, pt, ja, it, nl} can be combined freely. Any other code (e.g. "ar", "tr", "zh") must be the only entry; Arabic accepts dialect tags such as "ar-SA". */
9164
+ /** @description ISO-639-1 language codes the agent should speak. Supported languages can be combined; Arabic accepts dialect tags such as "ar-SA". */
9032
9165
  language?: string[];
9033
9166
  /** @description What the agent says when it picks up (default: "Hello?") */
9034
9167
  first_message?: string | null;
@@ -9238,6 +9371,10 @@ export interface components {
9238
9371
  /** @description Additional context about the situation */
9239
9372
  context?: string;
9240
9373
  };
9374
+ FinishSessionWrapUpBodyDto: {
9375
+ /** Format: uuid */
9376
+ session_id: string;
9377
+ };
9241
9378
  SetChatSessionSubStatusInput: {
9242
9379
  /**
9243
9380
  * Format: uuid
@@ -9636,6 +9773,7 @@ export interface components {
9636
9773
  ring_duration_seconds: number | null;
9637
9774
  recording_status: ("pending" | "completed" | "failed") | null;
9638
9775
  has_recording: boolean;
9776
+ has_voicemail?: boolean;
9639
9777
  is_session_latest_call: boolean;
9640
9778
  /** Format: date-time */
9641
9779
  created_at: string;
@@ -9651,6 +9789,11 @@ export interface components {
9651
9789
  kind: "macro";
9652
9790
  macro_id: string;
9653
9791
  macro_title: string;
9792
+ } | {
9793
+ /** @constant */
9794
+ kind: "workflow";
9795
+ workflow_id: string;
9796
+ workflow_run_id: string;
9654
9797
  };
9655
9798
  MessageOptionsDto: {
9656
9799
  source: components["schemas"]["MessageOptionsSourceDto"];
@@ -10090,7 +10233,7 @@ export interface components {
10090
10233
  }) | null;
10091
10234
  knowledgebase_called?: boolean | null;
10092
10235
  /** @enum {string} */
10093
- type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
10236
+ type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "primary_contact_changed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "session_priority_changed_by_agent" | "session_priority_changed_by_system" | "session_snoozed" | "session_unsnoozed" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
10094
10237
  ivr_selection?: {
10095
10238
  /** Format: uuid */
10096
10239
  runId: string;
@@ -10339,6 +10482,7 @@ export interface components {
10339
10482
  options: components["schemas"]["MessageOptionDto"][];
10340
10483
  user_id: number | null;
10341
10484
  overrides_saved_reply_id: string | null;
10485
+ exclude_from_suggestions: boolean;
10342
10486
  /** Format: date-time */
10343
10487
  created_at: string;
10344
10488
  /** Format: date-time */
@@ -10716,6 +10860,19 @@ export interface components {
10716
10860
  group_capacity: number | null;
10717
10861
  global_capacity: number;
10718
10862
  };
10863
+ WebCallCredentialsDto: {
10864
+ /** Format: uuid */
10865
+ callId: string;
10866
+ /** Format: uuid */
10867
+ sessionId: string;
10868
+ controlToken: string;
10869
+ /** Format: date-time */
10870
+ expiresAt: string;
10871
+ };
10872
+ WebCallStatusDto: {
10873
+ /** @enum {string} */
10874
+ state: "waiting" | "queued" | "connected" | "ended";
10875
+ };
10719
10876
  CreateMiniAppResponseDto: {
10720
10877
  /** Format: uuid */
10721
10878
  app_id: string;
@@ -10802,6 +10959,19 @@ export interface components {
10802
10959
  UpdateAgentWorkflowsResponseDto: {
10803
10960
  success: boolean;
10804
10961
  };
10962
+ PhoneAgentKnowledgePlanDto: {
10963
+ /**
10964
+ * @description How a save now would give the agent its selection. none: nothing is selected, so the agent only follows its own instructions. preload: every selected source is loaded at the start of each call. search: the selection is too large to load, so the agent searches it during calls.
10965
+ * @enum {string}
10966
+ */
10967
+ mode: "none" | "preload" | "search";
10968
+ /** @description Whether the agent searches during calls now. Set when the agent is saved; differs from mode when the selected sources changed size since. */
10969
+ searchEnabled: boolean;
10970
+ /** @description Selected instructions and knowledge documents currently available to voice calls */
10971
+ selectedSourceCount: number;
10972
+ /** @description Share of the room for loading sources at call start that the agent's instructions and selection would use. Above 100, the agent searches instead. */
10973
+ capacityUsedPercent: number;
10974
+ };
10805
10975
  KnowledgeSourceRoutingGuideDto: {
10806
10976
  /** @enum {string} */
10807
10977
  status: "fresh" | "stale" | "invalid";
@@ -10876,18 +11046,20 @@ export interface components {
10876
11046
  KnowledgeSourceTreeDto: {
10877
11047
  directories: components["schemas"]["KnowledgeSourceDirectoryDto"][];
10878
11048
  uncategorized: components["schemas"]["KnowledgeSourceTreeItemDto"][];
10879
- /** @description Estimated tokens for all selected instructions */
11049
+ /** @description Estimated tokens of the selected instructions and knowledge documents */
10880
11050
  totalTokens: number;
10881
11051
  /**
10882
- * @description All eligible instructions are searchable when all; otherwise only explicit selections
11052
+ * @description Deprecated: always selected. The agent only uses the instructions selected here.
10883
11053
  * @enum {string}
10884
11054
  */
10885
11055
  instructionMode: "all" | "selected";
10886
11056
  /**
10887
- * @description All eligible knowledge is searchable when all; otherwise only explicit selections
11057
+ * @description Deprecated: always selected. The agent only uses the knowledge selected here.
10888
11058
  * @enum {string}
10889
11059
  */
10890
11060
  knowledgeMode: "all" | "selected";
11061
+ /** @description How the agent gets the selected sources during calls; null for agents on another runtime */
11062
+ knowledgePlan: components["schemas"]["PhoneAgentKnowledgePlanDto"] | null;
10891
11063
  selectedInstructionIds: string[];
10892
11064
  selectedDirectoryIds: string[];
10893
11065
  selectedKnowledgeItemIds: string[];
@@ -10909,12 +11081,20 @@ export interface components {
10909
11081
  };
10910
11082
  UpdateKnowledgeSourcesResponseDto: {
10911
11083
  success: boolean;
10912
- /** @description Estimated tokens for all selected instructions */
11084
+ /** @description Estimated tokens of the selected instructions and knowledge documents */
10913
11085
  totalTokens: number;
10914
- /** @enum {string} */
11086
+ /**
11087
+ * @description Deprecated: always selected.
11088
+ * @enum {string}
11089
+ */
10915
11090
  instructionMode: "all" | "selected";
10916
- /** @enum {string} */
11091
+ /**
11092
+ * @description Deprecated: always selected.
11093
+ * @enum {string}
11094
+ */
10917
11095
  knowledgeMode: "all" | "selected";
11096
+ /** @description How the agent gets the selected sources during calls; null for agents on another runtime */
11097
+ knowledgePlan: components["schemas"]["PhoneAgentKnowledgePlanDto"] | null;
10918
11098
  selectedInstructionIds: string[];
10919
11099
  selectedDirectoryIds: string[];
10920
11100
  selectedKnowledgeItemIds: string[];
@@ -10980,6 +11160,8 @@ export interface components {
10980
11160
  assigned_agent_id?: string | null;
10981
11161
  assigned_agent_name?: string | null;
10982
11162
  assigned_agent_provider?: ("vapi" | "openai-realtime-voice" | "livekit") | null;
11163
+ assigned_interpreter_id?: string | null;
11164
+ assigned_interpreter_name?: string | null;
10983
11165
  region?: ("apac" | "eu" | "us") | null;
10984
11166
  twilio_phone_number_sid?: string | null;
10985
11167
  };
@@ -12313,28 +12495,6 @@ export interface components {
12313
12495
  noop: number;
12314
12496
  };
12315
12497
  };
12316
- EmailFleetDnsSetupDto: {
12317
- /** Format: uuid */
12318
- domain_id: string;
12319
- domain: string;
12320
- zone: string;
12321
- /** @enum {string} */
12322
- status: "preparing" | "needs_dns" | "verified" | "check_failed";
12323
- checked_at: string | null;
12324
- records: {
12325
- /** @enum {string} */
12326
- type: "A" | "MX" | "TXT" | "CNAME";
12327
- host: string;
12328
- value: string;
12329
- ttl: number;
12330
- purpose?: string;
12331
- actual: string | null;
12332
- verified: boolean | null;
12333
- }[];
12334
- };
12335
- EmailFleetDnsSetupsDto: {
12336
- domains: components["schemas"]["EmailFleetDnsSetupDto"][];
12337
- };
12338
12498
  EmailFleetSuggestionDto: {
12339
12499
  domain: string;
12340
12500
  available: boolean;
@@ -12360,6 +12520,28 @@ export interface components {
12360
12520
  };
12361
12521
  };
12362
12522
  };
12523
+ EmailFleetDnsSetupDto: {
12524
+ /** Format: uuid */
12525
+ domain_id: string;
12526
+ domain: string;
12527
+ zone: string;
12528
+ /** @enum {string} */
12529
+ status: "preparing" | "needs_dns" | "verified" | "check_failed";
12530
+ checked_at: string | null;
12531
+ records: {
12532
+ /** @enum {string} */
12533
+ type: "A" | "MX" | "TXT" | "CNAME";
12534
+ host: string;
12535
+ value: string;
12536
+ ttl: number;
12537
+ purpose?: string;
12538
+ actual: string | null;
12539
+ verified: boolean | null;
12540
+ }[];
12541
+ };
12542
+ EmailFleetDnsSetupsDto: {
12543
+ domains: components["schemas"]["EmailFleetDnsSetupDto"][];
12544
+ };
12363
12545
  SkillDto: {
12364
12546
  /** Format: uuid */
12365
12547
  id: string;
@@ -13260,7 +13442,7 @@ export interface components {
13260
13442
  */
13261
13443
  type: "unmapped_event";
13262
13444
  /** @enum {string} */
13263
- message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
13445
+ message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "primary_contact_changed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "session_priority_changed_by_agent" | "session_priority_changed_by_system" | "session_snoozed" | "session_unsnoozed" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
13264
13446
  content: {
13265
13447
  /** @constant */
13266
13448
  type: "text";
@@ -13551,7 +13733,7 @@ export interface components {
13551
13733
  */
13552
13734
  type: "unmapped_event";
13553
13735
  /** @enum {string} */
13554
- message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
13736
+ message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "primary_contact_changed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "session_priority_changed_by_agent" | "session_priority_changed_by_system" | "session_snoozed" | "session_unsnoozed" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
13555
13737
  content: {
13556
13738
  /** @constant */
13557
13739
  type: "text";
@@ -13835,7 +14017,7 @@ export interface components {
13835
14017
  * @description Stored event type used by include/exclude filters; it can differ from the normalized event.type.
13836
14018
  * @enum {string}
13837
14019
  */
13838
- message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
14020
+ message_type: "agent_assigned_by_integration" | "agent_assigned_by_system" | "agent_assigned_by_user" | "agent_changed" | "agent_comment" | "agent_initiated_session" | "agent_joined" | "agent_message" | "agent_reopened_session" | "agent_took_session_from_ai" | "agent_unassigned_by_integration" | "agent_unassigned_by_system" | "agent_unassigned_by_user" | "ai_assumed_the_session_resolved" | "ai_decided_to_not_reply" | "ai_decided_to_resolve_the_issue" | "ai_follow_up_cancelled" | "ai_follow_up_fired" | "ai_follow_up_scheduled" | "ai_reopened_session" | "ai_response_cancelled" | "ai_resumed_by_system" | "ai_suggestion" | "call_history" | "call_transferred" | "closed_resolved_by_agent" | "closed_resolved_by_api" | "closed_resolved_by_contact" | "closed_resolved_by_integration" | "closed_resolved_by_system" | "closed_unresolved_by_agent" | "closed_unresolved_by_api" | "closed_unresolved_by_system" | "contact_data_updated" | "csat_request_cancelled" | "csat_requested" | "csat_submitted" | "email_draft_message" | "handoff" | "handoff_to_salesforce_miaw" | "handoff_to_third_party_failed" | "handoff_to_zendesk" | "integration_reopened_session" | "ivr_selection" | "message" | "pii_attachment_removed" | "primary_contact_changed" | "prohibited_topic_detected" | "quoted_content_modified" | "salesforce_fields_updated" | "sequence_message" | "session_forwarded" | "session_language_changed_by_agent" | "session_language_changed_by_api" | "session_language_changed_by_integration" | "session_language_changed_by_system" | "session_priority_changed_by_agent" | "session_priority_changed_by_system" | "session_snoozed" | "session_unsnoozed" | "skills_added_by_system" | "sla_applied_by_agent" | "sla_applied_by_system" | "sla_first_reply_breached" | "sla_first_reply_completed_after_breach" | "sla_first_reply_fulfilled" | "sla_first_reply_metric_started" | "sla_freezed_office_hours_ended" | "sla_freezed_snoozed" | "sla_next_reply_breached" | "sla_next_reply_completed_after_breach" | "sla_next_reply_fulfilled" | "sla_next_reply_metric_started" | "sla_removed_by_agent" | "sla_removed_by_system" | "sla_resolution_breached" | "sla_resolution_completed_after_breach" | "sla_resolution_fulfilled" | "sla_resolution_metric_started" | "sla_resolution_paused_resolved" | "sla_resolution_paused_waiting_on_customer" | "sla_resolution_resumed_customer_replied" | "sla_resolution_resumed_reopened" | "sla_resumed_office_hours_started" | "sla_resumed_snooze_cancelled" | "sla_resumed_snooze_expired" | "state_checkpoint" | "sub_session_created" | "sub_session_linked_by_agent" | "sub_session_linked_by_api" | "sub_session_linked_by_integration" | "sub_session_linked_by_system" | "sub_session_unlinked_by_agent" | "sub_session_unlinked_by_api" | "sub_session_unlinked_by_integration" | "sub_session_unlinked_by_system" | "sub_status_removed_by_agent" | "sub_status_removed_by_api" | "sub_status_removed_by_integration" | "sub_status_removed_by_system" | "sub_status_set_by_agent" | "sub_status_set_by_api" | "sub_status_set_by_integration" | "sub_status_set_by_system" | "system_reopened_session" | "tag_added_by_agent" | "tag_added_by_api" | "tag_added_by_integration" | "tag_added_by_system" | "tag_removed_by_agent" | "tag_removed_by_api" | "tag_removed_by_integration" | "tag_removed_by_system" | "team_assigned_by_integration" | "team_assigned_by_system" | "team_assigned_by_user" | "team_unassigned_by_integration" | "team_unassigned_by_system" | "team_unassigned_by_user" | "user_confirmed_the_session_resolved" | "voice_call_ai_joined" | "voice_call_ai_left" | "voice_call_contact_answered" | "voice_call_contact_joined" | "voice_call_contact_left" | "voice_call_ended" | "voice_call_failed_to_start" | "voice_call_human_answered" | "voice_call_human_joined" | "voice_call_human_left" | "voice_call_started" | "workflow_message" | "workflow_note" | "workflow_triggered";
13839
14021
  actor: {
13840
14022
  /** @enum {string} */
13841
14023
  type: "human" | "api" | "workflow" | "system" | "integration" | "ai" | "contact" | "unknown";
@@ -14140,6 +14322,92 @@ export interface components {
14140
14322
  /** @description Timestamp of the first recorded human reply to this session. Null when no human reply has been recorded. */
14141
14323
  first_human_message_at: string | null;
14142
14324
  };
14325
+ GetChatSessionDetailOutput: {
14326
+ /** Format: uuid */
14327
+ id: string;
14328
+ /** @description All tags currently assigned to this session, ordered by tag name. Empty when no tags are assigned. */
14329
+ tags: components["schemas"]["SessionTagOutput"][];
14330
+ /** @enum {string} */
14331
+ status: "open" | "closed_resolved" | "closed_unresolved";
14332
+ /** @description Id of the custom status refining `status`, or null when only the built-in status applies. Resolve it with GET /custom-statuses. */
14333
+ sub_status_id: string | null;
14334
+ ai_closure_type: ("assumed_resolved" | "handed_off" | "resolved") | null;
14335
+ sentiment: ("angry" | "happy" | "neutral") | null;
14336
+ /** @description AI-generated summary of the conversation. Populated for both AI-resolved and handed-off sessions once the session has been summarized; null otherwise. */
14337
+ summary: string | null;
14338
+ /** @description Session title: the email subject, a subject set by an agent, or an AI-generated title. Null until one is set. */
14339
+ title: string | null;
14340
+ channel: {
14341
+ type: components["schemas"]["SessionChannel"];
14342
+ };
14343
+ contact?: {
14344
+ /** Format: uuid */
14345
+ id: string;
14346
+ email: string | null;
14347
+ phone_number: string | null;
14348
+ name: string | null;
14349
+ custom_data: {
14350
+ [key: string]: string;
14351
+ } | null;
14352
+ non_verified_custom_data: {
14353
+ [key: string]: string | number | boolean;
14354
+ } | null;
14355
+ /** @description ISO 8601 timestamp of when the contact was created */
14356
+ created_at: string;
14357
+ /** @description ISO 8601 timestamp of when the contact was last updated */
14358
+ updated_at: string;
14359
+ non_verified_name: string | null;
14360
+ non_verified_email: string | null;
14361
+ };
14362
+ language?: string;
14363
+ /**
14364
+ * @deprecated
14365
+ * @description Deprecated: use assignee. Contains the recorded human user ID as a string, or null for AI and unassigned sessions. Use assignee.type to distinguish them. This deprecation applies only to response fields; assignment requests still accept assignee_id.
14366
+ */
14367
+ assignee_id?: string | null;
14368
+ assignee: components["schemas"]["ChatSessionAssignee"];
14369
+ /** @description Session-level custom data stored on the chat session. */
14370
+ custom_data?: {
14371
+ [key: string]: string | number | boolean;
14372
+ };
14373
+ team?: {
14374
+ /** Format: uuid */
14375
+ id: string;
14376
+ name: string;
14377
+ description?: string;
14378
+ };
14379
+ /** @description Support team assigned to this session. Null when no team can be resolved within the session organization. */
14380
+ support_team: {
14381
+ /**
14382
+ * Format: uuid
14383
+ * @description Stable team ID, preserved when the team is renamed.
14384
+ */
14385
+ id: string;
14386
+ name: string;
14387
+ } | null;
14388
+ handoff?: {
14389
+ /** @enum {string} */
14390
+ sentiment?: "angry" | "happy" | "neutral";
14391
+ summary: string;
14392
+ };
14393
+ ticketing_system?: {
14394
+ /** @enum {string} */
14395
+ name: "dynamics365" | "freshchat" | "freshdesk" | "freshdesk_ticketing" | "front" | "gorgias" | "hubspot" | "infobip" | "intercom" | "open" | "salesforce" | "salesforce_v2" | "twilio_flex" | "zendesk" | "zendesk_v2";
14396
+ external_id: string;
14397
+ /** @enum {string} */
14398
+ id_type: "conversation_id" | "ticket_id" | "case_id" | "conversation_sid";
14399
+ };
14400
+ ticket_number: number;
14401
+ assist_mode: boolean;
14402
+ /** Format: date-time */
14403
+ created_at: string;
14404
+ /** Format: date-time */
14405
+ updated_at: string;
14406
+ /** @description Timestamp of the first recorded human reply to this session. Null when no human reply has been recorded. */
14407
+ first_human_message_at: string | null;
14408
+ /** @description Download link for the latest completed call recording in a phone or web session, or null when unavailable. Valid for seven days; fetch this session again to refresh it. Available only when getting a session by ID. */
14409
+ recording_url: string | null;
14410
+ };
14143
14411
  SessionAssigneeUpdateOutput: {
14144
14412
  no_change: boolean;
14145
14413
  session: components["schemas"]["GetChatSessionOutput"];
@@ -14326,6 +14594,7 @@ export interface components {
14326
14594
  };
14327
14595
  };
14328
14596
  assistMode: boolean;
14597
+ emailContactRevision?: number;
14329
14598
  mode?: {
14330
14599
  id: string;
14331
14600
  name: string;
@@ -14905,11 +15174,13 @@ export interface components {
14905
15174
  /** @description True when the view was built in the dashboard with OR/exclude groups or filters outside this API's vocabulary. Its `filters` read back as null, and updating `filters` on it REPLACES the whole saved query with the simple set you send. */
14906
15175
  advanced: boolean;
14907
15176
  /** @description Sort field the view opens with */
14908
- sort_by: ("last_message_at" | "created_at" | "sla_urgency") | null;
15177
+ sort_by: ("last_message_at" | "created_at" | "sla_urgency" | "snoozed_until") | null;
14909
15178
  /** @description Sort direction the view opens with */
14910
15179
  sort_order: ("asc" | "desc") | null;
14911
15180
  /** @description Field sessions are grouped by in the list, when the view groups them */
14912
- group_by: ("channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id") | null;
15181
+ group_by: ("tags" | "contact_attribute" | "session_attribute" | "channel" | "assignee_id" | "status" | "ai_closure_type" | "language" | "inbox_id") | null;
15182
+ /** @description Exact attribute key for contact or session attribute grouping, or null when no key is set. */
15183
+ group_by_attribute: string | null;
14913
15184
  /** @description User ids the view is shared with. Empty (with no teams) means the whole org. */
14914
15185
  shared_with_user_ids: number[];
14915
15186
  /** @description Team ids the view is shared with. Empty (with no users) means the whole org. */
@@ -15128,6 +15399,9 @@ export interface components {
15128
15399
  /** @description When the organization was last updated. */
15129
15400
  updated_at: string | null;
15130
15401
  };
15402
+ WebCallSuccessDto: {
15403
+ success: boolean;
15404
+ };
15131
15405
  HandBackCallOutput: {
15132
15406
  /** Format: uuid */
15133
15407
  session_id: string;
@@ -15170,6 +15444,7 @@ export interface components {
15170
15444
  use_org_knowledgebase: boolean;
15171
15445
  background_noise_preset: ("office" | "bar" | "city-street") | null;
15172
15446
  recording_enabled: boolean;
15447
+ /** @description Whether the agent searches its selected knowledge during calls. Set on save: on only when the selection is too large to load at the start of each call. */
15173
15448
  search_enabled: boolean;
15174
15449
  stt_keyterms: string[];
15175
15450
  stt_model: ("deepgram/flux-general" | "deepgram/nova-3" | "deepgram/nova-3-medical" | "cartesia/ink-whisper" | "elevenlabs/scribe_v2_realtime" | "xai/stt-1" | "assemblyai/universal-3-5-pro" | "speechmatics/enhanced" | "google/gemini-3.5-transcribe-live" | "soniox/stt-rt-v5" | "openai/gpt-live-transcribe") | null;
@@ -15634,6 +15909,9 @@ export interface components {
15634
15909
  success: boolean;
15635
15910
  };
15636
15911
  ActionTagsResponseDto: string[];
15912
+ FinishSessionWrapUpResponseDto: {
15913
+ cleared: boolean;
15914
+ };
15637
15915
  ListChatSessionsOutput: {
15638
15916
  items: components["schemas"]["GetChatSessionOutput"][];
15639
15917
  next: string | null;
@@ -16289,6 +16567,39 @@ export interface operations {
16289
16567
  };
16290
16568
  };
16291
16569
  };
16570
+ finishSessionWrapUp: {
16571
+ parameters: {
16572
+ query?: never;
16573
+ header?: never;
16574
+ path?: never;
16575
+ cookie?: never;
16576
+ };
16577
+ requestBody: {
16578
+ content: {
16579
+ "application/json": components["schemas"]["FinishSessionWrapUpBodyDto"];
16580
+ };
16581
+ };
16582
+ responses: {
16583
+ /** @description Default Response */
16584
+ 201: {
16585
+ headers: {
16586
+ [name: string]: unknown;
16587
+ };
16588
+ content: {
16589
+ "application/json": components["schemas"]["FinishSessionWrapUpResponseDto"];
16590
+ };
16591
+ };
16592
+ /** @description Internal Server Error */
16593
+ 500: {
16594
+ headers: {
16595
+ [name: string]: unknown;
16596
+ };
16597
+ content: {
16598
+ "application/json": components["schemas"]["ErrorDto"];
16599
+ };
16600
+ };
16601
+ };
16602
+ };
16292
16603
  updateAgentAvailability: {
16293
16604
  parameters: {
16294
16605
  query?: never;
@@ -16768,7 +17079,7 @@ export interface operations {
16768
17079
  [name: string]: unknown;
16769
17080
  };
16770
17081
  content: {
16771
- "application/json": components["schemas"]["GetChatSessionOutput"];
17082
+ "application/json": components["schemas"]["GetChatSessionDetailOutput"];
16772
17083
  };
16773
17084
  };
16774
17085
  /** @description Internal Server Error */
@@ -22886,7 +23197,7 @@ export interface operations {
22886
23197
  listVoices: {
22887
23198
  parameters: {
22888
23199
  query?: {
22889
- /** @description Filter by language (e.g. "en", "ar", "nl") */
23200
+ /** @description Filter by language (e.g. "en", "ar", "nl"). A base code also matches its regional variants ("ar" returns "ar-SA" and "ar-EG" voices); a regional code matches only itself. */
22890
23201
  language?: string;
22891
23202
  /** @description Filter by gender (e.g. "male", "female") */
22892
23203
  gender?: string;
@@ -23445,6 +23756,132 @@ export interface operations {
23445
23756
  };
23446
23757
  };
23447
23758
  };
23759
+ createWebCall: {
23760
+ parameters: {
23761
+ query?: never;
23762
+ header?: never;
23763
+ path?: never;
23764
+ cookie?: never;
23765
+ };
23766
+ requestBody: {
23767
+ content: {
23768
+ "application/json": components["schemas"]["CreateWebCallDto"];
23769
+ };
23770
+ };
23771
+ responses: {
23772
+ /** @description Default Response */
23773
+ 200: {
23774
+ headers: {
23775
+ [name: string]: unknown;
23776
+ };
23777
+ content: {
23778
+ "application/json": components["schemas"]["WebCallCredentialsDto"];
23779
+ };
23780
+ };
23781
+ /** @description Internal Server Error */
23782
+ 500: {
23783
+ headers: {
23784
+ [name: string]: unknown;
23785
+ };
23786
+ content: {
23787
+ "application/json": components["schemas"]["ErrorDto"];
23788
+ };
23789
+ };
23790
+ };
23791
+ };
23792
+ connectWebCall: {
23793
+ parameters: {
23794
+ query?: never;
23795
+ header?: never;
23796
+ path: {
23797
+ callId: string;
23798
+ };
23799
+ cookie?: never;
23800
+ };
23801
+ requestBody?: never;
23802
+ responses: {
23803
+ /** @description Default Response */
23804
+ 200: {
23805
+ headers: {
23806
+ [name: string]: unknown;
23807
+ };
23808
+ content: {
23809
+ "application/json": components["schemas"]["WebCallSuccessDto"];
23810
+ };
23811
+ };
23812
+ /** @description Internal Server Error */
23813
+ 500: {
23814
+ headers: {
23815
+ [name: string]: unknown;
23816
+ };
23817
+ content: {
23818
+ "application/json": components["schemas"]["ErrorDto"];
23819
+ };
23820
+ };
23821
+ };
23822
+ };
23823
+ getWebCall: {
23824
+ parameters: {
23825
+ query?: never;
23826
+ header?: never;
23827
+ path: {
23828
+ callId: string;
23829
+ };
23830
+ cookie?: never;
23831
+ };
23832
+ requestBody?: never;
23833
+ responses: {
23834
+ /** @description Default Response */
23835
+ 200: {
23836
+ headers: {
23837
+ [name: string]: unknown;
23838
+ };
23839
+ content: {
23840
+ "application/json": components["schemas"]["WebCallStatusDto"];
23841
+ };
23842
+ };
23843
+ /** @description Internal Server Error */
23844
+ 500: {
23845
+ headers: {
23846
+ [name: string]: unknown;
23847
+ };
23848
+ content: {
23849
+ "application/json": components["schemas"]["ErrorDto"];
23850
+ };
23851
+ };
23852
+ };
23853
+ };
23854
+ endWebCall: {
23855
+ parameters: {
23856
+ query?: never;
23857
+ header?: never;
23858
+ path: {
23859
+ callId: string;
23860
+ };
23861
+ cookie?: never;
23862
+ };
23863
+ requestBody?: never;
23864
+ responses: {
23865
+ /** @description Default Response */
23866
+ 200: {
23867
+ headers: {
23868
+ [name: string]: unknown;
23869
+ };
23870
+ content: {
23871
+ "application/json": components["schemas"]["WebCallSuccessDto"];
23872
+ };
23873
+ };
23874
+ /** @description Internal Server Error */
23875
+ 500: {
23876
+ headers: {
23877
+ [name: string]: unknown;
23878
+ };
23879
+ content: {
23880
+ "application/json": components["schemas"]["ErrorDto"];
23881
+ };
23882
+ };
23883
+ };
23884
+ };
23448
23885
  redactMessage: {
23449
23886
  parameters: {
23450
23887
  query?: never;
@@ -27367,6 +27804,39 @@ export interface operations {
27367
27804
  };
27368
27805
  };
27369
27806
  };
27807
+ authenticateWidgetUserByPhone: {
27808
+ parameters: {
27809
+ query?: never;
27810
+ header?: never;
27811
+ path?: never;
27812
+ cookie?: never;
27813
+ };
27814
+ requestBody: {
27815
+ content: {
27816
+ "application/json": components["schemas"]["AuthenticateUserByPhonePayloadDto"];
27817
+ };
27818
+ };
27819
+ responses: {
27820
+ /** @description Default Response */
27821
+ 201: {
27822
+ headers: {
27823
+ [name: string]: unknown;
27824
+ };
27825
+ content: {
27826
+ "application/json": components["schemas"]["VerifiedWidgetContactTokenResponseDto"];
27827
+ };
27828
+ };
27829
+ /** @description Internal Server Error */
27830
+ 500: {
27831
+ headers: {
27832
+ [name: string]: unknown;
27833
+ };
27834
+ content: {
27835
+ "application/json": components["schemas"]["ErrorDto"];
27836
+ };
27837
+ };
27838
+ };
27839
+ };
27370
27840
  testConnection: {
27371
27841
  parameters: {
27372
27842
  query?: never;