amigo_sdk 0.64.0__py3-none-any.whl → 0.66.0__py3-none-any.whl

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.
@@ -1,14 +1,22 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: <stdin>
3
- # timestamp: 2025-11-14T21:52:42+00:00
3
+ # timestamp: 2025-12-01T20:34:59+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
7
7
  from datetime import timedelta
8
- from enum import Enum
8
+ from enum import Enum, IntEnum
9
9
  from typing import Any, Dict, List, Literal, Optional, Union
10
10
 
11
- from pydantic import AnyUrl, AwareDatetime, BaseModel, EmailStr, Field, RootModel
11
+ from pydantic import (
12
+ AnyUrl,
13
+ AwareDatetime,
14
+ BaseModel,
15
+ ConfigDict,
16
+ EmailStr,
17
+ Field,
18
+ RootModel,
19
+ )
12
20
 
13
21
 
14
22
  class ActionTooLongEvent(BaseModel):
@@ -499,20 +507,7 @@ class JumpbackStateTransitionLog(BaseModel):
499
507
  )
500
508
 
501
509
 
502
- class LLMLoadBalancingSetType(Enum):
503
- o4_mini_2025_04_16 = 'o4-mini-2025-04-16'
504
- gpt_5_2025_08_07 = 'gpt-5-2025-08-07'
505
- gpt_5_mini_2025_08_07 = 'gpt-5-mini-2025-08-07'
506
- gpt_5_nano_2025_08_07 = 'gpt-5-nano-2025-08-07'
507
- claude_sonnet_4_5_20250929 = 'claude-sonnet-4-5-20250929'
508
-
509
-
510
510
  class LLMType(Enum):
511
- openai_o4_mini_2025_04_16 = 'openai_o4-mini-2025-04-16'
512
- openai_gpt_5_2025_08_07 = 'openai_gpt-5-2025-08-07'
513
- openai_gpt_5_mini_2025_08_07 = 'openai_gpt-5-mini-2025-08-07'
514
- openai_gpt_5_nano_2025_08_07 = 'openai_gpt-5-nano-2025-08-07'
515
- azure_o4_mini_2025_04_16 = 'azure_o4-mini-2025-04-16'
516
511
  azure_gpt_4_1_2025_04_14 = 'azure_gpt-4.1-2025-04-14'
517
512
  azure_gpt_4_1_mini_2025_04_14 = 'azure_gpt-4.1-mini-2025-04-14'
518
513
  azure_gpt_5_2025_08_07 = 'azure_gpt-5-2025-08-07'
@@ -520,7 +515,6 @@ class LLMType(Enum):
520
515
  azure_gpt_5_nano_2025_08_07 = 'azure_gpt-5-nano-2025-08-07'
521
516
  google_claude_sonnet_4_5_20250929 = 'google_claude-sonnet-4-5@20250929'
522
517
  aws_claude_sonnet_4_5_20250929 = 'aws_claude-sonnet-4-5-20250929'
523
- anthropic_claude_sonnet_4_5_20250929 = 'anthropic_claude-sonnet-4-5-20250929'
524
518
  google_gemini_2_5_pro = 'google_gemini-2.5-pro'
525
519
  google_gemini_2_5_flash = 'google_gemini-2.5-flash'
526
520
 
@@ -566,6 +560,14 @@ class MetricValueType(Enum):
566
560
  categorical = 'categorical'
567
561
 
568
562
 
563
+ class Model(BaseModel):
564
+ model_config = ConfigDict(
565
+ extra='allow',
566
+ )
567
+ name: str = Field(..., title='Name')
568
+ params_model_schema: Dict[str, Any] = Field(..., title='Params Model Schema')
569
+
570
+
569
571
  class NavigateStateMachineActionStateActionSelectedEvent(BaseModel):
570
572
  type: Literal['navigate-state-machine-action-state-action-selected'] = Field(
571
573
  'navigate-state-machine-action-state-action-selected', title='Type'
@@ -785,32 +787,20 @@ class NumericalMetricValue(BaseModel):
785
787
  upper_bound: float = Field(..., title='Upper Bound')
786
788
 
787
789
 
788
- class PCMUserMessageAudioConfigSampleWidth(Enum):
790
+ class PCMUserMessageAudioConfigSampleWidth(IntEnum):
789
791
  integer_2 = 2
790
792
  integer_4 = 4
791
793
 
792
794
 
793
795
  class PCMUserMessageAudioConfig(BaseModel):
794
796
  type: Literal['pcm'] = Field('pcm', title='Type')
795
- frame_rate: int = Field(..., title='Frame Rate')
797
+ frame_rate: int = Field(..., ge=4000, le=44100, title='Frame Rate')
796
798
  n_channels: Literal[1] = Field(..., title='N Channels')
797
799
  sample_width: PCMUserMessageAudioConfigSampleWidth = Field(
798
800
  ..., title='Sample Width'
799
801
  )
800
802
 
801
803
 
802
- class PerLLMConfig(BaseModel):
803
- top_p: float = Field(..., description='The preferred `top_p` value.', title='Top P')
804
- temperature: float = Field(
805
- ..., description='The preferred temperature value.', title='Temperature'
806
- )
807
- top_k: int = Field(
808
- ...,
809
- description='The preferred `top_k` value. Note that not all LLMs support this.',
810
- title='Top K',
811
- )
812
-
813
-
814
804
  class PostAnalysisType(Enum):
815
805
  generate_user_models = 'generate-user-models'
816
806
  extract_memories = 'extract-memories'
@@ -1465,6 +1455,35 @@ class VersionComponent(RootModel[Union[int, str]]):
1465
1455
  root: Union[int, str]
1466
1456
 
1467
1457
 
1458
+ class VoiceResponseMP3AudioFormatSampleRate(IntEnum):
1459
+ integer_22050 = 22050
1460
+ integer_44100 = 44100
1461
+
1462
+
1463
+ class VoiceResponseMP3AudioFormatSampleWidth(IntEnum):
1464
+ integer_4 = 4
1465
+ integer_8 = 8
1466
+
1467
+
1468
+ class VoiceResponseMP3AudioFormat(BaseModel):
1469
+ type: Literal['mp3'] = Field('mp3', title='Type')
1470
+ sample_rate: VoiceResponseMP3AudioFormatSampleRate = Field(..., title='Sample Rate')
1471
+ sample_width: VoiceResponseMP3AudioFormatSampleWidth = Field(
1472
+ ..., title='Sample Width'
1473
+ )
1474
+
1475
+
1476
+ class VoiceResponsePCMAudioFormatSampleRate(IntEnum):
1477
+ integer_8000 = 8000
1478
+ integer_16000 = 16000
1479
+ integer_44100 = 44100
1480
+
1481
+
1482
+ class VoiceResponsePCMAudioFormat(BaseModel):
1483
+ type: Literal['pcm'] = Field('pcm', title='Type')
1484
+ sample_rate: VoiceResponsePCMAudioFormatSampleRate = Field(..., title='Sample Rate')
1485
+
1486
+
1468
1487
  class WebhookDeliveryStatus(Enum):
1469
1488
  success = 'success'
1470
1489
  failed = 'failed'
@@ -1523,27 +1542,8 @@ class AmigoLibLlmLlmBaseLLMConfig(BaseModel):
1523
1542
  llm_name: str = Field(
1524
1543
  ..., description='The name of the LLM to use.', title='Llm Name'
1525
1544
  )
1526
- top_p: float = Field(..., description='The preferred `top_p` value.', title='Top P')
1527
- temperature: float = Field(
1528
- ..., description='The preferred temperature value.', title='Temperature'
1529
- )
1530
- top_k: int = Field(
1531
- ...,
1532
- description='The preferred `top_k` value. Note that not all LLMs support this.',
1533
- title='Top K',
1534
- )
1535
-
1536
-
1537
- class AmigoLibLlmLlmBaseLLMLoadBalancingSetConfig(BaseModel):
1538
- llm_load_balancing_set_name: str = Field(
1539
- ...,
1540
- description='The name of the LLM load balancing set.',
1541
- title='Llm Load Balancing Set Name',
1542
- )
1543
- configs: Dict[str, PerLLMConfig] = Field(
1544
- ...,
1545
- description='A map of canonical names of LLMs in this load balancing set to the LLM config to use. If an LLM in the load balancing set\ndoes not have a config, its default config would be used.',
1546
- title='Configs',
1545
+ params: Optional[Dict[str, Any]] = Field(
1546
+ {}, description='LLM-specific parameters to use.', title='Params'
1547
1547
  )
1548
1548
 
1549
1549
 
@@ -1641,10 +1641,7 @@ class AmigoLibMongoCollectionsServiceServiceVersionSet(BaseModel):
1641
1641
  description='The version number of the state machine to be used. If None, the latest state machine version will be used.',
1642
1642
  title='Service Hierarchical State Machine Version Number',
1643
1643
  )
1644
- llm_model_preferences: Dict[
1645
- str,
1646
- Union[AmigoLibLlmLlmBaseLLMConfig, AmigoLibLlmLlmBaseLLMLoadBalancingSetConfig],
1647
- ] = Field(
1644
+ llm_model_preferences: Dict[str, AmigoLibLlmLlmBaseLLMConfig] = Field(
1648
1645
  ...,
1649
1646
  description='A map of `LLMInteraction` name to the preferred LLM config that can be used for that interaction.\nIf an `LLMInteraction` is not in this map, the default model config will be used (defined in each `LLMInteraction` instance).',
1650
1647
  title='Llm Model Preferences',
@@ -1661,16 +1658,16 @@ AmigoLibMongoCollectionsSimulationScenarioSimulationScenarioUserInfo = (
1661
1658
  )
1662
1659
 
1663
1660
 
1664
- class AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag(BaseModel):
1665
- key: str = Field(..., title='Key')
1666
- value: Optional[str] = Field(..., title='Value')
1667
-
1668
-
1669
1661
  AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo = (
1670
1662
  AmigoLibMongoCollectionsDynamicBehaviorSetDynamicBehaviorSetUserInfo
1671
1663
  )
1672
1664
 
1673
1665
 
1666
+ class AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag(BaseModel):
1667
+ key: str = Field(..., title='Key')
1668
+ value: Optional[str] = Field(..., title='Value')
1669
+
1670
+
1674
1671
  class AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUnitTestRunDescriptor(
1675
1672
  BaseModel
1676
1673
  ):
@@ -1707,12 +1704,6 @@ AmigoLibMongoCollectionsSimulationUnitTestSetRunSimulationUnitTestSetRunUserInfo
1707
1704
  )
1708
1705
 
1709
1706
 
1710
- class AmigoLibMongoCollectionsToolInvocationToolInvocationVersion(BaseModel):
1711
- major: int = Field(..., title='Major')
1712
- minor: int = Field(..., title='Minor')
1713
- patch: int = Field(..., title='Patch')
1714
-
1715
-
1716
1707
  class AmigoLibMongoCollectionsToolVersionToolVersionUserInfo(BaseModel):
1717
1708
  user_id: str = Field(..., description='The ID of the user.', title='User Id')
1718
1709
  user_org_id: str = Field(
@@ -1720,6 +1711,12 @@ class AmigoLibMongoCollectionsToolVersionToolVersionUserInfo(BaseModel):
1720
1711
  )
1721
1712
 
1722
1713
 
1714
+ class AmigoLibMongoCollectionsToolVersionToolVersionVersion(BaseModel):
1715
+ major: int = Field(..., title='Major')
1716
+ minor: int = Field(..., title='Minor')
1717
+ patch: int = Field(..., title='Patch')
1718
+
1719
+
1723
1720
  class AmigoLibMongoCollectionsUserUserPreferences(BaseModel):
1724
1721
  enable_response_recommendation: Optional[bool] = Field(
1725
1722
  False,
@@ -1761,6 +1758,13 @@ class AmigoLibPydanticBaseModelStrippedNonemptyString3(RootModel[str]):
1761
1758
  root: str = Field(..., max_length=3, min_length=1)
1762
1759
 
1763
1760
 
1761
+ class AdminGetModelsResponse(BaseModel):
1762
+ model_config = ConfigDict(
1763
+ extra='allow',
1764
+ )
1765
+ models: List[Model] = Field(..., title='Models')
1766
+
1767
+
1764
1768
  class AdminSubmitSqlQueryRequest(BaseModel):
1765
1769
  sql_query: str = Field(..., description='The SQL query to execute.', min_length=1)
1766
1770
  async_query: Literal[False] = Field(
@@ -10748,6 +10752,13 @@ class OrganizationCreateOrganizationRequestPreferences(BaseModel):
10748
10752
  )
10749
10753
 
10750
10754
 
10755
+ class OrganizationCreateOrganizationRequestUserDimension(BaseModel):
10756
+ description: str = Field(..., min_length=1)
10757
+ tags: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
10758
+ ..., title='Tags'
10759
+ )
10760
+
10761
+
10751
10762
  class OrganizationCreateOrganizationResponse(BaseModel):
10752
10763
  org_id: str = Field(
10753
10764
  ...,
@@ -10771,19 +10782,19 @@ class OrganizationCreateServiceHierarchicalStateMachineResponse(BaseModel):
10771
10782
  )
10772
10783
 
10773
10784
 
10774
- class OrganizationCreateServiceHierarchicalStateMachineVersionRequestDecisionStateExitConditionNextState(
10785
+ class OrganizationCreateServiceHierarchicalStateMachineVersionRequestActionStateExitConditionNextState(
10775
10786
  AnnotationStateInputNextState
10776
10787
  ):
10777
10788
  pass
10778
10789
 
10779
10790
 
10780
- class OrganizationCreateServiceHierarchicalStateMachineVersionRequestDecisionStateExitCondition(
10791
+ class OrganizationCreateServiceHierarchicalStateMachineVersionRequestActionStateExitCondition(
10781
10792
  BaseModel
10782
10793
  ):
10783
10794
  description: str = Field(..., min_length=1)
10784
10795
  next_state: Union[
10785
10796
  StateOrRefName,
10786
- OrganizationCreateServiceHierarchicalStateMachineVersionRequestDecisionStateExitConditionNextState,
10797
+ OrganizationCreateServiceHierarchicalStateMachineVersionRequestActionStateExitConditionNextState,
10787
10798
  ] = Field(..., title='Next State')
10788
10799
 
10789
10800
 
@@ -10889,18 +10900,22 @@ class OrganizationGetUserDimensionsResponse(BaseModel):
10889
10900
  )
10890
10901
 
10891
10902
 
10903
+ class OrganizationModifyOrganizationRequestUserDimensions(
10904
+ RootModel[List[OrganizationCreateOrganizationRequestUserDimension]]
10905
+ ):
10906
+ root: List[OrganizationCreateOrganizationRequestUserDimension] = Field(
10907
+ ...,
10908
+ description='User dimensions for the organization. If not set or `null`, this field is not updated.',
10909
+ min_length=1,
10910
+ title='User Dimensions',
10911
+ )
10912
+
10913
+
10892
10914
  OrganizationModifyOrganizationRequestPreferences = (
10893
10915
  OrganizationCreateOrganizationRequestPreferences
10894
10916
  )
10895
10917
 
10896
10918
 
10897
- class OrganizationModifyOrganizationRequestUserDimension(BaseModel):
10898
- description: str = Field(..., min_length=1)
10899
- tags: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
10900
- ..., title='Tags'
10901
- )
10902
-
10903
-
10904
10919
  class RoleAssignRoleRequest(BaseModel):
10905
10920
  user_id: str = Field(
10906
10921
  ...,
@@ -10947,11 +10962,6 @@ class RoleModifyRoleResponse(BaseModel):
10947
10962
  )
10948
10963
 
10949
10964
 
10950
- class ServiceCreateServiceRequestVersionSetLLMLoadBalancingSetConfig(BaseModel):
10951
- llm_load_balancing_set_name: LLMLoadBalancingSetType
10952
- configs: Dict[str, PerLLMConfig] = Field(..., title='Configs')
10953
-
10954
-
10955
10965
  class ServiceCreateServiceResponse(BaseModel):
10956
10966
  id: str = Field(..., description='The ID of the newly created service.', title='Id')
10957
10967
 
@@ -11013,14 +11023,8 @@ class ServiceUpdateServiceRequest(BaseModel):
11013
11023
 
11014
11024
  class ServiceUpsertServiceVersionSetRequestVersionSetLLMConfig(BaseModel):
11015
11025
  llm_name: LLMType
11016
- top_p: float = Field(..., description='The preferred `top_p` value.', title='Top P')
11017
- temperature: float = Field(
11018
- ..., description='The preferred temperature value.', title='Temperature'
11019
- )
11020
- top_k: int = Field(
11021
- ...,
11022
- description='The preferred `top_k` value. Note that not all LLMs support this.',
11023
- title='Top K',
11026
+ params: Optional[Dict[str, Any]] = Field(
11027
+ {}, description='LLM-specific parameters to use.', title='Params'
11024
11028
  )
11025
11029
 
11026
11030
 
@@ -11232,37 +11236,6 @@ class SimulationGetSimulationScenariosResponseFilterValues(BaseModel):
11232
11236
  )
11233
11237
 
11234
11238
 
11235
- class SimulationGetSimulationScenariosResponseSimulationScenarioInstance(BaseModel):
11236
- id: str = Field(..., description='The ID of the simulation scenario.', title='Id')
11237
- name: str = Field(
11238
- ..., description='The name of the simulation scenario.', title='Name'
11239
- )
11240
- tags: Dict[str, Optional[str]] = Field(
11241
- ..., description='The tags of the simulation scenario.', title='Tags'
11242
- )
11243
- is_deleted: bool = Field(
11244
- ...,
11245
- description='Whether the simulation scenario is deleted.',
11246
- title='Is Deleted',
11247
- )
11248
- created_at: AwareDatetime = Field(
11249
- ...,
11250
- description='The timestamp when the simulation scenario was created.',
11251
- title='Created At',
11252
- )
11253
- creator: AmigoLibMongoCollectionsSimulationScenarioSimulationScenarioUserInfo = (
11254
- Field(..., description='The user who created the simulation scenario.')
11255
- )
11256
- updated_at: AwareDatetime = Field(
11257
- ...,
11258
- description='The timestamp when the simulation scenario was last updated.',
11259
- title='Updated At',
11260
- )
11261
- updated_by: AmigoLibMongoCollectionsSimulationScenarioSimulationScenarioUserInfo = (
11262
- Field(..., description='The user who last updated the simulation scenario.')
11263
- )
11264
-
11265
-
11266
11239
  class SimulationGetSimulationUnitTestSetRunArtifactsResponse(BaseModel):
11267
11240
  presigned_url: str = Field(
11268
11241
  ...,
@@ -11385,13 +11358,34 @@ class SimulationSearchSimulationPersonasResponseSimulationPersonaInstance(BaseMo
11385
11358
  )
11386
11359
 
11387
11360
 
11388
- class SimulationSearchSimulationScenariosResponse(BaseModel):
11389
- simulation_scenarios: List[
11390
- SimulationGetSimulationScenariosResponseSimulationScenarioInstance
11391
- ] = Field(
11361
+ class SimulationSearchSimulationScenariosResponseSimulationScenarioInstance(BaseModel):
11362
+ id: str = Field(..., description='The ID of the simulation scenario.', title='Id')
11363
+ name: str = Field(
11364
+ ..., description='The name of the simulation scenario.', title='Name'
11365
+ )
11366
+ tags: Dict[str, Optional[str]] = Field(
11367
+ ..., description='The tags of the simulation scenario.', title='Tags'
11368
+ )
11369
+ is_deleted: bool = Field(
11392
11370
  ...,
11393
- description='The list of simulation scenarios.',
11394
- title='Simulation Scenarios',
11371
+ description='Whether the simulation scenario is deleted.',
11372
+ title='Is Deleted',
11373
+ )
11374
+ created_at: AwareDatetime = Field(
11375
+ ...,
11376
+ description='The timestamp when the simulation scenario was created.',
11377
+ title='Created At',
11378
+ )
11379
+ creator: AmigoLibMongoCollectionsSimulationScenarioSimulationScenarioUserInfo = (
11380
+ Field(..., description='The user who created the simulation scenario.')
11381
+ )
11382
+ updated_at: AwareDatetime = Field(
11383
+ ...,
11384
+ description='The timestamp when the simulation scenario was last updated.',
11385
+ title='Updated At',
11386
+ )
11387
+ updated_by: AmigoLibMongoCollectionsSimulationScenarioSimulationScenarioUserInfo = (
11388
+ Field(..., description='The user who last updated the simulation scenario.')
11395
11389
  )
11396
11390
 
11397
11391
 
@@ -11495,6 +11489,22 @@ class ToolGetToolsResponseFilterValues(BaseModel):
11495
11489
  )
11496
11490
 
11497
11491
 
11492
+ class ToolInvokeToolVersionRequestInputInvocationMode(Enum):
11493
+ regular = 'regular'
11494
+ conversation_simulation = 'conversation-simulation'
11495
+
11496
+
11497
+ class ToolInvokeToolVersionRequestInput(BaseModel):
11498
+ input_parameters: Dict[str, Any] = Field(
11499
+ ...,
11500
+ description='The input parameters for the tool invocation.',
11501
+ title='Input Parameters',
11502
+ )
11503
+ invocation_mode: ToolInvokeToolVersionRequestInputInvocationMode = Field(
11504
+ ..., description='The mode of invocation.', title='Invocation Mode'
11505
+ )
11506
+
11507
+
11498
11508
  class ToolModifyToolRequest(BaseModel):
11499
11509
  description: Optional[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
11500
11510
  None, description='A description of this tool. Only updates if not-null.'
@@ -11537,19 +11547,34 @@ class ToolPublishToolVersionResponse(BaseModel):
11537
11547
  )
11538
11548
 
11539
11549
 
11540
- class ToolTestToolRequestInputInvocationMode(Enum):
11541
- regular = 'regular'
11542
- conversation_simulation = 'conversation-simulation'
11543
-
11544
-
11545
- class ToolTestToolRequestInput(BaseModel):
11546
- input_parameters: Dict[str, Any] = Field(
11550
+ class ToolTestToolRequest(BaseModel):
11551
+ inputs: List[ToolInvokeToolVersionRequestInput] = Field(
11547
11552
  ...,
11548
- description='The input parameters for the tool invocation.',
11549
- title='Input Parameters',
11553
+ description='The list of inputs for the tool invocation.',
11554
+ max_length=10,
11555
+ min_length=1,
11556
+ title='Inputs',
11550
11557
  )
11551
- invocation_mode: ToolTestToolRequestInputInvocationMode = Field(
11552
- ..., description='The mode of invocation.', title='Invocation Mode'
11558
+ commit_branch: str = Field(
11559
+ ...,
11560
+ description='The branch in the tools repo whose tip will be tested.',
11561
+ title='Commit Branch',
11562
+ )
11563
+ project_path: str = Field(
11564
+ ...,
11565
+ description='The directory in the tools repo that contains the `pyproject.toml` file corresponding to the tool version to publish.',
11566
+ pattern='^[-\\w\\d_/]+$',
11567
+ title='Project Path',
11568
+ )
11569
+ required_envvars: Dict[str, str] = Field(
11570
+ ...,
11571
+ description='The environment variables required for the tool to run.',
11572
+ title='Required Envvars',
11573
+ )
11574
+ required_secret_envvars: Dict[str, str] = Field(
11575
+ ...,
11576
+ description='The secret environment variables required for the tool to run.',
11577
+ title='Required Secret Envvars',
11553
11578
  )
11554
11579
 
11555
11580
 
@@ -11621,7 +11646,7 @@ class UserGetMemoriesResponse(BaseModel):
11621
11646
  )
11622
11647
 
11623
11648
 
11624
- class UserGetUsersResponseUserInstanceUserStats(BaseModel):
11649
+ class UserSearchUsersResponseUserInstanceUserStats(BaseModel):
11625
11650
  num_conversations: int = Field(
11626
11651
  ...,
11627
11652
  description='The number of conversations the user has created.',
@@ -11639,31 +11664,6 @@ class UserGetUsersResponseUserInstanceUserStats(BaseModel):
11639
11664
  )
11640
11665
 
11641
11666
 
11642
- class UserSearchUsersResponseUserInstance(BaseModel):
11643
- org_id: str = Field(
11644
- ...,
11645
- description='The ID of the organization that this user belongs to.',
11646
- title='Org Id',
11647
- )
11648
- user_id: str = Field(
11649
- ..., description='The identifier of the user.', title='User Id'
11650
- )
11651
- first_name: str = Field(
11652
- ..., description='The first name of the user.', title='First Name'
11653
- )
11654
- last_name: str = Field(
11655
- ..., description='The last name of the user.', title='Last Name'
11656
- )
11657
- email: str = Field(..., description='Email of the user.', title='Email')
11658
- user_stats: UserGetUsersResponseUserInstanceUserStats = Field(
11659
- ..., description="Statistics about the user's usage of the Amigo platform."
11660
- )
11661
- role: str = Field(..., description='The ID of the role of the user.', title='Role')
11662
- preferences: AmigoLibMongoCollectionsUserUserPreferences = Field(
11663
- ..., description='The preferences of the user.'
11664
- )
11665
-
11666
-
11667
11667
  class UserSignInWithApiKeyResponse(BaseModel):
11668
11668
  id_token: str = Field(
11669
11669
  ...,
@@ -11688,14 +11688,6 @@ class UserSignInWithEmailRequest(BaseModel):
11688
11688
  )
11689
11689
 
11690
11690
 
11691
- class UserSignInWithEmailResponse(BaseModel):
11692
- user_id: str = Field(
11693
- ...,
11694
- description='The identifier of the user corresponding to the email.',
11695
- title='User Id',
11696
- )
11697
-
11698
-
11699
11691
  class UserUpdateUserInfoRequest(BaseModel):
11700
11692
  first_name: Optional[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
11701
11693
  None,
@@ -12028,24 +12020,6 @@ class CreateConversationParametersQueryAudioFormat(Enum):
12028
12020
  pcm = 'pcm'
12029
12021
 
12030
12022
 
12031
- class CreateConversationParametersQuery(BaseModel):
12032
- response_format: Format = Field(
12033
- ...,
12034
- description='The format of the response that will be sent to the user.',
12035
- title='Response Format',
12036
- )
12037
- current_agent_action_type: Optional[str] = Field(
12038
- '^.*$',
12039
- description="A regex for filtering the type of the current agent action to return. By default, all are returned. If you don't want to receive any events, set this to a regex that matches nothing, for instance `^$`.",
12040
- title='Current Agent Action Type',
12041
- )
12042
- audio_format: Optional[CreateConversationParametersQueryAudioFormat] = Field(
12043
- None,
12044
- description='The format of the audio response, if `response_format` is set to `voice`.',
12045
- title='Audio Format',
12046
- )
12047
-
12048
-
12049
12023
  class GetConversationsParametersQueryServiceIdItem(
12050
12024
  DynamicBehaviorSetCreateDynamicBehaviorSetRequestAppliedToService
12051
12025
  ):
@@ -12111,7 +12085,7 @@ class GetConversationMessagesParametersQuery(BaseModel):
12111
12085
  [], description='The IDs of the messages to retrieve.', title='Id'
12112
12086
  )
12113
12087
  message_type: Optional[List[MessageType]] = Field(
12114
- ['external-event', 'user-message', 'agent-message'],
12088
+ ['agent-message', 'user-message', 'external-event'],
12115
12089
  description='The type of messages to retrieve.',
12116
12090
  title='Message Type',
12117
12091
  )
@@ -12141,36 +12115,108 @@ class GetConversationMessagesParametersQuery(BaseModel):
12141
12115
  )
12142
12116
 
12143
12117
 
12144
- class InteractWithConversationParametersQuery(BaseModel):
12145
- request_format: Format = Field(
12146
- ...,
12147
- description='The format in which the user message is delivered to the server.',
12148
- title='Request Format',
12118
+ class InteractWithConversationRequestInteractWithConversationRequestExternalEventMessageContent(
12119
+ AmigoLibPydanticBaseModelStrippedNonemptyString1
12120
+ ):
12121
+ pass
12122
+
12123
+
12124
+ class InteractWithConversationRequestInteractWithConversationRequest(BaseModel):
12125
+ initial_message_type: Literal['external-event'] = Field(
12126
+ ..., title='Initial Message Type'
12149
12127
  )
12150
- response_format: Format = Field(
12151
- ...,
12152
- description='The format of the response that will be sent to the user.',
12153
- title='Response Format',
12128
+ recorded_message: str = Field(..., min_length=1)
12129
+ external_event_message_contents: Optional[
12130
+ List[
12131
+ InteractWithConversationRequestInteractWithConversationRequestExternalEventMessageContent
12132
+ ]
12133
+ ] = Field(
12134
+ [],
12135
+ description='The contents of external event messages to be inserted before the initial message, in chronological order.',
12136
+ title='External Event Message Contents',
12154
12137
  )
12155
- current_agent_action_type: Optional[str] = Field(
12156
- '^.*$',
12157
- description="A regex for filtering the type of the current agent action to return. By default, all are returned. If you don't want to receive any events, set this to a regex that matches nothing, for instance `^$`.",
12158
- title='Current Agent Action Type',
12138
+ external_event_message_timestamps: Optional[List[AwareDatetime]] = Field(
12139
+ [],
12140
+ description='The timestamps of external event messages to be inserted before the initial message, in chronological order.',
12141
+ title='External Event Message Timestamps',
12159
12142
  )
12160
- request_audio_config: Optional[
12161
- Union[MP3UserMessageAudioConfig, PCMUserMessageAudioConfig]
12143
+
12144
+
12145
+ class InteractWithConversationRequestInteractWithConversationRequest1ExternalEventMessageContent(
12146
+ AmigoLibPydanticBaseModelStrippedNonemptyString1
12147
+ ):
12148
+ pass
12149
+
12150
+
12151
+ class InteractWithConversationRequest_InteractWithConversationRequest(BaseModel):
12152
+ initial_message_type: Literal['user-message'] = Field(
12153
+ ..., title='Initial Message Type'
12154
+ )
12155
+ recorded_message: str = Field(..., min_length=1)
12156
+ external_event_message_contents: Optional[
12157
+ List[
12158
+ InteractWithConversationRequestInteractWithConversationRequest1ExternalEventMessageContent
12159
+ ]
12162
12160
  ] = Field(
12163
- None,
12164
- description='Configuration for the user message audio. This is only required if `request_format` is set to `voice`.',
12165
- title='Request Audio Config',
12161
+ [],
12162
+ description='The contents of external event messages to be inserted before the initial message, in chronological order.',
12163
+ title='External Event Message Contents',
12166
12164
  )
12167
- audio_format: Optional[CreateConversationParametersQueryAudioFormat] = Field(
12168
- None,
12169
- description='The format of the audio response, if `response_format` is set to `voice`.',
12170
- title='Audio Format',
12165
+ external_event_message_timestamps: Optional[List[AwareDatetime]] = Field(
12166
+ [],
12167
+ description='The timestamps of external event messages to be inserted before the initial message, in chronological order.',
12168
+ title='External Event Message Timestamps',
12169
+ )
12170
+
12171
+
12172
+ class InteractWithConversationRequestInteractWithConversationRequest2ExternalEventMessageContent(
12173
+ AmigoLibPydanticBaseModelStrippedNonemptyString1
12174
+ ):
12175
+ pass
12176
+
12177
+
12178
+ class InteractWithConversationRequestInteractWithConversationRequest2(BaseModel):
12179
+ initial_message_type: Literal['skip'] = Field(..., title='Initial Message Type')
12180
+ recorded_message: str = Field(
12181
+ ...,
12182
+ description='The body of the initial message, which must be empty.',
12183
+ max_length=0,
12184
+ title='Recorded Message',
12185
+ )
12186
+ external_event_message_contents: Optional[
12187
+ List[
12188
+ InteractWithConversationRequestInteractWithConversationRequest2ExternalEventMessageContent
12189
+ ]
12190
+ ] = Field(
12191
+ [],
12192
+ description='Must be empty, as external event messages cannot be sent with skips.',
12193
+ max_length=0,
12194
+ title='External Event Message Contents',
12195
+ )
12196
+ external_event_message_timestamps: Optional[List[AwareDatetime]] = Field(
12197
+ [],
12198
+ description='Must be empty, as external event messages cannot be sent with skips.',
12199
+ max_length=0,
12200
+ title='External Event Message Timestamps',
12171
12201
  )
12172
12202
 
12173
12203
 
12204
+ class InteractWithConversationRequest(
12205
+ RootModel[
12206
+ Union[
12207
+ InteractWithConversationRequestInteractWithConversationRequest,
12208
+ InteractWithConversationRequest_InteractWithConversationRequest,
12209
+ InteractWithConversationRequestInteractWithConversationRequest2,
12210
+ ]
12211
+ ]
12212
+ ):
12213
+ root: Union[
12214
+ InteractWithConversationRequestInteractWithConversationRequest,
12215
+ InteractWithConversationRequest_InteractWithConversationRequest,
12216
+ InteractWithConversationRequestInteractWithConversationRequest2,
12217
+ ]
12218
+
12219
+
12174
12220
  class RetrieveMessageSourceParametersQuery(BaseModel):
12175
12221
  long_lived: Optional[bool] = Field(
12176
12222
  False,
@@ -13845,9 +13891,9 @@ class ServiceInstance(BaseModel):
13845
13891
  agent_id: str = Field(
13846
13892
  ..., description='The ID of the agent that this service uses.', title='Agent Id'
13847
13893
  )
13848
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
13849
- ..., description='The tags of the service.', title='Tags'
13850
- )
13894
+ tags: List[
13895
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
13896
+ ] = Field(..., description='The tags of the service.', title='Tags')
13851
13897
 
13852
13898
 
13853
13899
  class SimulationConversationInvocationSource(BaseModel):
@@ -13898,7 +13944,9 @@ class SimulationUnitTestSet(BaseModel):
13898
13944
  description='Whether the unit test set has been deleted.',
13899
13945
  title='Is Deleted',
13900
13946
  )
13901
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
13947
+ tags: List[
13948
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
13949
+ ] = Field(
13902
13950
  ..., description='The tags of the simulation unit test set.', title='Tags'
13903
13951
  )
13904
13952
  creator: AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUserInfo
@@ -13937,7 +13985,9 @@ class SimulationUnitTestSetInstance(BaseModel):
13937
13985
  description='Whether the unit test set has been deleted.',
13938
13986
  title='Is Deleted',
13939
13987
  )
13940
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
13988
+ tags: List[
13989
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
13990
+ ] = Field(
13941
13991
  ..., description='The tags of the simulation unit test set.', title='Tags'
13942
13992
  )
13943
13993
  creator: AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUserInfo
@@ -14053,9 +14103,9 @@ class ToolInstance(BaseModel):
14053
14103
  description='A list of encrypted environment variables that some versions of this tool uses.',
14054
14104
  title='Secret Envvars',
14055
14105
  )
14056
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
14057
- ..., description='The tags of the simulation persona.', title='Tags'
14058
- )
14106
+ tags: List[
14107
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
14108
+ ] = Field(..., description='The tags of the simulation persona.', title='Tags')
14059
14109
 
14060
14110
 
14061
14111
  class ToolVersionInstance(BaseModel):
@@ -14068,7 +14118,7 @@ class ToolVersionInstance(BaseModel):
14068
14118
  description='The ID of the tool that this version belongs to.',
14069
14119
  title='Tool Id',
14070
14120
  )
14071
- version: AmigoLibMongoCollectionsToolInvocationToolInvocationVersion = Field(
14121
+ version: AmigoLibMongoCollectionsToolVersionToolVersionVersion = Field(
14072
14122
  ..., description='The version of the tool.'
14073
14123
  )
14074
14124
  required_envvars: List[str] = Field(
@@ -14163,10 +14213,7 @@ class VersionSetInfo(BaseModel):
14163
14213
  min_length=2,
14164
14214
  title='Service Hierarchical State Machine Version Info',
14165
14215
  )
14166
- llm_model_preferences: Dict[
14167
- str,
14168
- Union[AmigoLibLlmLlmBaseLLMConfig, AmigoLibLlmLlmBaseLLMLoadBalancingSetConfig],
14169
- ] = Field(
14216
+ llm_model_preferences: Dict[str, AmigoLibLlmLlmBaseLLMConfig] = Field(
14170
14217
  ...,
14171
14218
  description='The LLM model preferences for this version set.',
14172
14219
  title='Llm Model Preferences',
@@ -14467,7 +14514,7 @@ class OrganizationCreateOrganizationRequest(BaseModel):
14467
14514
  description='Additional descriptions of the services offered by this organization that is displayed below `main_description` in a smaller font.',
14468
14515
  min_length=1,
14469
14516
  )
14470
- user_dimensions: List[OrganizationModifyOrganizationRequestUserDimension] = Field(
14517
+ user_dimensions: List[OrganizationCreateOrganizationRequestUserDimension] = Field(
14471
14518
  ...,
14472
14519
  description='User dimensions for the organization.',
14473
14520
  title='User Dimensions',
@@ -14611,17 +14658,6 @@ class OrganizationGetOrganizationMetricsResponse(BaseModel):
14611
14658
  )
14612
14659
 
14613
14660
 
14614
- class OrganizationModifyOrganizationRequestUserDimensions(
14615
- RootModel[List[OrganizationModifyOrganizationRequestUserDimension]]
14616
- ):
14617
- root: List[OrganizationModifyOrganizationRequestUserDimension] = Field(
14618
- ...,
14619
- description='User dimensions for the organization. If not set or `null`, this field is not updated.',
14620
- min_length=1,
14621
- title='User Dimensions',
14622
- )
14623
-
14624
-
14625
14661
  class OrganizationModifyOrganizationRequest(BaseModel):
14626
14662
  title: Optional[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
14627
14663
  None,
@@ -14751,11 +14787,7 @@ class ServiceUpsertServiceVersionSetRequestVersionSet(BaseModel):
14751
14787
  title='Service Hierarchical State Machine Version Number',
14752
14788
  )
14753
14789
  llm_model_preferences: Dict[
14754
- str,
14755
- Union[
14756
- ServiceUpsertServiceVersionSetRequestVersionSetLLMConfig,
14757
- ServiceCreateServiceRequestVersionSetLLMLoadBalancingSetConfig,
14758
- ],
14790
+ str, ServiceUpsertServiceVersionSetRequestVersionSetLLMConfig
14759
14791
  ] = Field(..., title='Llm Model Preferences')
14760
14792
 
14761
14793
 
@@ -14846,7 +14878,7 @@ class SimulationGetSimulationPersonasResponse(BaseModel):
14846
14878
 
14847
14879
  class SimulationGetSimulationScenariosResponse(BaseModel):
14848
14880
  simulation_scenarios: List[
14849
- SimulationGetSimulationScenariosResponseSimulationScenarioInstance
14881
+ SimulationSearchSimulationScenariosResponseSimulationScenarioInstance
14850
14882
  ] = Field(
14851
14883
  ...,
14852
14884
  description='The list of simulation scenarios.',
@@ -14902,6 +14934,16 @@ class SimulationSearchSimulationPersonasResponse(BaseModel):
14902
14934
  )
14903
14935
 
14904
14936
 
14937
+ class SimulationSearchSimulationScenariosResponse(BaseModel):
14938
+ simulation_scenarios: List[
14939
+ SimulationSearchSimulationScenariosResponseSimulationScenarioInstance
14940
+ ] = Field(
14941
+ ...,
14942
+ description='The list of simulation scenarios.',
14943
+ title='Simulation Scenarios',
14944
+ )
14945
+
14946
+
14905
14947
  class SimulationSearchSimulationUnitTestSetResponse(BaseModel):
14906
14948
  simulation_unit_test_sets: List[SimulationUnitTestSet] = Field(
14907
14949
  ...,
@@ -14992,7 +15034,7 @@ class ToolGetToolsResponse(BaseModel):
14992
15034
 
14993
15035
 
14994
15036
  class ToolInvokeToolVersionRequest(BaseModel):
14995
- inputs: List[ToolTestToolRequestInput] = Field(
15037
+ inputs: List[ToolInvokeToolVersionRequestInput] = Field(
14996
15038
  ...,
14997
15039
  description='The list of inputs for the tool invocation.',
14998
15040
  max_length=10,
@@ -15013,37 +15055,6 @@ class ToolModifyToolEnvvarsRequest(BaseModel):
15013
15055
  deletes: Optional[List[DeleteRequest]] = Field([], title='Deletes')
15014
15056
 
15015
15057
 
15016
- class ToolTestToolRequest(BaseModel):
15017
- inputs: List[ToolTestToolRequestInput] = Field(
15018
- ...,
15019
- description='The list of inputs for the tool invocation.',
15020
- max_length=10,
15021
- min_length=1,
15022
- title='Inputs',
15023
- )
15024
- commit_branch: str = Field(
15025
- ...,
15026
- description='The branch in the tools repo whose tip will be tested.',
15027
- title='Commit Branch',
15028
- )
15029
- project_path: str = Field(
15030
- ...,
15031
- description='The directory in the tools repo that contains the `pyproject.toml` file corresponding to the tool version to publish.',
15032
- pattern='^[-\\w\\d_/]+$',
15033
- title='Project Path',
15034
- )
15035
- required_envvars: Dict[str, str] = Field(
15036
- ...,
15037
- description='The environment variables required for the tool to run.',
15038
- title='Required Envvars',
15039
- )
15040
- required_secret_envvars: Dict[str, str] = Field(
15041
- ...,
15042
- description='The secret environment variables required for the tool to run.',
15043
- title='Required Secret Envvars',
15044
- )
15045
-
15046
-
15047
15058
  ToolTestToolResponse = ToolInvokeToolVersionResponse
15048
15059
 
15049
15060
 
@@ -15084,22 +15095,33 @@ class UserGetUserModelResponse(BaseModel):
15084
15095
  )
15085
15096
 
15086
15097
 
15087
- class UserGetUsersResponse(BaseModel):
15088
- users: List[UserSearchUsersResponseUserInstance] = Field(
15089
- ..., description='Users in this organization.', title='Users'
15098
+ class UserGetUsersResponseUserInstance(BaseModel):
15099
+ org_id: str = Field(
15100
+ ...,
15101
+ description='The ID of the organization that this user belongs to.',
15102
+ title='Org Id',
15090
15103
  )
15091
- has_more: bool = Field(
15092
- ..., description='Whether there are more users to retrieve.', title='Has More'
15104
+ user_id: str = Field(
15105
+ ..., description='The identifier of the user.', title='User Id'
15093
15106
  )
15094
- continuation_token: Optional[int] = Field(
15095
- ...,
15096
- description='A token to supply to the next request to retrieve the next page of users. Only populated if `has_more` is `True`.',
15097
- title='Continuation Token',
15107
+ first_name: str = Field(
15108
+ ..., description='The first name of the user.', title='First Name'
15109
+ )
15110
+ last_name: str = Field(
15111
+ ..., description='The last name of the user.', title='Last Name'
15112
+ )
15113
+ email: str = Field(..., description='Email of the user.', title='Email')
15114
+ user_stats: UserSearchUsersResponseUserInstanceUserStats = Field(
15115
+ ..., description="Statistics about the user's usage of the Amigo platform."
15116
+ )
15117
+ role: str = Field(..., description='The ID of the role of the user.', title='Role')
15118
+ preferences: AmigoLibMongoCollectionsUserUserPreferences = Field(
15119
+ ..., description='The preferences of the user.'
15098
15120
  )
15099
15121
 
15100
15122
 
15101
15123
  class UserSearchUsersResponse(BaseModel):
15102
- users: List[UserSearchUsersResponseUserInstance] = Field(
15124
+ users: List[UserGetUsersResponseUserInstance] = Field(
15103
15125
  ..., description='Users in this organization.', title='Users'
15104
15126
  )
15105
15127
 
@@ -15120,6 +15142,68 @@ class WebhookDestinationGetWebhookDeliveriesResponse(BaseModel):
15120
15142
  )
15121
15143
 
15122
15144
 
15145
+ class CreateConversationParametersQuery(BaseModel):
15146
+ response_format: Format = Field(
15147
+ ...,
15148
+ description='The format of the response that will be sent to the user.',
15149
+ title='Response Format',
15150
+ )
15151
+ current_agent_action_type: Optional[str] = Field(
15152
+ '^.*$',
15153
+ description="A regex for filtering the type of the current agent action to return. By default, all are returned. If you don't want to receive any events, set this to a regex that matches nothing, for instance `^$`.",
15154
+ title='Current Agent Action Type',
15155
+ )
15156
+ audio_format: Optional[CreateConversationParametersQueryAudioFormat] = Field(
15157
+ None,
15158
+ description='The format of the audio response, if `response_format` is set to `voice`.',
15159
+ title='Audio Format',
15160
+ )
15161
+ response_audio_format: Optional[
15162
+ Union[VoiceResponsePCMAudioFormat, VoiceResponseMP3AudioFormat]
15163
+ ] = Field(
15164
+ None,
15165
+ description='The format of the audio response, if `response_format` is set to `voice`.',
15166
+ title='Response Audio Format',
15167
+ )
15168
+
15169
+
15170
+ class InteractWithConversationParametersQuery(BaseModel):
15171
+ request_format: Format = Field(
15172
+ ...,
15173
+ description='The format in which the user message is delivered to the server.',
15174
+ title='Request Format',
15175
+ )
15176
+ response_format: Format = Field(
15177
+ ...,
15178
+ description='The format of the response that will be sent to the user.',
15179
+ title='Response Format',
15180
+ )
15181
+ current_agent_action_type: Optional[str] = Field(
15182
+ '^.*$',
15183
+ description="A regex for filtering the type of the current agent action to return. By default, all are returned. If you don't want to receive any events, set this to a regex that matches nothing, for instance `^$`.",
15184
+ title='Current Agent Action Type',
15185
+ )
15186
+ request_audio_config: Optional[
15187
+ Union[MP3UserMessageAudioConfig, PCMUserMessageAudioConfig]
15188
+ ] = Field(
15189
+ None,
15190
+ description='Configuration for the user message audio. This is only required if `request_format` is set to `voice`.',
15191
+ title='Request Audio Config',
15192
+ )
15193
+ audio_format: Optional[CreateConversationParametersQueryAudioFormat] = Field(
15194
+ None,
15195
+ description='The format of the audio response, if `response_format` is set to `voice`.',
15196
+ title='Audio Format',
15197
+ )
15198
+ response_audio_format: Optional[
15199
+ Union[VoiceResponsePCMAudioFormat, VoiceResponseMP3AudioFormat]
15200
+ ] = Field(
15201
+ None,
15202
+ description='The format of the audio response, if `response_format` is set to `voice`.',
15203
+ title='Response Audio Format',
15204
+ )
15205
+
15206
+
15123
15207
  class ActionStateInput(BaseModel):
15124
15208
  type: Literal['action'] = Field(..., title='Type')
15125
15209
  name: str = Field(..., pattern='^[A-Za-z0-9_]+$')
@@ -15137,7 +15221,7 @@ class ActionStateInput(BaseModel):
15137
15221
  Field(..., title='Boundary Constraints')
15138
15222
  )
15139
15223
  exit_conditions: List[
15140
- OrganizationCreateServiceHierarchicalStateMachineVersionRequestDecisionStateExitCondition
15224
+ OrganizationCreateServiceHierarchicalStateMachineVersionRequestActionStateExitCondition
15141
15225
  ] = Field(..., title='Exit Conditions')
15142
15226
  action_tool_call_specs: List[ToolCallSpecInput] = Field(
15143
15227
  ..., title='Action Tool Call Specs'
@@ -15246,7 +15330,7 @@ class DecisionStateInput(BaseModel):
15246
15330
  type: Literal['decision'] = Field(..., title='Type')
15247
15331
  name: str = Field(..., pattern='^[A-Za-z0-9_]+$')
15248
15332
  exit_conditions: List[
15249
- OrganizationCreateServiceHierarchicalStateMachineVersionRequestDecisionStateExitCondition
15333
+ OrganizationCreateServiceHierarchicalStateMachineVersionRequestActionStateExitCondition
15250
15334
  ] = Field(..., title='Exit Conditions')
15251
15335
  decision_guidelines: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
15252
15336
  ..., title='Decision Guidelines'
@@ -15287,9 +15371,9 @@ class Metric(BaseModel):
15287
15371
  additional_notes: Optional[str] = Field(
15288
15372
  ..., description='Additional notes about the metric.', title='Additional Notes'
15289
15373
  )
15290
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
15291
- ..., description='The tags of the metric.', title='Tags'
15292
- )
15374
+ tags: List[
15375
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
15376
+ ] = Field(..., description='The tags of the metric.', title='Tags')
15293
15377
  creator: AmigoLibMongoCollectionsMetricMetricUserInfo = Field(
15294
15378
  ..., description='The user who created the metric.'
15295
15379
  )
@@ -15357,9 +15441,9 @@ class MetricInstance(BaseModel):
15357
15441
  additional_notes: Optional[str] = Field(
15358
15442
  ..., description='Additional notes about the metric.', title='Additional Notes'
15359
15443
  )
15360
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
15361
- ..., description='The tags of the metric.', title='Tags'
15362
- )
15444
+ tags: List[
15445
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
15446
+ ] = Field(..., description='The tags of the metric.', title='Tags')
15363
15447
  creator: AmigoLibMongoCollectionsMetricMetricUserInfo = Field(
15364
15448
  ..., description='The user who created the metric.'
15365
15449
  )
@@ -15559,9 +15643,9 @@ class SimulationUnitTest(BaseModel):
15559
15643
  is_deleted: bool = Field(
15560
15644
  ..., description='Whether the unit test has been deleted.', title='Is Deleted'
15561
15645
  )
15562
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
15563
- ..., description='The tags of the simulation persona.', title='Tags'
15564
- )
15646
+ tags: List[
15647
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
15648
+ ] = Field(..., description='The tags of the simulation persona.', title='Tags')
15565
15649
  creator: AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
15566
15650
  updated_by: AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
15567
15651
 
@@ -15604,9 +15688,9 @@ class SimulationUnitTestInstance(BaseModel):
15604
15688
  is_deleted: bool = Field(
15605
15689
  ..., description='Whether the unit test has been deleted.', title='Is Deleted'
15606
15690
  )
15607
- tags: List[AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestTag] = Field(
15608
- ..., description='The tags of the simulation persona.', title='Tags'
15609
- )
15691
+ tags: List[
15692
+ AmigoLibMongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag
15693
+ ] = Field(..., description='The tags of the simulation persona.', title='Tags')
15610
15694
  creator: AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
15611
15695
  updated_by: AmigoLibMongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
15612
15696
 
@@ -15642,10 +15726,7 @@ class UnitTestRunSpec(BaseModel):
15642
15726
  description='The version of the persona that the unit test runs on. This field is only populated if the authenticated user has the `Simulation:GetSimulationUnitTest` permission.',
15643
15727
  title='Persona Version Info',
15644
15728
  )
15645
- llm_model_preferences: Dict[
15646
- str,
15647
- Union[AmigoLibLlmLlmBaseLLMConfig, AmigoLibLlmLlmBaseLLMLoadBalancingSetConfig],
15648
- ] = Field(
15729
+ llm_model_preferences: Dict[str, AmigoLibLlmLlmBaseLLMConfig] = Field(
15649
15730
  ...,
15650
15731
  description='The LLM model preferences for the unit test run.',
15651
15732
  title='Llm Model Preferences',
@@ -16105,7 +16186,7 @@ class SimulationUpdateSimulationUnitTestRequest(BaseModel):
16105
16186
  )
16106
16187
 
16107
16188
 
16108
- class ToolSearchToolInvocationsResponseToolInvocationInstance(BaseModel):
16189
+ class ToolGetToolInvocationsResponseToolInvocationInstance(BaseModel):
16109
16190
  id: str = Field(..., description='The ID of the tool invocation.', title='Id')
16110
16191
  org_id: str = Field(..., description='The ID of the organization.', title='Org Id')
16111
16192
  created_at: Optional[AwareDatetime] = Field(None, title='Created At')
@@ -16127,11 +16208,33 @@ class ToolSearchToolInvocationsResponseToolInvocationInstance(BaseModel):
16127
16208
  tool_id: str = Field(
16128
16209
  ..., description='The ID of the tool that was invoked.', title='Tool Id'
16129
16210
  )
16130
- tool_version: AmigoLibMongoCollectionsToolInvocationToolInvocationVersion = Field(
16211
+ tool_version: AmigoLibMongoCollectionsToolVersionToolVersionVersion = Field(
16131
16212
  ..., description='The version of the tool that was invoked.'
16132
16213
  )
16133
16214
 
16134
16215
 
16216
+ class ToolSearchToolInvocationsResponse(BaseModel):
16217
+ tool_invocations: List[ToolGetToolInvocationsResponseToolInvocationInstance] = (
16218
+ Field(
16219
+ ..., description='The list of tool invocations.', title='Tool Invocations'
16220
+ )
16221
+ )
16222
+
16223
+
16224
+ class UserGetUsersResponse(BaseModel):
16225
+ users: List[UserGetUsersResponseUserInstance] = Field(
16226
+ ..., description='Users in this organization.', title='Users'
16227
+ )
16228
+ has_more: bool = Field(
16229
+ ..., description='Whether there are more users to retrieve.', title='Has More'
16230
+ )
16231
+ continuation_token: Optional[int] = Field(
16232
+ ...,
16233
+ description='A token to supply to the next request to retrieve the next page of users. Only populated if `has_more` is `True`.',
16234
+ title='Continuation Token',
16235
+ )
16236
+
16237
+
16135
16238
  class SimulationUnitTestSetRunInstance(BaseModel):
16136
16239
  org_id: str = Field(..., title='Org Id')
16137
16240
  id: str = Field(..., title='Id')
@@ -16231,7 +16334,7 @@ class SimulationGetSimulationUnitTestSetRunsResponse(BaseModel):
16231
16334
 
16232
16335
 
16233
16336
  class ToolGetToolInvocationsResponse(BaseModel):
16234
- tool_invocations: List[ToolSearchToolInvocationsResponseToolInvocationInstance] = (
16337
+ tool_invocations: List[ToolGetToolInvocationsResponseToolInvocationInstance] = (
16235
16338
  Field(
16236
16339
  ..., description='The list of tool invocations.', title='Tool Invocations'
16237
16340
  )
@@ -16246,11 +16349,3 @@ class ToolGetToolInvocationsResponse(BaseModel):
16246
16349
  description='The continuation token to retrieve the next page of tool invocations, or null if there are no more tool invocations.',
16247
16350
  title='Continuation Token',
16248
16351
  )
16249
-
16250
-
16251
- class ToolSearchToolInvocationsResponse(BaseModel):
16252
- tool_invocations: List[ToolSearchToolInvocationsResponseToolInvocationInstance] = (
16253
- Field(
16254
- ..., description='The list of tool invocations.', title='Tool Invocations'
16255
- )
16256
- )