@amigo-ai/platform-sdk 0.69.0 → 0.71.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.
@@ -1547,7 +1547,7 @@ export interface paths {
1547
1547
  put?: never;
1548
1548
  /**
1549
1549
  * Create an outbound call
1550
- * @description Initiate an outbound voice call from a workspace phone number. Provide either phone_from (direct caller ID) or use_case_id (channel-manager selects the optimal number). Supports idempotency via the idempotency_key field.
1550
+ * @description Initiate an outbound voice call from a workspace phone number. channel-manager selects the optimal number for the given use_case_id. Supports idempotency via the idempotency_key field.
1551
1551
  */
1552
1552
  post: operations["create-outbound-call"];
1553
1553
  delete?: never;
@@ -2067,6 +2067,26 @@ export interface paths {
2067
2067
  patch?: never;
2068
2068
  trace?: never;
2069
2069
  };
2070
+ "/v1/{workspace_id}/conversations/{conversation_id}/approval": {
2071
+ parameters: {
2072
+ query?: never;
2073
+ header?: never;
2074
+ path?: never;
2075
+ cookie?: never;
2076
+ };
2077
+ get?: never;
2078
+ put?: never;
2079
+ /**
2080
+ * Approve or reject a parked write in your own conversation (external-user self-approval)
2081
+ * @description Lets the external user who owns a conversation approve or reject a write that the agent paused for their confirmation. Only the conversation's own external user may call this; it requires the `conversations:approve_own` scope.
2082
+ */
2083
+ post: operations["decide_conversation_approval_v1__workspace_id__conversations__conversation_id__approval_post"];
2084
+ delete?: never;
2085
+ options?: never;
2086
+ head?: never;
2087
+ patch?: never;
2088
+ trace?: never;
2089
+ };
2070
2090
  "/v1/{workspace_id}/conversations/{conversation_id}/turns": {
2071
2091
  parameters: {
2072
2092
  query?: never;
@@ -2498,6 +2518,78 @@ export interface paths {
2498
2518
  patch?: never;
2499
2519
  trace?: never;
2500
2520
  };
2521
+ "/v1/{workspace_id}/external-role-assignments": {
2522
+ parameters: {
2523
+ query?: never;
2524
+ header?: never;
2525
+ path?: never;
2526
+ cookie?: never;
2527
+ };
2528
+ /** List External Role Assignments */
2529
+ get: operations["list-external-role-assignments"];
2530
+ /** Upsert External Role Assignment */
2531
+ put: operations["upsert-external-role-assignment"];
2532
+ post?: never;
2533
+ delete?: never;
2534
+ options?: never;
2535
+ head?: never;
2536
+ patch?: never;
2537
+ trace?: never;
2538
+ };
2539
+ "/v1/{workspace_id}/external-role-assignments/{assignment_id}": {
2540
+ parameters: {
2541
+ query?: never;
2542
+ header?: never;
2543
+ path?: never;
2544
+ cookie?: never;
2545
+ };
2546
+ /** Get External Role Assignment */
2547
+ get: operations["get-external-role-assignment"];
2548
+ put?: never;
2549
+ post?: never;
2550
+ /** Delete External Role Assignment */
2551
+ delete: operations["delete-external-role-assignment"];
2552
+ options?: never;
2553
+ head?: never;
2554
+ patch?: never;
2555
+ trace?: never;
2556
+ };
2557
+ "/v1/{workspace_id}/external-roles": {
2558
+ parameters: {
2559
+ query?: never;
2560
+ header?: never;
2561
+ path?: never;
2562
+ cookie?: never;
2563
+ };
2564
+ /** List External Roles */
2565
+ get: operations["list-external-roles"];
2566
+ put?: never;
2567
+ /** Create External Role */
2568
+ post: operations["create-external-role"];
2569
+ delete?: never;
2570
+ options?: never;
2571
+ head?: never;
2572
+ patch?: never;
2573
+ trace?: never;
2574
+ };
2575
+ "/v1/{workspace_id}/external-roles/{role_id}": {
2576
+ parameters: {
2577
+ query?: never;
2578
+ header?: never;
2579
+ path?: never;
2580
+ cookie?: never;
2581
+ };
2582
+ /** Get External Role */
2583
+ get: operations["get-external-role"];
2584
+ put?: never;
2585
+ post?: never;
2586
+ /** Delete External Role */
2587
+ delete: operations["delete-external-role"];
2588
+ options?: never;
2589
+ head?: never;
2590
+ patch?: never;
2591
+ trace?: never;
2592
+ };
2501
2593
  "/v1/{workspace_id}/fhir/import": {
2502
2594
  parameters: {
2503
2595
  query?: never;
@@ -4195,7 +4287,7 @@ export interface paths {
4195
4287
  };
4196
4288
  /**
4197
4289
  * Entity resolution metrics
4198
- * @description Same-as merge counts and entity resolution loop status.
4290
+ * @description Historical same_as merge-edge counts (written by the pre-SDP resolver; merge detection now lives in the Databricks pipeline — new edges are not produced) and entity resolution loop status.
4199
4291
  */
4200
4292
  get: operations["get-entity-resolution"];
4201
4293
  put?: never;
@@ -4845,6 +4937,45 @@ export interface paths {
4845
4937
  patch?: never;
4846
4938
  trace?: never;
4847
4939
  };
4940
+ "/v1/{workspace_id}/role-grants": {
4941
+ parameters: {
4942
+ query?: never;
4943
+ header?: never;
4944
+ path?: never;
4945
+ cookie?: never;
4946
+ };
4947
+ /** List Role Grants */
4948
+ get: operations["list-role-grants"];
4949
+ put?: never;
4950
+ /** Create Role Grant */
4951
+ post: operations["create-role-grant"];
4952
+ delete?: never;
4953
+ options?: never;
4954
+ head?: never;
4955
+ patch?: never;
4956
+ trace?: never;
4957
+ };
4958
+ "/v1/{workspace_id}/role-grants/{grant_id}": {
4959
+ parameters: {
4960
+ query?: never;
4961
+ header?: never;
4962
+ path?: never;
4963
+ cookie?: never;
4964
+ };
4965
+ /** Get Role Grant */
4966
+ get: operations["get-role-grant"];
4967
+ put?: never;
4968
+ post?: never;
4969
+ /**
4970
+ * Delete Role Grant
4971
+ * @description Supersede an active grant (immutable history) — never a physical delete.
4972
+ */
4973
+ delete: operations["supersede-role-grant"];
4974
+ options?: never;
4975
+ head?: never;
4976
+ patch?: never;
4977
+ trace?: never;
4978
+ };
4848
4979
  "/v1/{workspace_id}/scheduling-rule-sets": {
4849
4980
  parameters: {
4850
4981
  query?: never;
@@ -6313,7 +6444,9 @@ export interface paths {
6313
6444
  * Get Surface
6314
6445
  * @description Get a surface by ID.
6315
6446
  *
6316
- * Returns the surface spec and current lifecycle status.
6447
+ * Returns the surface spec and current lifecycle status. Also mints the
6448
+ * patient-facing ``url`` so operators can copy/share the link from the read
6449
+ * view (the token isn't stored, so it's re-minted on each read).
6317
6450
  *
6318
6451
  * Permissions: viewer, member, admin, owner (surfaces:read)
6319
6452
  */
@@ -6865,7 +6998,7 @@ export interface paths {
6865
6998
  };
6866
6999
  /**
6867
7000
  * Get Entity Duplicates
6868
- * @description Suspected duplicate entities — same_as edges sorted by confidence.
7001
+ * @description Suspected duplicate entities — historical same_as merge edges sorted by confidence (written by the pre-SDP resolver; merge detection now lives in the Databricks pipeline — new edges are not produced).
6869
7002
  */
6870
7003
  get: operations["get-entity-duplicates"];
6871
7004
  put?: never;
@@ -6985,7 +7118,7 @@ export interface paths {
6985
7118
  };
6986
7119
  /**
6987
7120
  * Get Entity Graph
6988
- * @description Entity relationship graph — one level of edges with neighbor metadata.
7121
+ * @description Entity relationship graph — one level of edges with neighbor metadata. same_as edges are historical merge edges (written by the pre-SDP resolver; merge detection now lives in the Databricks pipeline — new edges are not produced).
6989
7122
  */
6990
7123
  get: operations["get-entity-graph"];
6991
7124
  put?: never;
@@ -7025,7 +7158,7 @@ export interface paths {
7025
7158
  };
7026
7159
  /**
7027
7160
  * Get merged entities (same_as links)
7028
- * @description Returns entities linked via same_as edges — cross-source merges where different data sources refer to the same real-world entity.
7161
+ * @description Returns entities linked via same_as edges — historical merge edges where different data sources refer to the same real-world entity (written by the pre-SDP resolver; merge detection now lives in the Databricks pipeline — new edges are not produced).
7029
7162
  */
7030
7163
  get: operations["merged-entities"];
7031
7164
  put?: never;
@@ -7045,7 +7178,7 @@ export interface paths {
7045
7178
  };
7046
7179
  /**
7047
7180
  * Get Entity Provenance
7048
- * @description Data lineage for an entity — sources, confidence history, merge history.
7181
+ * @description Data lineage for an entity — sources, confidence history, merge history (historical same_as edges from the pre-SDP resolver — new edges are not produced).
7049
7182
  */
7050
7183
  get: operations["get-entity-provenance"];
7051
7184
  put?: never;
@@ -9968,6 +10101,19 @@ export interface components {
9968
10101
  */
9969
10102
  workspace_id: string;
9970
10103
  };
10104
+ /**
10105
+ * ConversationApprovalRequest
10106
+ * @description An external user's decision on a parked, approval-gated write in their own conversation.
10107
+ */
10108
+ ConversationApprovalRequest: {
10109
+ /**
10110
+ * Decision
10111
+ * @enum {string}
10112
+ */
10113
+ decision: "approve" | "reject";
10114
+ /** Reason */
10115
+ reason?: string | null;
10116
+ };
9971
10117
  /** ConversationConfig */
9972
10118
  ConversationConfig: {
9973
10119
  /** Agent Id */
@@ -10518,9 +10664,8 @@ export interface components {
10518
10664
  * CreateOutboundCallRequest
10519
10665
  * @description Request body for creating an outbound call.
10520
10666
  *
10521
- * Exactly one of ``phone_from`` or ``use_case_id`` is required.
10522
- * When ``use_case_id`` is provided, channel-manager selects the optimal
10523
- * outbound phone number for that use case.
10667
+ * ``use_case_id`` is required: channel-manager selects the optimal outbound
10668
+ * phone number bound to that use case (the sole caller-ID resolution path).
10524
10669
  */
10525
10670
  CreateOutboundCallRequest: {
10526
10671
  /**
@@ -10554,8 +10699,6 @@ export interface components {
10554
10699
  * @description Patient entity UUID in the world model. Must exist in workspace as a person entity. Provide either patient_entity_id or patient_canonical_id.
10555
10700
  */
10556
10701
  patient_entity_id?: string | null;
10557
- /** @description Caller ID phone number in E.164 format. Must belong to this workspace. */
10558
- phone_from?: components["schemas"]["PhoneE164"] | null;
10559
10702
  /** @description Destination phone number in E.164 format. */
10560
10703
  phone_to: components["schemas"]["PhoneE164"];
10561
10704
  /** @description Why the call is being made (e.g. appointment_reminder, follow_up, lab_results). */
@@ -10577,9 +10720,10 @@ export interface components {
10577
10720
  tags?: string[] | null;
10578
10721
  /**
10579
10722
  * Use Case Id
10580
- * @description Channel-manager use case ID. When provided, channel-manager selects the optimal outbound phone number for this use case.
10723
+ * Format: uuid
10724
+ * @description Channel-manager use case ID. channel-manager selects the optimal outbound phone number bound to this use case.
10581
10725
  */
10582
- use_case_id?: string | null;
10726
+ use_case_id: string;
10583
10727
  };
10584
10728
  /**
10585
10729
  * CreateOutboundCallResponse
@@ -11016,6 +11160,10 @@ export interface components {
11016
11160
  body_encoding: "json" | "form";
11017
11161
  /** Exchange Url */
11018
11162
  exchange_url: string;
11163
+ /** Identity Bindings */
11164
+ identity_bindings: {
11165
+ [key: string]: string;
11166
+ };
11019
11167
  /** Param Body Fields */
11020
11168
  param_body_fields: {
11021
11169
  [key: string]: components["schemas"]["ParamValueDict"];
@@ -11062,6 +11210,17 @@ export interface components {
11062
11210
  * Format: uri
11063
11211
  */
11064
11212
  exchange_url: string;
11213
+ /**
11214
+ * Identity Bindings
11215
+ * @description Maps a declared ``param_name`` to the verified session-principal attribute that supplies it
11216
+ * at dispatch. A bound param is dropped from the LLM-facing tool schema and injected from the
11217
+ * ``SessionPrincipal`` (never model-supplied), closing the per-user-identity impersonation hole.
11218
+ * Keys MUST reference a ``param_name`` declared on ``param_headers`` / ``param_body_fields``.
11219
+ * @default {}
11220
+ */
11221
+ identity_bindings?: {
11222
+ [key: string]: "principal.subject_key" | "principal.subject_id";
11223
+ };
11065
11224
  /**
11066
11225
  * Param Body Fields
11067
11226
  * @description Per-request params routed to body fields on the exchange request, keyed by RFC 6901 JSON Pointer.
@@ -12779,11 +12938,6 @@ export interface components {
12779
12938
  last_tick_at?: string | null;
12780
12939
  /** Loop Status */
12781
12940
  loop_status: string;
12782
- /**
12783
- * Merges Last Tick
12784
- * @default 0
12785
- */
12786
- merges_last_tick?: number;
12787
12941
  /** Recent Merges 24H */
12788
12942
  recent_merges_24h: number;
12789
12943
  /** Total Same As Edges */
@@ -13613,6 +13767,80 @@ export interface components {
13613
13767
  /** Name */
13614
13768
  name?: string;
13615
13769
  };
13770
+ /** ExternalRoleAssignmentItem */
13771
+ ExternalRoleAssignmentItem: {
13772
+ /**
13773
+ * Created At
13774
+ * Format: date-time
13775
+ */
13776
+ created_at: string;
13777
+ /** Display Name */
13778
+ display_name?: string | null;
13779
+ /**
13780
+ * Entity Id
13781
+ * Format: uuid
13782
+ */
13783
+ entity_id: string;
13784
+ /** External Subject Id */
13785
+ external_subject_id?: string | null;
13786
+ /** External Subject Key */
13787
+ external_subject_key: string;
13788
+ /**
13789
+ * Id
13790
+ * Format: uuid
13791
+ */
13792
+ id: string;
13793
+ /** Last Verified At */
13794
+ last_verified_at?: string | null;
13795
+ /**
13796
+ * Provisioned Via
13797
+ * @enum {string}
13798
+ */
13799
+ provisioned_via: "roster_sync" | "jit";
13800
+ /** Roles */
13801
+ roles: string[];
13802
+ /** Roles Verified */
13803
+ roles_verified: boolean;
13804
+ /** Source */
13805
+ source: string;
13806
+ /**
13807
+ * Status
13808
+ * @enum {string}
13809
+ */
13810
+ status: "active" | "suspended" | "revoked";
13811
+ /**
13812
+ * Updated At
13813
+ * Format: date-time
13814
+ */
13815
+ updated_at: string;
13816
+ };
13817
+ /**
13818
+ * ExternalRoleItem
13819
+ * @description Wire shape for read + create responses.
13820
+ */
13821
+ ExternalRoleItem: {
13822
+ /**
13823
+ * Created At
13824
+ * Format: date-time
13825
+ */
13826
+ created_at: string;
13827
+ /** Description */
13828
+ description?: string | null;
13829
+ /** External Name */
13830
+ external_name: string;
13831
+ /**
13832
+ * Id
13833
+ * Format: uuid
13834
+ */
13835
+ id: string;
13836
+ /** Name */
13837
+ name: string;
13838
+ /**
13839
+ * Updated At
13840
+ * Format: date-time
13841
+ */
13842
+ updated_at: string;
13843
+ };
13616
13844
  ExternalSystemString: string;
13617
13845
  ExternalValueString: string;
13618
13846
  /**
@@ -19328,6 +19556,37 @@ export interface components {
19328
19556
  */
19329
19557
  level?: "low" | "medium" | "high" | "critical";
19330
19558
  };
19559
+ /** RoleGrantItem */
19560
+ RoleGrantItem: {
19561
+ access: components["schemas"]["_Access"];
19562
+ /** Changed By */
19563
+ changed_by?: string | null;
19564
+ /**
19565
+ * Created At
19566
+ * Format: date-time
19567
+ */
19568
+ created_at: string;
19569
+ /**
19570
+ * Id
19571
+ * Format: uuid
19572
+ */
19573
+ id: string;
19574
+ /** Param Binding */
19575
+ param_binding?: string | null;
19576
+ /** Resource Key */
19577
+ resource_key: string;
19578
+ resource_type: components["schemas"]["_ResourceType"];
19579
+ /**
19580
+ * Role Id
19581
+ * Format: uuid
19582
+ */
19583
+ role_id: string;
19584
+ /**
19585
+ * Status
19586
+ * @enum {string}
19587
+ */
19588
+ status: "active" | "superseded";
19589
+ };
19331
19590
  /** RotateApiKeyRequest */
19332
19591
  RotateApiKeyRequest: {
19333
19592
  /** Duration Days */
@@ -19713,10 +19972,10 @@ export interface components {
19713
19972
  * - ``EscalationPolicy.ForwardAction`` — engine-fired escalation with no
19714
19973
  * overrides falls through to the same path.
19715
19974
  *
19716
- * Distinct from ``platform_lib.phone_numbers.ForwardingConfig`` (per-phone
19717
- * legacy shape with ``enabled``); per-service forwarding is a binary
19718
- * presence set means tier 3 resolves to it, None means tier 3 has no
19719
- * static target.
19975
+ * Per-service forwarding is a binary presence — set means tier 3 resolves
19976
+ * to it, None means tier 3 has no static target. (The legacy per-phone
19977
+ * forwarding shape, with its own ``enabled`` flag, was removed alongside
19978
+ * the legacy Twilio phone path.)
19720
19979
  */
19721
19980
  ServiceForwardingConfig: {
19722
19981
  forward_to: components["schemas"]["PhoneE164"];
@@ -22121,6 +22380,8 @@ export interface components {
22121
22380
  } | null;
22122
22381
  /** Title */
22123
22382
  title?: string | null;
22383
+ /** Url */
22384
+ url?: string | null;
22124
22385
  /** Use Case Id */
22125
22386
  use_case_id?: string | null;
22126
22387
  };
@@ -24280,6 +24541,34 @@ export interface components {
24280
24541
  */
24281
24542
  size_bytes: number;
24282
24543
  };
24544
+ /** UpsertRequest */
24545
+ UpsertRequest: {
24546
+ /** Display Name */
24547
+ display_name?: string | null;
24548
+ /**
24549
+ * Entity Id
24550
+ * Format: uuid
24551
+ */
24552
+ entity_id: string;
24553
+ /** External Subject Id */
24554
+ external_subject_id?: string | null;
24555
+ /** External Subject Key */
24556
+ external_subject_key: string;
24557
+ /**
24558
+ * Provisioned Via
24559
+ * @enum {string}
24560
+ */
24561
+ provisioned_via: "roster_sync" | "jit";
24562
+ /** Roles */
24563
+ roles?: string[];
24564
+ /**
24565
+ * Roles Verified
24566
+ * @default false
24567
+ */
24568
+ roles_verified?: boolean;
24569
+ /** Source */
24570
+ source: string;
24571
+ };
24283
24572
  /** UpsertVersionSetRequest */
24284
24573
  UpsertVersionSetRequest: {
24285
24574
  version_set: components["schemas"]["VersionSet-Input"];
@@ -24761,6 +25050,8 @@ export interface components {
24761
25050
  sensitive_topics?: string[] | null;
24762
25051
  /** Speed */
24763
25052
  speed?: number | null;
25053
+ /** Stt Provider */
25054
+ stt_provider?: ("deepgram" | "openai" | "cartesia") | null;
24764
25055
  /** Tone */
24765
25056
  tone?: string | null;
24766
25057
  /** Transcript Correction Enabled */
@@ -24799,6 +25090,8 @@ export interface components {
24799
25090
  sensitive_topics: string[];
24800
25091
  /** Speed */
24801
25092
  speed: number | null;
25093
+ /** Stt Provider */
25094
+ stt_provider: ("deepgram" | "openai" | "cartesia") | null;
24802
25095
  /** Tone */
24803
25096
  tone: string | null;
24804
25097
  /** Transcript Correction Enabled */
@@ -25085,6 +25378,8 @@ export interface components {
25085
25378
  /** Success */
25086
25379
  success: boolean;
25087
25380
  };
25381
+ /** @enum {string} */
25382
+ _Access: "read" | "write";
25088
25383
  /**
25089
25384
  * _DayHours
25090
25385
  * @description Open-hours window for one weekday. Times in 24h ``HH:MM`` form,
@@ -25096,8 +25391,8 @@ export interface components {
25096
25391
  /** Start */
25097
25392
  start: string;
25098
25393
  };
25099
- /** @constant */
25100
- _SortField: "deployed_at";
25394
+ /** @enum {string} */
25395
+ _ResourceType: "integration_endpoint" | "skill" | "kb_scope";
25101
25396
  _ToolMockKey: string;
25102
25397
  _ToolMockValue: string;
25103
25398
  /**
@@ -25354,6 +25649,37 @@ export interface components {
25354
25649
  /** Updated At */
25355
25650
  updated_at: string;
25356
25651
  };
25652
+ /** ListResponse */
25653
+ src__routes__external_role_assignments__ListResponse: {
25654
+ /** Continuation Token */
25655
+ continuation_token?: unknown;
25656
+ /** Has More */
25657
+ has_more: boolean;
25658
+ /** Items */
25659
+ items: components["schemas"]["ExternalRoleAssignmentItem"][];
25660
+ };
25661
+ /** @enum {string} */
25662
+ src__routes__external_role_assignments___SortField: "created_at" | "external_subject_key";
25663
+ /** CreateRequest */
25664
+ src__routes__external_roles__CreateRequest: {
25665
+ /** Description */
25666
+ description?: string | null;
25667
+ /** External Name */
25668
+ external_name: string;
25669
+ /** Name */
25670
+ name: string;
25671
+ };
25672
+ /** ListResponse */
25673
+ src__routes__external_roles__ListResponse: {
25674
+ /** Continuation Token */
25675
+ continuation_token?: unknown;
25676
+ /** Has More */
25677
+ has_more: boolean;
25678
+ /** Items */
25679
+ items: components["schemas"]["ExternalRoleItem"][];
25680
+ };
25681
+ /** @constant */
25682
+ src__routes__external_roles___SortField: "created_at";
25357
25683
  /**
25358
25684
  * Request
25359
25685
  * @description Add a new endpoint to a REST integration (V186 flat shape).
@@ -25750,6 +26076,31 @@ export interface components {
25750
26076
  */
25751
26077
  workspace_id: string;
25752
26078
  };
26079
+ /** CreateRequest */
26080
+ src__routes__role_grants__CreateRequest: {
26081
+ access: components["schemas"]["_Access"];
26082
+ /** Param Binding */
26083
+ param_binding?: string | null;
26084
+ /** Resource Key */
26085
+ resource_key: string;
26086
+ resource_type: components["schemas"]["_ResourceType"];
26087
+ /**
26088
+ * Role Id
26089
+ * Format: uuid
26090
+ */
26091
+ role_id: string;
26092
+ };
26093
+ /** ListResponse */
26094
+ src__routes__role_grants__ListResponse: {
26095
+ /** Continuation Token */
26096
+ continuation_token?: unknown;
26097
+ /** Has More */
26098
+ has_more: boolean;
26099
+ /** Items */
26100
+ items: components["schemas"]["RoleGrantItem"][];
26101
+ };
26102
+ /** @constant */
26103
+ src__routes__role_grants___SortField: "created_at";
25753
26104
  /**
25754
26105
  * Request
25755
26106
  * @description Create body — the authored shape of a new workspace data query.
@@ -25857,6 +26208,8 @@ export interface components {
25857
26208
  /** Timeout Ms */
25858
26209
  timeout_ms: number;
25859
26210
  };
26211
+ /** @constant */
26212
+ src__routes__workspace_data_queries__list_workspace_data_queries___SortField: "deployed_at";
25860
26213
  /**
25861
26214
  * Request
25862
26215
  * @description PATCH body — every field optional. Present ⇒ overwrite; absent ⇒ keep.
@@ -29772,13 +30125,6 @@ export interface operations {
29772
30125
  };
29773
30126
  content?: never;
29774
30127
  };
29775
- /** @description phone_from does not belong to this workspace */
29776
- 403: {
29777
- headers: {
29778
- [name: string]: unknown;
29779
- };
29780
- content?: never;
29781
- };
29782
30128
  /** @description No phone number available for use case */
29783
30129
  404: {
29784
30130
  headers: {
@@ -31430,6 +31776,61 @@ export interface operations {
31430
31776
  };
31431
31777
  };
31432
31778
  };
31779
+ decide_conversation_approval_v1__workspace_id__conversations__conversation_id__approval_post: {
31780
+ parameters: {
31781
+ query?: never;
31782
+ header?: never;
31783
+ path: {
31784
+ workspace_id: string;
31785
+ conversation_id: string;
31786
+ };
31787
+ cookie?: never;
31788
+ };
31789
+ requestBody: {
31790
+ content: {
31791
+ "application/json": components["schemas"]["ConversationApprovalRequest"];
31792
+ };
31793
+ };
31794
+ responses: {
31795
+ /** @description Successful Response */
31796
+ 204: {
31797
+ headers: {
31798
+ [name: string]: unknown;
31799
+ };
31800
+ content?: never;
31801
+ };
31802
+ /** @description Not an external_user token, or missing conversations:approve_own scope */
31803
+ 403: {
31804
+ headers: {
31805
+ [name: string]: unknown;
31806
+ };
31807
+ content?: never;
31808
+ };
31809
+ /** @description Conversation not found or not owned by the caller */
31810
+ 404: {
31811
+ headers: {
31812
+ [name: string]: unknown;
31813
+ };
31814
+ content?: never;
31815
+ };
31816
+ /** @description Validation Error */
31817
+ 422: {
31818
+ headers: {
31819
+ [name: string]: unknown;
31820
+ };
31821
+ content: {
31822
+ "application/json": components["schemas"]["HTTPValidationError"];
31823
+ };
31824
+ };
31825
+ /** @description Decision store temporarily unavailable — safe to retry */
31826
+ 503: {
31827
+ headers: {
31828
+ [name: string]: unknown;
31829
+ };
31830
+ content?: never;
31831
+ };
31832
+ };
31833
+ };
31433
31834
  create_turn_v1__workspace_id__conversations__conversation_id__turns_post: {
31434
31835
  parameters: {
31435
31836
  query?: {
@@ -32839,6 +33240,305 @@ export interface operations {
32839
33240
  };
32840
33241
  };
32841
33242
  };
33243
+ "list-external-role-assignments": {
33244
+ parameters: {
33245
+ query?: {
33246
+ sort_by?: string[];
33247
+ limit?: number;
33248
+ continuation_token?: unknown;
33249
+ };
33250
+ header?: never;
33251
+ path: {
33252
+ workspace_id: string;
33253
+ };
33254
+ cookie?: never;
33255
+ };
33256
+ requestBody?: never;
33257
+ responses: {
33258
+ /** @description Successful Response */
33259
+ 200: {
33260
+ headers: {
33261
+ [name: string]: unknown;
33262
+ };
33263
+ content: {
33264
+ "application/json": components["schemas"]["src__routes__external_role_assignments__ListResponse"];
33265
+ };
33266
+ };
33267
+ /** @description Validation Error */
33268
+ 422: {
33269
+ headers: {
33270
+ [name: string]: unknown;
33271
+ };
33272
+ content: {
33273
+ "application/json": components["schemas"]["HTTPValidationError"];
33274
+ };
33275
+ };
33276
+ };
33277
+ };
33278
+ "upsert-external-role-assignment": {
33279
+ parameters: {
33280
+ query?: never;
33281
+ header?: never;
33282
+ path: {
33283
+ workspace_id: string;
33284
+ };
33285
+ cookie?: never;
33286
+ };
33287
+ requestBody: {
33288
+ content: {
33289
+ "application/json": components["schemas"]["UpsertRequest"];
33290
+ };
33291
+ };
33292
+ responses: {
33293
+ /** @description Successful Response */
33294
+ 200: {
33295
+ headers: {
33296
+ [name: string]: unknown;
33297
+ };
33298
+ content: {
33299
+ "application/json": components["schemas"]["ExternalRoleAssignmentItem"];
33300
+ };
33301
+ };
33302
+ /** @description Validation Error */
33303
+ 422: {
33304
+ headers: {
33305
+ [name: string]: unknown;
33306
+ };
33307
+ content: {
33308
+ "application/json": components["schemas"]["HTTPValidationError"];
33309
+ };
33310
+ };
33311
+ };
33312
+ };
33313
+ "get-external-role-assignment": {
33314
+ parameters: {
33315
+ query?: never;
33316
+ header?: never;
33317
+ path: {
33318
+ workspace_id: string;
33319
+ assignment_id: string;
33320
+ };
33321
+ cookie?: never;
33322
+ };
33323
+ requestBody?: never;
33324
+ responses: {
33325
+ /** @description Successful Response */
33326
+ 200: {
33327
+ headers: {
33328
+ [name: string]: unknown;
33329
+ };
33330
+ content: {
33331
+ "application/json": components["schemas"]["ExternalRoleAssignmentItem"];
33332
+ };
33333
+ };
33334
+ /** @description Assignment not found */
33335
+ 404: {
33336
+ headers: {
33337
+ [name: string]: unknown;
33338
+ };
33339
+ content?: never;
33340
+ };
33341
+ /** @description Validation Error */
33342
+ 422: {
33343
+ headers: {
33344
+ [name: string]: unknown;
33345
+ };
33346
+ content: {
33347
+ "application/json": components["schemas"]["HTTPValidationError"];
33348
+ };
33349
+ };
33350
+ };
33351
+ };
33352
+ "delete-external-role-assignment": {
33353
+ parameters: {
33354
+ query?: never;
33355
+ header?: never;
33356
+ path: {
33357
+ workspace_id: string;
33358
+ assignment_id: string;
33359
+ };
33360
+ cookie?: never;
33361
+ };
33362
+ requestBody?: never;
33363
+ responses: {
33364
+ /** @description Successful Response */
33365
+ 204: {
33366
+ headers: {
33367
+ [name: string]: unknown;
33368
+ };
33369
+ content?: never;
33370
+ };
33371
+ /** @description Assignment not found */
33372
+ 404: {
33373
+ headers: {
33374
+ [name: string]: unknown;
33375
+ };
33376
+ content?: never;
33377
+ };
33378
+ /** @description Validation Error */
33379
+ 422: {
33380
+ headers: {
33381
+ [name: string]: unknown;
33382
+ };
33383
+ content: {
33384
+ "application/json": components["schemas"]["HTTPValidationError"];
33385
+ };
33386
+ };
33387
+ };
33388
+ };
33389
+ "list-external-roles": {
33390
+ parameters: {
33391
+ query?: {
33392
+ sort_by?: string[];
33393
+ limit?: number;
33394
+ continuation_token?: unknown;
33395
+ };
33396
+ header?: never;
33397
+ path: {
33398
+ workspace_id: string;
33399
+ };
33400
+ cookie?: never;
33401
+ };
33402
+ requestBody?: never;
33403
+ responses: {
33404
+ /** @description Successful Response */
33405
+ 200: {
33406
+ headers: {
33407
+ [name: string]: unknown;
33408
+ };
33409
+ content: {
33410
+ "application/json": components["schemas"]["src__routes__external_roles__ListResponse"];
33411
+ };
33412
+ };
33413
+ /** @description Validation Error */
33414
+ 422: {
33415
+ headers: {
33416
+ [name: string]: unknown;
33417
+ };
33418
+ content: {
33419
+ "application/json": components["schemas"]["HTTPValidationError"];
33420
+ };
33421
+ };
33422
+ };
33423
+ };
33424
+ "create-external-role": {
33425
+ parameters: {
33426
+ query?: never;
33427
+ header?: never;
33428
+ path: {
33429
+ workspace_id: string;
33430
+ };
33431
+ cookie?: never;
33432
+ };
33433
+ requestBody: {
33434
+ content: {
33435
+ "application/json": components["schemas"]["src__routes__external_roles__CreateRequest"];
33436
+ };
33437
+ };
33438
+ responses: {
33439
+ /** @description Successful Response */
33440
+ 201: {
33441
+ headers: {
33442
+ [name: string]: unknown;
33443
+ };
33444
+ content: {
33445
+ "application/json": components["schemas"]["ExternalRoleItem"];
33446
+ };
33447
+ };
33448
+ /** @description An external role with the given name already exists */
33449
+ 409: {
33450
+ headers: {
33451
+ [name: string]: unknown;
33452
+ };
33453
+ content?: never;
33454
+ };
33455
+ /** @description Validation Error */
33456
+ 422: {
33457
+ headers: {
33458
+ [name: string]: unknown;
33459
+ };
33460
+ content: {
33461
+ "application/json": components["schemas"]["HTTPValidationError"];
33462
+ };
33463
+ };
33464
+ };
33465
+ };
33466
+ "get-external-role": {
33467
+ parameters: {
33468
+ query?: never;
33469
+ header?: never;
33470
+ path: {
33471
+ workspace_id: string;
33472
+ role_id: string;
33473
+ };
33474
+ cookie?: never;
33475
+ };
33476
+ requestBody?: never;
33477
+ responses: {
33478
+ /** @description Successful Response */
33479
+ 200: {
33480
+ headers: {
33481
+ [name: string]: unknown;
33482
+ };
33483
+ content: {
33484
+ "application/json": components["schemas"]["ExternalRoleItem"];
33485
+ };
33486
+ };
33487
+ /** @description External role not found */
33488
+ 404: {
33489
+ headers: {
33490
+ [name: string]: unknown;
33491
+ };
33492
+ content?: never;
33493
+ };
33494
+ /** @description Validation Error */
33495
+ 422: {
33496
+ headers: {
33497
+ [name: string]: unknown;
33498
+ };
33499
+ content: {
33500
+ "application/json": components["schemas"]["HTTPValidationError"];
33501
+ };
33502
+ };
33503
+ };
33504
+ };
33505
+ "delete-external-role": {
33506
+ parameters: {
33507
+ query?: never;
33508
+ header?: never;
33509
+ path: {
33510
+ workspace_id: string;
33511
+ role_id: string;
33512
+ };
33513
+ cookie?: never;
33514
+ };
33515
+ requestBody?: never;
33516
+ responses: {
33517
+ /** @description Successful Response */
33518
+ 204: {
33519
+ headers: {
33520
+ [name: string]: unknown;
33521
+ };
33522
+ content?: never;
33523
+ };
33524
+ /** @description External role not found */
33525
+ 404: {
33526
+ headers: {
33527
+ [name: string]: unknown;
33528
+ };
33529
+ content?: never;
33530
+ };
33531
+ /** @description Validation Error */
33532
+ 422: {
33533
+ headers: {
33534
+ [name: string]: unknown;
33535
+ };
33536
+ content: {
33537
+ "application/json": components["schemas"]["HTTPValidationError"];
33538
+ };
33539
+ };
33540
+ };
33541
+ };
32842
33542
  "fhir-import": {
32843
33543
  parameters: {
32844
33544
  query?: never;
@@ -37878,6 +38578,160 @@ export interface operations {
37878
38578
  };
37879
38579
  };
37880
38580
  };
38581
+ "list-role-grants": {
38582
+ parameters: {
38583
+ query?: {
38584
+ sort_by?: string[];
38585
+ limit?: number;
38586
+ continuation_token?: unknown;
38587
+ status?: ("active" | "superseded") | null;
38588
+ };
38589
+ header?: never;
38590
+ path: {
38591
+ workspace_id: string;
38592
+ };
38593
+ cookie?: never;
38594
+ };
38595
+ requestBody?: never;
38596
+ responses: {
38597
+ /** @description Successful Response */
38598
+ 200: {
38599
+ headers: {
38600
+ [name: string]: unknown;
38601
+ };
38602
+ content: {
38603
+ "application/json": components["schemas"]["src__routes__role_grants__ListResponse"];
38604
+ };
38605
+ };
38606
+ /** @description Validation Error */
38607
+ 422: {
38608
+ headers: {
38609
+ [name: string]: unknown;
38610
+ };
38611
+ content: {
38612
+ "application/json": components["schemas"]["HTTPValidationError"];
38613
+ };
38614
+ };
38615
+ };
38616
+ };
38617
+ "create-role-grant": {
38618
+ parameters: {
38619
+ query?: never;
38620
+ header?: never;
38621
+ path: {
38622
+ workspace_id: string;
38623
+ };
38624
+ cookie?: never;
38625
+ };
38626
+ requestBody: {
38627
+ content: {
38628
+ "application/json": components["schemas"]["src__routes__role_grants__CreateRequest"];
38629
+ };
38630
+ };
38631
+ responses: {
38632
+ /** @description Successful Response */
38633
+ 201: {
38634
+ headers: {
38635
+ [name: string]: unknown;
38636
+ };
38637
+ content: {
38638
+ "application/json": components["schemas"]["RoleGrantItem"];
38639
+ };
38640
+ };
38641
+ /** @description An active grant for this (role, resource, access) already exists */
38642
+ 409: {
38643
+ headers: {
38644
+ [name: string]: unknown;
38645
+ };
38646
+ content?: never;
38647
+ };
38648
+ /** @description Validation Error */
38649
+ 422: {
38650
+ headers: {
38651
+ [name: string]: unknown;
38652
+ };
38653
+ content: {
38654
+ "application/json": components["schemas"]["HTTPValidationError"];
38655
+ };
38656
+ };
38657
+ };
38658
+ };
38659
+ "get-role-grant": {
38660
+ parameters: {
38661
+ query?: never;
38662
+ header?: never;
38663
+ path: {
38664
+ workspace_id: string;
38665
+ grant_id: string;
38666
+ };
38667
+ cookie?: never;
38668
+ };
38669
+ requestBody?: never;
38670
+ responses: {
38671
+ /** @description Successful Response */
38672
+ 200: {
38673
+ headers: {
38674
+ [name: string]: unknown;
38675
+ };
38676
+ content: {
38677
+ "application/json": components["schemas"]["RoleGrantItem"];
38678
+ };
38679
+ };
38680
+ /** @description Role grant not found */
38681
+ 404: {
38682
+ headers: {
38683
+ [name: string]: unknown;
38684
+ };
38685
+ content?: never;
38686
+ };
38687
+ /** @description Validation Error */
38688
+ 422: {
38689
+ headers: {
38690
+ [name: string]: unknown;
38691
+ };
38692
+ content: {
38693
+ "application/json": components["schemas"]["HTTPValidationError"];
38694
+ };
38695
+ };
38696
+ };
38697
+ };
38698
+ "supersede-role-grant": {
38699
+ parameters: {
38700
+ query?: never;
38701
+ header?: never;
38702
+ path: {
38703
+ workspace_id: string;
38704
+ grant_id: string;
38705
+ };
38706
+ cookie?: never;
38707
+ };
38708
+ requestBody?: never;
38709
+ responses: {
38710
+ /** @description Successful Response */
38711
+ 204: {
38712
+ headers: {
38713
+ [name: string]: unknown;
38714
+ };
38715
+ content?: never;
38716
+ };
38717
+ /** @description Active role grant not found */
38718
+ 404: {
38719
+ headers: {
38720
+ [name: string]: unknown;
38721
+ };
38722
+ content?: never;
38723
+ };
38724
+ /** @description Validation Error */
38725
+ 422: {
38726
+ headers: {
38727
+ [name: string]: unknown;
38728
+ };
38729
+ content: {
38730
+ "application/json": components["schemas"]["HTTPValidationError"];
38731
+ };
38732
+ };
38733
+ };
38734
+ };
37881
38735
  "list-scheduling-rule-sets": {
37882
38736
  parameters: {
37883
38737
  query?: {