@amigo-ai/platform-sdk 0.82.0 → 0.83.0

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.
@@ -1984,7 +1984,7 @@ export interface paths {
1984
1984
  /** List all conversations (voice + text) */
1985
1985
  get: operations["list_conversations_v1__workspace_id__conversations_get"];
1986
1986
  put?: never;
1987
- /** Create a new text conversation */
1987
+ /** Create or start a conversation (web inbound, or outbound on a channel) */
1988
1988
  post: operations["create_conversation_v1__workspace_id__conversations_post"];
1989
1989
  delete?: never;
1990
1990
  options?: never;
@@ -2030,6 +2030,26 @@ export interface paths {
2030
2030
  patch?: never;
2031
2031
  trace?: never;
2032
2032
  };
2033
+ "/v1/{workspace_id}/conversations/{conversation_id}/channel": {
2034
+ parameters: {
2035
+ query?: never;
2036
+ header?: never;
2037
+ path?: never;
2038
+ cookie?: never;
2039
+ };
2040
+ get?: never;
2041
+ put?: never;
2042
+ /**
2043
+ * Switch a conversation to another channel
2044
+ * @description Move an active conversation onto a different channel (sms/imessage today). The durable conversation id is preserved — the same conversation continues; only its routing changes. Optionally dispatch a first agent turn on the new channel.
2045
+ */
2046
+ post: operations["switch_conversation_channel_v1__workspace_id__conversations__conversation_id__channel_post"];
2047
+ delete?: never;
2048
+ options?: never;
2049
+ head?: never;
2050
+ patch?: never;
2051
+ trace?: never;
2052
+ };
2033
2053
  "/v1/{workspace_id}/conversations/{conversation_id}/turns": {
2034
2054
  parameters: {
2035
2055
  query?: never;
@@ -3362,6 +3382,60 @@ export interface paths {
3362
3382
  patch?: never;
3363
3383
  trace?: never;
3364
3384
  };
3385
+ "/v1/{workspace_id}/intake/materializations": {
3386
+ parameters: {
3387
+ query?: never;
3388
+ header?: never;
3389
+ path?: never;
3390
+ cookie?: never;
3391
+ };
3392
+ /**
3393
+ * List Intake Materializations
3394
+ * @description Per-dataset materialization status for the workspace's Destinations tab.
3395
+ *
3396
+ * Lists each registered dataset alongside its customer-data destination table's
3397
+ * status — ``materialized`` (with row count + last-write time) or
3398
+ * ``not_materialized`` (no table yet). The dataset list + pagination mirror
3399
+ * ``GET /datasets`` (the contracts registry); the destination status is read
3400
+ * from the ``customer_data_<env>`` catalog via the SQL warehouse. Member read.
3401
+ */
3402
+ get: operations["list_intake_materializations_v1__workspace_id__intake_materializations_get"];
3403
+ put?: never;
3404
+ post?: never;
3405
+ delete?: never;
3406
+ options?: never;
3407
+ head?: never;
3408
+ patch?: never;
3409
+ trace?: never;
3410
+ };
3411
+ "/v1/{workspace_id}/intake/materialize": {
3412
+ parameters: {
3413
+ query?: never;
3414
+ header?: never;
3415
+ path?: never;
3416
+ cookie?: never;
3417
+ };
3418
+ get?: never;
3419
+ put?: never;
3420
+ /**
3421
+ * Materialize Intake
3422
+ * @description Trigger the intake → customer-data materializer for this workspace.
3423
+ *
3424
+ * Fires the materializer Databricks job (run-now); it rescans the workspace's
3425
+ * curated intake files and (re)materializes each snapshot dataset into
3426
+ * ``customer_data_<env>.<workspace_id>.<dataset>``. Every write is an idempotent
3427
+ * keyed MERGE / full overwrite, so a re-click is safe. Optionally scope to one
3428
+ * ``dataset``; omit for all curated snapshot datasets. Returns ``202`` with the
3429
+ * job ``run_id`` (``null`` when the job is not configured in this environment).
3430
+ * Same auth gate as ``POST /batches/{batch_id}/process``.
3431
+ */
3432
+ post: operations["materialize_intake_v1__workspace_id__intake_materialize_post"];
3433
+ delete?: never;
3434
+ options?: never;
3435
+ head?: never;
3436
+ patch?: never;
3437
+ trace?: never;
3438
+ };
3365
3439
  "/v1/{workspace_id}/intake/schema/register": {
3366
3440
  parameters: {
3367
3441
  query?: never;
@@ -5453,8 +5527,8 @@ export interface paths {
5453
5527
  cookie?: never;
5454
5528
  };
5455
5529
  /**
5456
- * Voice fleet capacity status
5457
- * @description Live Agones voice-fleet capacity: Ready/Allocated/total GameServers plus headroom against the maxReplicas ceiling. Workspace-GLOBAL — one fleet serves every workspace, so the path workspace_id is only the auth anchor, never a data filter. Operator-only.
5530
+ * Agones fleet capacity status
5531
+ * @description Live Agones fleet capacity: Ready/Allocated/total GameServers plus headroom against the maxReplicas ceiling. `fleet=voice` (default) reads the per-call voice fleet; `fleet=tool-runner` reads the isolated background-tool fleet. Workspace-GLOBAL — one fleet serves every workspace, so the path workspace_id is only the auth anchor, never a data filter. Operator-only.
5458
5532
  */
5459
5533
  get: operations["get_fleet_status_v1__workspace_id__sessions_fleet_status_get"];
5460
5534
  put?: never;
@@ -6997,7 +7071,7 @@ export interface paths {
6997
7071
  };
6998
7072
  /**
6999
7073
  * List trigger execution history
7000
- * @description Execution history from the Lakebase entity-event timeline read model.
7074
+ * @description Execution history from the durable trigger run table.
7001
7075
  */
7002
7076
  get: operations["list-trigger-runs"];
7003
7077
  put?: never;
@@ -7021,32 +7095,56 @@ export interface paths {
7021
7095
  */
7022
7096
  get: operations["list-use-cases"];
7023
7097
  put?: never;
7098
+ post?: never;
7099
+ delete?: never;
7100
+ options?: never;
7101
+ head?: never;
7102
+ patch?: never;
7103
+ trace?: never;
7104
+ };
7105
+ "/v1/{workspace_id}/use-cases/ownership": {
7106
+ parameters: {
7107
+ query?: never;
7108
+ header?: never;
7109
+ path?: never;
7110
+ cookie?: never;
7111
+ };
7024
7112
  /**
7025
- * Create a channel use case
7026
- * @description Create a voice or email use case. Body is a discriminated union on the `channel` field. Requires Channel.create permission.
7113
+ * List use cases this workspace owns
7114
+ * @description Return the ids of the channel-manager use cases this workspace owns. Requires Channel.view permission.
7027
7115
  */
7028
- post: operations["create-use-case"];
7116
+ get: operations["list-owned-use-cases"];
7117
+ put?: never;
7118
+ post?: never;
7029
7119
  delete?: never;
7030
7120
  options?: never;
7031
7121
  head?: never;
7032
7122
  patch?: never;
7033
7123
  trace?: never;
7034
7124
  };
7035
- "/v1/{workspace_id}/use-cases/{use_case_id}": {
7125
+ "/v1/{workspace_id}/use-cases/{use_case_id}/ownership": {
7036
7126
  parameters: {
7037
7127
  query?: never;
7038
7128
  header?: never;
7039
7129
  path?: never;
7040
7130
  cookie?: never;
7041
7131
  };
7042
- get?: never;
7043
- put?: never;
7132
+ /**
7133
+ * Check whether this workspace owns a use case
7134
+ * @description Return the ownership record if the current workspace owns the use case, or 404 if it does not (no existence leak). Requires Channel.view permission.
7135
+ */
7136
+ get: operations["get-use-case-ownership"];
7137
+ /**
7138
+ * Assign ownership of a use case to this workspace
7139
+ * @description Claim ownership of a channel-manager use case for the current workspace. Idempotent — re-assigning an already-owned use case returns 200. 404 if the use case does not exist in channel-manager. 409 if the use case is already owned by another workspace. Requires Channel.ManageOwnership permission (admin tier).
7140
+ */
7141
+ put: operations["assign-use-case-ownership"];
7044
7142
  post?: never;
7045
7143
  /**
7046
- * Delete a channel use case
7047
- * @description Delete a use case. Refuses (409) while any service still binds the use case — call DELETE `/use-cases/{id}/service-binding` first. Also refuses if a Twilio use case still has phone-number assignments. Requires Channel.delete permission.
7144
+ * Release this workspace's ownership of a use case
7145
+ * @description Release the current workspace's ownership of a use case. Refuses (409) while any service still binds the use case — call DELETE `/use-cases/{id}/service-binding` first. 404 if this workspace does not own the use case. Requires Channel.ManageOwnership permission (admin tier).
7048
7146
  */
7049
- delete: operations["delete-use-case"];
7147
+ delete: operations["release-use-case-ownership"];
7050
7148
  options?: never;
7051
7149
  head?: never;
7052
7150
  patch?: never;
@@ -10837,6 +10935,8 @@ export interface components {
10837
10935
  * @default []
10838
10936
  */
10839
10937
  available_actions?: components["schemas"]["ConversationTurnAvailableAction"][];
10938
+ /** @description Channel this turn occurred on. A conversation that switched channels has a self-describing per-turn history; null on turns written before per-turn attribution or on channel-less internal turns. */
10939
+ channel?: components["schemas"]["ChannelKind"] | null;
10840
10940
  /**
10841
10941
  * Content
10842
10942
  * @default []
@@ -11057,13 +11157,24 @@ export interface components {
11057
11157
  };
11058
11158
  /** CreateConversationRequest */
11059
11159
  CreateConversationRequest: {
11160
+ /** @default web */
11161
+ channel?: components["schemas"]["ChannelKind"];
11060
11162
  /** Entity Id */
11061
11163
  entity_id?: string | null;
11164
+ /** @description Optional context steering what the agent opens with on an outbound conversation. */
11165
+ instruction?: components["schemas"]["BackgroundString"] | null;
11166
+ /** @description Destination address for an outbound conversation (E.164 for sms/imessage). Required for non-web. */
11167
+ recipient?: components["schemas"]["PhoneE164"] | null;
11062
11168
  /**
11063
11169
  * Service Id
11064
11170
  * Format: uuid
11065
11171
  */
11066
11172
  service_id: string;
11173
+ /**
11174
+ * Use Case Id
11175
+ * @description Channel-manager use case the outbound conversation is sent through. Required for non-web; channel-manager resolves the sender (FROM) from it (never caller-supplied). Must be owned by this workspace.
11176
+ */
11177
+ use_case_id?: string | null;
11067
11178
  };
11068
11179
  /** CreateCustomerRequest */
11069
11180
  CreateCustomerRequest: {
@@ -12759,45 +12870,6 @@ export interface components {
12759
12870
  /** Region */
12760
12871
  region: string;
12761
12872
  };
12762
- /** EmailUseCaseRequest */
12763
- EmailUseCaseRequest: {
12764
- /**
12765
- * Accepts Cold Inbound
12766
- * @description Whether inbound email addressed to sender_email_address that does NOT reply to one of our outbound messages is accepted (after DMARC/spam gates). False = strict thread-only inbox.
12767
- */
12768
- accepts_cold_inbound: boolean;
12769
- /**
12770
- * @description discriminator enum property added by openapi-typescript
12771
- * @enum {string}
12772
- */
12773
- channel: "email";
12774
- /** Description */
12775
- description?: string | null;
12776
- /**
12777
- * Email Type
12778
- * @enum {string}
12779
- */
12780
- email_type: "transactional" | "marketing";
12781
- /** Entity Name */
12782
- entity_name: string;
12783
- /** Name */
12784
- name: string;
12785
- /**
12786
- * Sender Email Address
12787
- * Format: email
12788
- */
12789
- sender_email_address: string;
12790
- /**
12791
- * Setup Id
12792
- * Format: uuid
12793
- */
12794
- setup_id: string;
12795
- /**
12796
- * Unsubscribable
12797
- * @description Whether sends carry RFC 8058 unsubscribe (List-Unsubscribe header + footer links) and honor the per-use-case unsubscribe list. Marketing email_type must be unsubscribable; transactional may opt out for must-send flows.
12798
- */
12799
- unsubscribable: boolean;
12800
- };
12801
12873
  /** EmotionEvent */
12802
12874
  EmotionEvent: {
12803
12875
  /** Arousal */
@@ -15082,12 +15154,13 @@ export interface components {
15082
15154
  };
15083
15155
  /**
15084
15156
  * FleetStatusResponse
15085
- * @description Live voice Agones fleet capacity (workspace-global).
15157
+ * @description Live Agones fleet capacity (workspace-global).
15086
15158
  *
15087
- * ``headroom`` = remaining isolated-call slots (``max_replicas - allocated``);
15159
+ * ``headroom`` = remaining isolated-unit slots (``max_replicas - allocated``);
15088
15160
  * ``max_replicas``/``headroom`` are null when the ceiling isn't configured upstream.
15089
15161
  * The counts span the whole fleet (one fleet serves every workspace) — this is NOT
15090
- * per-workspace.
15162
+ * per-workspace. ``fleet``/``namespace`` echo which fleet was read (voice per-call
15163
+ * fleet, or the tool-runner background-tool fleet via ``?fleet=tool-runner``).
15091
15164
  */
15092
15165
  FleetStatusResponse: {
15093
15166
  /** Allocated */
@@ -16796,6 +16869,35 @@ export interface components {
16796
16869
  */
16797
16870
  workspace_id: string;
16798
16871
  };
16872
+ /**
16873
+ * MaterializationRow
16874
+ * @description Per-dataset status of the customer-data destination table
16875
+ * (``customer_data_<env>.<workspace_id>.<dataset>``).
16876
+ */
16877
+ MaterializationRow: {
16878
+ /** Dataset */
16879
+ dataset: string;
16880
+ /** Ingestion Mode */
16881
+ ingestion_mode: string;
16882
+ /** Last Materialized At */
16883
+ last_materialized_at?: string | null;
16884
+ /** Row Count */
16885
+ row_count?: number | null;
16886
+ /**
16887
+ * Status
16888
+ * @enum {string}
16889
+ */
16890
+ status: "materialized" | "not_materialized";
16891
+ };
16892
+ /** MaterializeRequest */
16893
+ MaterializeRequest: {
16894
+ dataset?: components["schemas"]["_DatasetSlug"] | null;
16895
+ };
16896
+ /** MaterializeResponse */
16897
+ MaterializeResponse: {
16898
+ /** Run Id */
16899
+ run_id?: number | null;
16900
+ };
16799
16901
  /**
16800
16902
  * MediaAttachedEvent
16801
16903
  * @description A media WebSocket actually reached the call's GameServer — the audio-path signal.
@@ -18220,6 +18322,24 @@ export interface components {
18220
18322
  /** Rules */
18221
18323
  rules: components["schemas"]["OutreachRule"][];
18222
18324
  };
18325
+ /** OwnedUseCasesResponse */
18326
+ OwnedUseCasesResponse: {
18327
+ /** Items */
18328
+ items: string[];
18329
+ };
18330
+ /** OwnershipResponse */
18331
+ OwnershipResponse: {
18332
+ /**
18333
+ * Use Case Id
18334
+ * Format: uuid
18335
+ */
18336
+ use_case_id: string;
18337
+ /**
18338
+ * Workspace Id
18339
+ * Format: uuid
18340
+ */
18341
+ workspace_id: string;
18342
+ };
18223
18343
  /** PaginatedResponse[ActiveEscalationItem] */
18224
18344
  PaginatedResponse_ActiveEscalationItem_: {
18225
18345
  /** Continuation Token */
@@ -18407,6 +18527,17 @@ export interface components {
18407
18527
  /** Total */
18408
18528
  total?: number | null;
18409
18529
  };
18530
+ /** PaginatedResponse[MaterializationRow] */
18531
+ PaginatedResponse_MaterializationRow_: {
18532
+ /** Continuation Token */
18533
+ continuation_token?: number | null;
18534
+ /** Has More */
18535
+ has_more: boolean;
18536
+ /** Items */
18537
+ items: components["schemas"]["MaterializationRow"][];
18538
+ /** Total */
18539
+ total?: number | null;
18540
+ };
18410
18541
  /** PaginatedResponse[MeterValueItem] */
18411
18542
  PaginatedResponse_MeterValueItem_: {
18412
18543
  /** Continuation Token */
@@ -23502,6 +23633,28 @@ export interface components {
23502
23633
  */
23503
23634
  surface_id: string;
23504
23635
  };
23636
+ /** SwitchChannelRequest */
23637
+ SwitchChannelRequest: {
23638
+ /** @description Target channel to move the conversation to (sms or imessage). */
23639
+ channel: components["schemas"]["ChannelKind"];
23640
+ /**
23641
+ * Dispatch Opener
23642
+ * @description If true, immediately drive one agent turn on the new channel (e.g. 'I'll text you now').
23643
+ * @default false
23644
+ */
23645
+ dispatch_opener?: boolean;
23646
+ /** @description Optional context steering the opener when dispatch_opener=true. */
23647
+ instruction?: components["schemas"]["BackgroundString"] | null;
23648
+ /** @description Why the conversation is being moved (e.g. escalation, customer_request). */
23649
+ reason: components["schemas"]["NameString"];
23650
+ /** @description Recipient address on the new channel (E.164). Required for sms/imessage. */
23651
+ recipient?: components["schemas"]["PhoneE164"] | null;
23652
+ /**
23653
+ * Use Case Id
23654
+ * @description Channel-manager use case for the new channel (resolves the sender). Required for sms/imessage.
23655
+ */
23656
+ use_case_id?: string | null;
23657
+ };
23505
23658
  /**
23506
23659
  * SwitchModeRequest
23507
23660
  * @description Request to toggle operator mode on an active call.
@@ -23850,6 +24003,40 @@ export interface components {
23850
24003
  /** Session Id */
23851
24004
  session_id: string;
23852
24005
  };
24006
+ /**
24007
+ * TextToolStartedEvent
24008
+ * @description A slow text tool *began* running for a web text conversation — pushed live
24009
+ * the instant the tool is dispatched, before the 15s blocking floor elapses, so a
24010
+ * subscribed client shows progress immediately instead of waiting out the floor in
24011
+ * silence (PLA-986). Emitted for tools that route through the background/floor-promoted
24012
+ * dispatch paths (companion skills and ``execution="background"`` tools) — the ones
24013
+ * that can outlast the turn's synchronous response.
24014
+ *
24015
+ * The start/completion pair share one card identity: ``call_id`` is ``bg:<task_id>``,
24016
+ * matching the eventual ``TextBackgroundResultEvent`` (and the next-turn drained card
24017
+ * from ``build_background_completion_effect``), so a client collapses started → result
24018
+ * into one card rather than rendering two. Web-only: ``conversation_id`` is the durable
24019
+ * conversation UUID (non-web channels route by a composite key and deliver via their own
24020
+ * transport).
24021
+ */
24022
+ TextToolStartedEvent: {
24023
+ /** Call Id */
24024
+ call_id: string;
24025
+ /**
24026
+ * Conversation Id
24027
+ * Format: uuid
24028
+ */
24029
+ conversation_id: string;
24030
+ /** Depth */
24031
+ depth: number;
24032
+ /**
24033
+ * @description discriminator enum property added by openapi-typescript
24034
+ * @enum {string}
24035
+ */
24036
+ event_type: "text.tool_started";
24037
+ /** Tool Name */
24038
+ tool_name: string;
24039
+ };
23853
24040
  /**
23854
24041
  * TextTurnRequest
23855
24042
  * @description Request body for ``POST /v1/{ws}/services/{service_id}/text-turn``.
@@ -24809,33 +24996,98 @@ export interface components {
24809
24996
  };
24810
24997
  /** TriggerRunResponse */
24811
24998
  TriggerRunResponse: {
24999
+ /**
25000
+ * Attempt Count
25001
+ * @description Number of claim attempts
25002
+ */
25003
+ attempt_count: number;
25004
+ /**
25005
+ * Claimed At
25006
+ * @description When the run was claimed
25007
+ */
25008
+ claimed_at?: string | null;
25009
+ /**
25010
+ * Claimed By
25011
+ * @description Dispatcher consumer that claimed the run
25012
+ */
25013
+ claimed_by?: string | null;
24812
25014
  /**
24813
25015
  * Created At
24814
- * @description When the run was created
25016
+ * Format: date-time
25017
+ * @description When the run was enqueued
24815
25018
  */
24816
- created_at?: string | null;
25019
+ created_at: string;
24817
25020
  /**
24818
- * Data
24819
- * @description Run result data
25021
+ * Error
25022
+ * @description Failure detail, if any
24820
25023
  */
24821
- data: {
25024
+ error?: string | null;
25025
+ /**
25026
+ * Fired Event Id
25027
+ * Format: uuid
25028
+ */
25029
+ fired_event_id: string;
25030
+ /**
25031
+ * Id
25032
+ * Format: uuid
25033
+ */
25034
+ id: string;
25035
+ /**
25036
+ * Input Override
25037
+ * @description Per-run input overrides
25038
+ */
25039
+ input_override?: {
24822
25040
  [key: string]: unknown;
24823
- };
25041
+ } | null;
24824
25042
  /**
24825
- * Effective At
24826
- * @description When the run took effect
25043
+ * Lease Expires At
25044
+ * @description When the running lease expires
24827
25045
  */
24828
- effective_at?: string | null;
25046
+ lease_expires_at?: string | null;
24829
25047
  /**
24830
- * Event Id
25048
+ * Max Attempts
25049
+ * @description Maximum claim attempts before dead-lettering
25050
+ */
25051
+ max_attempts: number;
25052
+ /**
25053
+ * Next Attempt At
25054
+ * Format: date-time
25055
+ * @description Next eligible claim time
25056
+ */
25057
+ next_attempt_at: string;
25058
+ /**
25059
+ * Result Text
25060
+ * @description Text result emitted by the action
25061
+ */
25062
+ result_text?: string | null;
25063
+ /**
25064
+ * Source
25065
+ * @description Source that fired the trigger
25066
+ * @enum {string}
25067
+ */
25068
+ source: "cron" | "manual" | "webhook" | "event";
25069
+ /**
25070
+ * Status
25071
+ * @description Run status
25072
+ * @enum {string}
25073
+ */
25074
+ status: "queued" | "running" | "succeeded" | "failed" | "dead";
25075
+ /**
25076
+ * Trigger Id
24831
25077
  * Format: uuid
24832
25078
  */
24833
- event_id: string;
25079
+ trigger_id: string;
24834
25080
  /**
24835
- * Event Type
24836
- * @description Event type of the run
25081
+ * Updated At
25082
+ * Format: date-time
25083
+ * @description When the run row last changed
24837
25084
  */
24838
- event_type: string;
25085
+ updated_at: string;
25086
+ /**
25087
+ * Workspace Id
25088
+ * Format: uuid
25089
+ */
25090
+ workspace_id: string;
24839
25091
  };
24840
25092
  /**
24841
25093
  * TriggerSyncConflictDetails
@@ -25144,6 +25396,27 @@ export interface components {
25144
25396
  };
25145
25397
  /** TurnResponse */
25146
25398
  TurnResponse: {
25399
+ /**
25400
+ * Background Pending
25401
+ * @description Whether this turn's ``output`` is the final answer, or only an acknowledgement that
25402
+ * work is still running in the background.
25403
+ *
25404
+ * ``false`` (default): ``output`` is the complete agent response for this turn.
25405
+ *
25406
+ * ``true``: a tool crossed the server's blocking window and was handed to a background
25407
+ * task, so ``output`` is NOT the final answer — the definitive assistant answer is
25408
+ * produced later, out-of-band. It is **durable on the conversation**: drain it by
25409
+ * re-issuing ``POST …/turns`` with ``poll=true`` (a no-message drain-and-report), by
25410
+ * sending the next user turn, or by reading the conversation back
25411
+ * (``GET …/conversations/{id}``). This is the per-conversation delivery contract — see
25412
+ * the web-integration paved path. (The workspace observer bus,
25413
+ * ``GET /v1/{workspace_id}/events/stream``, mirrors this activity as ``text.agent_message``
25414
+ * / ``text.tool_started`` / ``text.background_result`` for *dashboards* watching many
25415
+ * conversations, but is not the per-chat delivery path.) A client that treats a
25416
+ * ``background_pending=true`` turn as complete without draining will miss the final answer.
25417
+ * @default false
25418
+ */
25419
+ background_pending?: boolean;
25147
25420
  conversation: components["schemas"]["TurnConversationSnapshot"];
25148
25421
  input: components["schemas"]["ConversationTurn"];
25149
25422
  /** Output */
@@ -26182,25 +26455,6 @@ export interface components {
26182
26455
  /** Volume */
26183
26456
  volume: number | null;
26184
26457
  };
26185
- /** VoiceUseCaseRequest */
26186
- VoiceUseCaseRequest: {
26187
- /**
26188
- * @description discriminator enum property added by openapi-typescript
26189
- * @enum {string}
26190
- */
26191
- channel: "inbound_voice" | "outbound_voice" | "ringless_voicemail";
26192
- /** Description */
26193
- description?: string | null;
26194
- /** Entity Name */
26195
- entity_name: string;
26196
- /** Name */
26197
- name: string;
26198
- /**
26199
- * Setup Id
26200
- * Format: uuid
26201
- */
26202
- setup_id: string;
26203
- };
26204
26458
  /**
26205
26459
  * WorkspaceBenchmarks
26206
26460
  * @description Workspace-level call quality benchmarks for contextual comparison.
@@ -26399,7 +26653,7 @@ export interface components {
26399
26653
  */
26400
26654
  updated_at: string;
26401
26655
  };
26402
- WorkspaceSSEEvent: components["schemas"]["CallStartedEvent"] | components["schemas"]["CallEndedEvent"] | components["schemas"]["CallEscalatedEvent"] | components["schemas"]["EncounterUpdatedEvent"] | components["schemas"]["NarrativeUpdatedEvent"] | components["schemas"]["ReviewSubmittedEvent"] | components["schemas"]["SimulationTurnStoredEvent"] | components["schemas"]["SurfaceCreatedEvent"] | components["schemas"]["SurfaceDeliveredEvent"] | components["schemas"]["SurfaceUpdatedEvent"] | components["schemas"]["SurfaceArchivedEvent"] | components["schemas"]["SurfaceReshapedEvent"] | components["schemas"]["SurfaceSubmittedEvent"] | components["schemas"]["SurfaceFieldSavedEvent"] | components["schemas"]["SurfaceOpenedEvent"] | components["schemas"]["SurfacePendingReviewEvent"] | components["schemas"]["SurfaceReviewApprovedEvent"] | components["schemas"]["SurfaceReviewRejectedEvent"] | components["schemas"]["IntegrationApprovalGrantedEvent"] | components["schemas"]["IntegrationApprovalRejectedEvent"] | components["schemas"]["TextStartedEvent"] | components["schemas"]["TextCompletedEvent"] | components["schemas"]["TextBackgroundResultEvent"] | components["schemas"]["TextAgentMessageEvent"] | components["schemas"]["TriggerFiredEvent"] | components["schemas"]["TriggerCompletedEvent"] | components["schemas"]["TriggerFailedEvent"] | components["schemas"]["PipelineSyncCompletedEvent"] | components["schemas"]["PipelineErrorEvent"] | components["schemas"]["OperatorRegisteredEvent"] | components["schemas"]["OperatorStatusChangedEvent"] | components["schemas"]["OperatorProfileUpdatedEvent"] | components["schemas"]["OperatorJoinedCallEvent"] | components["schemas"]["OperatorLeftCallEvent"] | components["schemas"]["OperatorModeChangedEvent"] | components["schemas"]["OperatorWrapUpEvent"] | components["schemas"]["WorkspaceMemberAddedEvent"] | components["schemas"]["WorkspaceMemberRoleUpdatedEvent"] | components["schemas"]["WorkspaceInvitationSentEvent"] | components["schemas"]["WorkspaceInvitationAcceptedEvent"] | components["schemas"]["ChannelEmailDeliveredEvent"] | components["schemas"]["ChannelEmailBouncedEvent"] | components["schemas"]["ChannelEmailComplainedEvent"] | components["schemas"]["ChannelEmailRejectedEvent"] | components["schemas"]["ChannelEmailDelayedEvent"] | components["schemas"]["ChannelEmailOpenedEvent"] | components["schemas"]["ChannelEmailClickedEvent"] | components["schemas"]["ChannelEmailReceivedEvent"] | components["schemas"]["ChannelVoicemailStatusEvent"];
26656
+ WorkspaceSSEEvent: components["schemas"]["CallStartedEvent"] | components["schemas"]["CallEndedEvent"] | components["schemas"]["CallEscalatedEvent"] | components["schemas"]["EncounterUpdatedEvent"] | components["schemas"]["NarrativeUpdatedEvent"] | components["schemas"]["ReviewSubmittedEvent"] | components["schemas"]["SimulationTurnStoredEvent"] | components["schemas"]["SurfaceCreatedEvent"] | components["schemas"]["SurfaceDeliveredEvent"] | components["schemas"]["SurfaceUpdatedEvent"] | components["schemas"]["SurfaceArchivedEvent"] | components["schemas"]["SurfaceReshapedEvent"] | components["schemas"]["SurfaceSubmittedEvent"] | components["schemas"]["SurfaceFieldSavedEvent"] | components["schemas"]["SurfaceOpenedEvent"] | components["schemas"]["SurfacePendingReviewEvent"] | components["schemas"]["SurfaceReviewApprovedEvent"] | components["schemas"]["SurfaceReviewRejectedEvent"] | components["schemas"]["IntegrationApprovalGrantedEvent"] | components["schemas"]["IntegrationApprovalRejectedEvent"] | components["schemas"]["TextStartedEvent"] | components["schemas"]["TextCompletedEvent"] | components["schemas"]["TextToolStartedEvent"] | components["schemas"]["TextBackgroundResultEvent"] | components["schemas"]["TextAgentMessageEvent"] | components["schemas"]["TriggerFiredEvent"] | components["schemas"]["TriggerCompletedEvent"] | components["schemas"]["TriggerFailedEvent"] | components["schemas"]["PipelineSyncCompletedEvent"] | components["schemas"]["PipelineErrorEvent"] | components["schemas"]["OperatorRegisteredEvent"] | components["schemas"]["OperatorStatusChangedEvent"] | components["schemas"]["OperatorProfileUpdatedEvent"] | components["schemas"]["OperatorJoinedCallEvent"] | components["schemas"]["OperatorLeftCallEvent"] | components["schemas"]["OperatorModeChangedEvent"] | components["schemas"]["OperatorWrapUpEvent"] | components["schemas"]["WorkspaceMemberAddedEvent"] | components["schemas"]["WorkspaceMemberRoleUpdatedEvent"] | components["schemas"]["WorkspaceInvitationSentEvent"] | components["schemas"]["WorkspaceInvitationAcceptedEvent"] | components["schemas"]["ChannelEmailDeliveredEvent"] | components["schemas"]["ChannelEmailBouncedEvent"] | components["schemas"]["ChannelEmailComplainedEvent"] | components["schemas"]["ChannelEmailRejectedEvent"] | components["schemas"]["ChannelEmailDelayedEvent"] | components["schemas"]["ChannelEmailOpenedEvent"] | components["schemas"]["ChannelEmailClickedEvent"] | components["schemas"]["ChannelEmailReceivedEvent"] | components["schemas"]["ChannelVoicemailStatusEvent"];
26403
26657
  /** WorldDashboardResponse */
26404
26658
  WorldDashboardResponse: {
26405
26659
  /** Avg Confidence */
@@ -32429,6 +32683,42 @@ export interface operations {
32429
32683
  };
32430
32684
  };
32431
32685
  };
32686
+ switch_conversation_channel_v1__workspace_id__conversations__conversation_id__channel_post: {
32687
+ parameters: {
32688
+ query?: never;
32689
+ header?: never;
32690
+ path: {
32691
+ workspace_id: string;
32692
+ conversation_id: string;
32693
+ };
32694
+ cookie?: never;
32695
+ };
32696
+ requestBody: {
32697
+ content: {
32698
+ "application/json": components["schemas"]["SwitchChannelRequest"];
32699
+ };
32700
+ };
32701
+ responses: {
32702
+ /** @description Successful Response */
32703
+ 200: {
32704
+ headers: {
32705
+ [name: string]: unknown;
32706
+ };
32707
+ content: {
32708
+ "application/json": components["schemas"]["ConversationDetail"];
32709
+ };
32710
+ };
32711
+ /** @description Validation Error */
32712
+ 422: {
32713
+ headers: {
32714
+ [name: string]: unknown;
32715
+ };
32716
+ content: {
32717
+ "application/json": components["schemas"]["HTTPValidationError"];
32718
+ };
32719
+ };
32720
+ };
32721
+ };
32432
32722
  create_turn_v1__workspace_id__conversations__conversation_id__turns_post: {
32433
32723
  parameters: {
32434
32724
  query?: {
@@ -35844,6 +36134,77 @@ export interface operations {
35844
36134
  };
35845
36135
  };
35846
36136
  };
36137
+ list_intake_materializations_v1__workspace_id__intake_materializations_get: {
36138
+ parameters: {
36139
+ query?: {
36140
+ limit?: number;
36141
+ continuation_token?: number;
36142
+ sort_by?: string;
36143
+ search?: string | null;
36144
+ };
36145
+ header?: never;
36146
+ path: {
36147
+ workspace_id: string;
36148
+ };
36149
+ cookie?: never;
36150
+ };
36151
+ requestBody?: never;
36152
+ responses: {
36153
+ /** @description Successful Response */
36154
+ 200: {
36155
+ headers: {
36156
+ [name: string]: unknown;
36157
+ };
36158
+ content: {
36159
+ "application/json": components["schemas"]["PaginatedResponse_MaterializationRow_"];
36160
+ };
36161
+ };
36162
+ /** @description Validation Error */
36163
+ 422: {
36164
+ headers: {
36165
+ [name: string]: unknown;
36166
+ };
36167
+ content: {
36168
+ "application/json": components["schemas"]["HTTPValidationError"];
36169
+ };
36170
+ };
36171
+ };
36172
+ };
36173
+ materialize_intake_v1__workspace_id__intake_materialize_post: {
36174
+ parameters: {
36175
+ query?: never;
36176
+ header?: never;
36177
+ path: {
36178
+ workspace_id: string;
36179
+ };
36180
+ cookie?: never;
36181
+ };
36182
+ requestBody?: {
36183
+ content: {
36184
+ "application/json": components["schemas"]["MaterializeRequest"] | null;
36185
+ };
36186
+ };
36187
+ responses: {
36188
+ /** @description Successful Response */
36189
+ 202: {
36190
+ headers: {
36191
+ [name: string]: unknown;
36192
+ };
36193
+ content: {
36194
+ "application/json": components["schemas"]["MaterializeResponse"];
36195
+ };
36196
+ };
36197
+ /** @description Validation Error */
36198
+ 422: {
36199
+ headers: {
36200
+ [name: string]: unknown;
36201
+ };
36202
+ content: {
36203
+ "application/json": components["schemas"]["HTTPValidationError"];
36204
+ };
36205
+ };
36206
+ };
36207
+ };
35847
36208
  register_intake_schema_v1__workspace_id__intake_schema_register_post: {
35848
36209
  parameters: {
35849
36210
  query?: never;
@@ -40868,7 +41229,9 @@ export interface operations {
40868
41229
  };
40869
41230
  get_fleet_status_v1__workspace_id__sessions_fleet_status_get: {
40870
41231
  parameters: {
40871
- query?: never;
41232
+ query?: {
41233
+ fleet?: "voice" | "tool-runner";
41234
+ };
40872
41235
  header?: never;
40873
41236
  path: {
40874
41237
  workspace_id: string;
@@ -40886,6 +41249,15 @@ export interface operations {
40886
41249
  "application/json": components["schemas"]["FleetStatusResponse"];
40887
41250
  };
40888
41251
  };
41252
+ /** @description Validation Error */
41253
+ 422: {
41254
+ headers: {
41255
+ [name: string]: unknown;
41256
+ };
41257
+ content: {
41258
+ "application/json": components["schemas"]["HTTPValidationError"];
41259
+ };
41260
+ };
40889
41261
  };
40890
41262
  };
40891
41263
  start_text_session_v1__workspace_id__sessions_start_post: {
@@ -44774,7 +45146,7 @@ export interface operations {
44774
45146
  };
44775
45147
  };
44776
45148
  };
44777
- "create-use-case": {
45149
+ "list-owned-use-cases": {
44778
45150
  parameters: {
44779
45151
  query?: never;
44780
45152
  header?: never;
@@ -44783,19 +45155,15 @@ export interface operations {
44783
45155
  };
44784
45156
  cookie?: never;
44785
45157
  };
44786
- requestBody: {
44787
- content: {
44788
- "application/json": components["schemas"]["VoiceUseCaseRequest"] | components["schemas"]["EmailUseCaseRequest"];
44789
- };
44790
- };
45158
+ requestBody?: never;
44791
45159
  responses: {
44792
45160
  /** @description Successful Response */
44793
- 201: {
45161
+ 200: {
44794
45162
  headers: {
44795
45163
  [name: string]: unknown;
44796
45164
  };
44797
45165
  content: {
44798
- "application/json": components["schemas"]["UseCaseResponse"];
45166
+ "application/json": components["schemas"]["OwnedUseCasesResponse"];
44799
45167
  };
44800
45168
  };
44801
45169
  /** @description Insufficient permissions. */
@@ -44805,15 +45173,38 @@ export interface operations {
44805
45173
  };
44806
45174
  content?: never;
44807
45175
  };
44808
- /** @description Setup not found. */
44809
- 404: {
45176
+ };
45177
+ };
45178
+ "get-use-case-ownership": {
45179
+ parameters: {
45180
+ query?: never;
45181
+ header?: never;
45182
+ path: {
45183
+ workspace_id: string;
45184
+ use_case_id: string;
45185
+ };
45186
+ cookie?: never;
45187
+ };
45188
+ requestBody?: never;
45189
+ responses: {
45190
+ /** @description Successful Response */
45191
+ 200: {
45192
+ headers: {
45193
+ [name: string]: unknown;
45194
+ };
45195
+ content: {
45196
+ "application/json": components["schemas"]["OwnershipResponse"];
45197
+ };
45198
+ };
45199
+ /** @description Insufficient permissions. */
45200
+ 403: {
44810
45201
  headers: {
44811
45202
  [name: string]: unknown;
44812
45203
  };
44813
45204
  content?: never;
44814
45205
  };
44815
- /** @description Use case already exists or setup not approved. */
44816
- 409: {
45206
+ /** @description Use case not found. */
45207
+ 404: {
44817
45208
  headers: {
44818
45209
  [name: string]: unknown;
44819
45210
  };
@@ -44828,23 +45219,62 @@ export interface operations {
44828
45219
  "application/json": components["schemas"]["HTTPValidationError"];
44829
45220
  };
44830
45221
  };
44831
- /** @description Channel manager unavailable. */
44832
- 502: {
45222
+ };
45223
+ };
45224
+ "assign-use-case-ownership": {
45225
+ parameters: {
45226
+ query?: never;
45227
+ header?: never;
45228
+ path: {
45229
+ workspace_id: string;
45230
+ use_case_id: string;
45231
+ };
45232
+ cookie?: never;
45233
+ };
45234
+ requestBody?: never;
45235
+ responses: {
45236
+ /** @description Successful Response */
45237
+ 200: {
45238
+ headers: {
45239
+ [name: string]: unknown;
45240
+ };
45241
+ content: {
45242
+ "application/json": components["schemas"]["OwnershipResponse"];
45243
+ };
45244
+ };
45245
+ /** @description Insufficient permissions. */
45246
+ 403: {
44833
45247
  headers: {
44834
45248
  [name: string]: unknown;
44835
45249
  };
44836
45250
  content?: never;
44837
45251
  };
44838
- /** @description Channel manager timed out. */
44839
- 504: {
45252
+ /** @description Use case not found. */
45253
+ 404: {
45254
+ headers: {
45255
+ [name: string]: unknown;
45256
+ };
45257
+ content?: never;
45258
+ };
45259
+ /** @description Use case is owned by another workspace. */
45260
+ 409: {
44840
45261
  headers: {
44841
45262
  [name: string]: unknown;
44842
45263
  };
44843
45264
  content?: never;
44844
45265
  };
45266
+ /** @description Validation Error */
45267
+ 422: {
45268
+ headers: {
45269
+ [name: string]: unknown;
45270
+ };
45271
+ content: {
45272
+ "application/json": components["schemas"]["HTTPValidationError"];
45273
+ };
45274
+ };
44845
45275
  };
44846
45276
  };
44847
- "delete-use-case": {
45277
+ "release-use-case-ownership": {
44848
45278
  parameters: {
44849
45279
  query?: never;
44850
45280
  header?: never;
@@ -44877,7 +45307,7 @@ export interface operations {
44877
45307
  };
44878
45308
  content?: never;
44879
45309
  };
44880
- /** @description Use case is bound to a service, or still has active phone assignments. */
45310
+ /** @description Use case is bound to a service; unbind it first. */
44881
45311
  409: {
44882
45312
  headers: {
44883
45313
  [name: string]: unknown;
@@ -44893,20 +45323,6 @@ export interface operations {
44893
45323
  "application/json": components["schemas"]["HTTPValidationError"];
44894
45324
  };
44895
45325
  };
44896
- /** @description Channel manager unavailable. */
44897
- 502: {
44898
- headers: {
44899
- [name: string]: unknown;
44900
- };
44901
- content?: never;
44902
- };
44903
- /** @description Channel manager timed out. */
44904
- 504: {
44905
- headers: {
44906
- [name: string]: unknown;
44907
- };
44908
- content?: never;
44909
- };
44910
45326
  };
44911
45327
  };
44912
45328
  "get-use-case-service-binding": {