amigo_sdk 0.105.0__py3-none-any.whl → 0.106.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.
amigo_sdk/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
- __version__ = "0.105.0"
1
+ __version__ = "0.106.0"
2
2
  from .sdk_client import AmigoClient, AsyncAmigoClient
3
3
 
4
4
  __all__ = ["__version__", "AmigoClient", "AsyncAmigoClient"]
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: <stdin>
3
- # timestamp: 2026-01-13T00:32:47+00:00
3
+ # timestamp: 2026-01-25T17:11:35+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -198,10 +198,15 @@ class EngageUserDynamicBehaviorOverrideEvent(BaseModel):
198
198
  type: Literal['engage-user-dynamic-behavior-override'] = Field(
199
199
  'engage-user-dynamic-behavior-override', title='Type'
200
200
  )
201
- overriding: bool = Field(
201
+ overriding_instructions: bool = Field(
202
202
  ...,
203
- description="Whether the dynamic behavior set's instructions are overriding the existing instructions of the current state.",
204
- title='Overriding',
203
+ description='Whether the dynamic behavior set is overriding instructions during this interaction.',
204
+ title='Overriding Instructions',
205
+ )
206
+ overriding_tool_candidates: bool = Field(
207
+ ...,
208
+ description='Whether the dynamic behavior set is overriding the tool candidates during this interaction.',
209
+ title='Overriding Tool Candidates',
205
210
  )
206
211
 
207
212
 
@@ -547,10 +552,15 @@ class NavigateStateMachineDynamicBehaviorOverrideEvent(BaseModel):
547
552
  type: Literal['navigate-state-machine-dynamic-behavior-override'] = Field(
548
553
  'navigate-state-machine-dynamic-behavior-override', title='Type'
549
554
  )
550
- overriding: bool = Field(
555
+ overriding_instructions: bool = Field(
551
556
  ...,
552
- description="Whether the dynamic behavior set's instructions are overriding the existing instructions of the current state.",
553
- title='Overriding',
557
+ description='Whether the dynamic behavior set is overriding instructions during this interaction.',
558
+ title='Overriding Instructions',
559
+ )
560
+ overriding_tool_candidates: bool = Field(
561
+ ...,
562
+ description='Whether the dynamic behavior set is overriding the tool candidates during this interaction.',
563
+ title='Overriding Tool Candidates',
554
564
  )
555
565
 
556
566
 
@@ -759,10 +769,6 @@ class Prompt(BaseModel):
759
769
  )
760
770
 
761
771
 
762
- class Queries(RootModel[list[str]]):
763
- root: list[str] = Field(..., min_length=1, title='Queries')
764
-
765
-
766
772
  class NextState4(RootModel[tuple[str, str]]):
767
773
  root: tuple[str, str] = Field(
768
774
  ...,
@@ -1160,11 +1166,6 @@ class ToolCallStateTransitionLog(BaseModel):
1160
1166
  )
1161
1167
 
1162
1168
 
1163
- class ToolRepo(Enum):
1164
- main = 'main'
1165
- team = 'team'
1166
-
1167
-
1168
1169
  class ScenarioVersionInfo(RootModel[tuple[str, int]]):
1169
1170
  root: tuple[str, int] = Field(
1170
1171
  ...,
@@ -1380,11 +1381,6 @@ class MongoCollectionsDynamicBehaviorSetVersionDynamicBehaviorSetVersionChangeTo
1380
1381
  )
1381
1382
 
1382
1383
 
1383
- class MongoCollectionsMetricMetricTag(BaseModel):
1384
- key: str = Field(..., title='Key')
1385
- value: str | None = Field(..., title='Value')
1386
-
1387
-
1388
1384
  class MongoCollectionsMetricMetricUserInfo(
1389
1385
  MongoCollectionsDynamicBehaviorSetDynamicBehaviorSetUserInfo
1390
1386
  ):
@@ -1468,6 +1464,11 @@ class MongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo(
1468
1464
  pass
1469
1465
 
1470
1466
 
1467
+ class MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag(BaseModel):
1468
+ key: str = Field(..., title='Key')
1469
+ value: str | None = Field(..., title='Value')
1470
+
1471
+
1471
1472
  class MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUnitTestRunDescriptor(
1472
1473
  BaseModel
1473
1474
  ):
@@ -1624,10 +1625,12 @@ class ConversationCreateConversationRequest(BaseModel):
1624
1625
  description='The type of the `initial_message`. Can only be specified if `initial_message` is provided.',
1625
1626
  title='Initial Message Type',
1626
1627
  )
1627
- tags: dict[StrippedNonemptyStringWS, StrippedNonemptyStringWS | None] = Field(
1628
- ...,
1629
- description='A list of tags for the conversation. Both the key and the value can only contain alphanumeric characters, underscores, or spaces.',
1630
- title='Tags',
1628
+ tags: dict[StrippedNonemptyStringWS, StrippedNonemptyStringWS | None] | None = (
1629
+ Field(
1630
+ {},
1631
+ description='A list of tags for the conversation. Both the key and the value can only contain alphanumeric characters, underscores, or spaces.',
1632
+ title='Tags',
1633
+ )
1631
1634
  )
1632
1635
 
1633
1636
 
@@ -10586,11 +10589,6 @@ class OrganizationCreateOrganizationRequestPreferences(BaseModel):
10586
10589
  )
10587
10590
 
10588
10591
 
10589
- class OrganizationCreateOrganizationRequestUserDimension(BaseModel):
10590
- description: str = Field(..., min_length=1)
10591
- tags: list[PydanticBaseModelStrippedNonemptyString1] = Field(..., title='Tags')
10592
-
10593
-
10594
10592
  class OrganizationCreateOrganizationResponse(BaseModel):
10595
10593
  org_id: str = Field(
10596
10594
  ...,
@@ -10765,23 +10763,17 @@ class OrganizationGetUserDimensionsResponse(BaseModel):
10765
10763
  )
10766
10764
 
10767
10765
 
10768
- class UserDimensions(
10769
- RootModel[list[OrganizationCreateOrganizationRequestUserDimension]]
10770
- ):
10771
- root: list[OrganizationCreateOrganizationRequestUserDimension] = Field(
10772
- ...,
10773
- description='User dimensions for the organization. If not set or `null`, this field is not updated.',
10774
- min_length=1,
10775
- title='User Dimensions',
10776
- )
10777
-
10778
-
10779
10766
  class OrganizationModifyOrganizationRequestPreferences(
10780
10767
  OrganizationCreateOrganizationRequestPreferences
10781
10768
  ):
10782
10769
  pass
10783
10770
 
10784
10771
 
10772
+ class OrganizationModifyOrganizationRequestUserDimension(BaseModel):
10773
+ description: str = Field(..., min_length=1)
10774
+ tags: list[PydanticBaseModelStrippedNonemptyString1] = Field(..., title='Tags')
10775
+
10776
+
10785
10777
  class RoleAssignRoleRequest(BaseModel):
10786
10778
  user_id: str = Field(
10787
10779
  ...,
@@ -10810,13 +10802,6 @@ class RoleModifyRoleResponse(BaseModel):
10810
10802
  )
10811
10803
 
10812
10804
 
10813
- class ServiceCreateServiceRequestVersionSetLLMConfig(BaseModel):
10814
- llm_name: LLMType
10815
- params: dict[str, Any] | None = Field(
10816
- {}, description='LLM-specific parameters to use.', title='Params'
10817
- )
10818
-
10819
-
10820
10805
  class ServiceCreateServiceResponse(BaseModel):
10821
10806
  id: str = Field(..., description='The ID of the newly created service.', title='Id')
10822
10807
 
@@ -10892,6 +10877,13 @@ class ServiceUpdateServiceRequest(BaseModel):
10892
10877
  )
10893
10878
 
10894
10879
 
10880
+ class ServiceUpsertServiceVersionSetRequestVersionSetLLMConfig(BaseModel):
10881
+ llm_name: LLMType
10882
+ params: dict[str, Any] | None = Field(
10883
+ {}, description='LLM-specific parameters to use.', title='Params'
10884
+ )
10885
+
10886
+
10895
10887
  class SimulationCreateSimulationPersonaRequestInitialVersion(BaseModel):
10896
10888
  background: str = Field(
10897
10889
  ..., description='The background of the simulation persona.', min_length=1
@@ -10997,16 +10989,6 @@ class SimulationCreateSimulationUnitTestResponse(BaseModel):
10997
10989
  )
10998
10990
 
10999
10991
 
11000
- class SimulationCreateSimulationUnitTestSetRequestUnitTestRunDescriptor(BaseModel):
11001
- unit_test_id: str = Field(..., pattern='^[a-f0-9]{24}$', title='Unit Test Id')
11002
- run_count: int = Field(
11003
- ...,
11004
- description='The number of times to run the unit test.',
11005
- gt=0,
11006
- title='Run Count',
11007
- )
11008
-
11009
-
11010
10992
  class SimulationCreateSimulationUnitTestSetResponse(BaseModel):
11011
10993
  simulation_unit_test_set_id: str = Field(
11012
10994
  ...,
@@ -11320,35 +11302,13 @@ class RunCount(RootModel[int]):
11320
11302
  )
11321
11303
 
11322
11304
 
11323
- class UnitTestRuns(
11324
- RootModel[list[SimulationCreateSimulationUnitTestSetRequestUnitTestRunDescriptor]]
11325
- ):
11326
- root: list[SimulationCreateSimulationUnitTestSetRequestUnitTestRunDescriptor] = (
11327
- Field(
11328
- ...,
11329
- description='The unit test runs that are part of this set.',
11330
- min_length=1,
11331
- title='Unit Test Runs',
11332
- )
11333
- )
11334
-
11335
-
11336
- class SimulationUpdateSimulationUnitTestSetRequest(BaseModel):
11337
- name: PydanticBaseModelStrippedNonemptyString1 | None = Field(
11338
- None, description='The name of the simulation unit test set.'
11339
- )
11340
- description: PydanticBaseModelStrippedNonemptyString1 | FieldNotSet | None = Field(
11341
- default_factory=lambda: PydanticBaseModelStrippedNonemptyString1({}),
11342
- description='The description of the simulation unit test set. If not specified or an empty object is provided, the description will not be updated.',
11343
- title='Description',
11344
- )
11345
- unit_test_runs: UnitTestRuns | None = Field(
11346
- None,
11347
- description='The unit test runs that are part of this set.',
11348
- title='Unit Test Runs',
11349
- )
11350
- tags: dict[str, str | None] | None = Field(
11351
- None, description='The tags of the simulation unit test set.', title='Tags'
11305
+ class SimulationUpdateSimulationUnitTestSetRequestUnitTestRunDescriptor(BaseModel):
11306
+ unit_test_id: str = Field(..., pattern='^[a-f0-9]{24}$', title='Unit Test Id')
11307
+ run_count: int = Field(
11308
+ ...,
11309
+ description='The number of times to run the unit test.',
11310
+ gt=0,
11311
+ title='Run Count',
11352
11312
  )
11353
11313
 
11354
11314
 
@@ -11385,6 +11345,22 @@ class ToolGetToolsResponseFilterValues(BaseModel):
11385
11345
  )
11386
11346
 
11387
11347
 
11348
+ class InvocationMode(Enum):
11349
+ regular = 'regular'
11350
+ conversation_simulation = 'conversation-simulation'
11351
+
11352
+
11353
+ class ToolInvokeToolVersionRequestInput(BaseModel):
11354
+ input_parameters: dict[str, Any] = Field(
11355
+ ...,
11356
+ description='The input parameters for the tool invocation.',
11357
+ title='Input Parameters',
11358
+ )
11359
+ invocation_mode: InvocationMode = Field(
11360
+ ..., description='The mode of invocation.', title='Invocation Mode'
11361
+ )
11362
+
11363
+
11388
11364
  class ToolModifyToolRequest(BaseModel):
11389
11365
  description: PydanticBaseModelStrippedNonemptyString1 | None = Field(
11390
11366
  None, description='A description of this tool. Only updates if not-null.'
@@ -11405,11 +11381,6 @@ class BumpType(Enum):
11405
11381
 
11406
11382
 
11407
11383
  class ToolPublishToolVersionRequest(BaseModel):
11408
- repo: ToolRepo = Field(
11409
- ...,
11410
- description="The repo to publish the tool version from. If `team`, then it's published from the repo of the organization's Azure DevOps team. If `main`, then it's published\nfrom the `tools-main` repo.",
11411
- title='Repo',
11412
- )
11413
11384
  project_path: str = Field(
11414
11385
  ...,
11415
11386
  description='The directory in the tools repo that contains the `pyproject.toml` file corresponding to the tool version to publish.',
@@ -11429,19 +11400,34 @@ class ToolPublishToolVersionResponse(BaseModel):
11429
11400
  )
11430
11401
 
11431
11402
 
11432
- class InvocationMode(Enum):
11433
- regular = 'regular'
11434
- conversation_simulation = 'conversation-simulation'
11435
-
11436
-
11437
- class ToolTestToolRequestInput(BaseModel):
11438
- input_parameters: dict[str, Any] = Field(
11403
+ class ToolTestToolRequest(BaseModel):
11404
+ inputs: list[ToolInvokeToolVersionRequestInput] = Field(
11439
11405
  ...,
11440
- description='The input parameters for the tool invocation.',
11441
- title='Input Parameters',
11406
+ description='The list of inputs for the tool invocation.',
11407
+ max_length=10,
11408
+ min_length=1,
11409
+ title='Inputs',
11442
11410
  )
11443
- invocation_mode: InvocationMode = Field(
11444
- ..., description='The mode of invocation.', title='Invocation Mode'
11411
+ commit_branch: str = Field(
11412
+ ...,
11413
+ description='The branch in the tools repo whose tip will be tested.',
11414
+ title='Commit Branch',
11415
+ )
11416
+ project_path: str = Field(
11417
+ ...,
11418
+ description='The directory in the tools repo that contains the `pyproject.toml` file corresponding to the tool version to publish.',
11419
+ pattern='^[-\\w\\d_/]+$',
11420
+ title='Project Path',
11421
+ )
11422
+ required_envvars: dict[str, str] = Field(
11423
+ ...,
11424
+ description='The environment variables required for the tool to run.',
11425
+ title='Required Envvars',
11426
+ )
11427
+ required_secret_envvars: dict[str, str] = Field(
11428
+ ...,
11429
+ description='The secret environment variables required for the tool to run.',
11430
+ title='Required Secret Envvars',
11445
11431
  )
11446
11432
 
11447
11433
 
@@ -11511,7 +11497,7 @@ class UserGetMemoriesResponse(BaseModel):
11511
11497
  )
11512
11498
 
11513
11499
 
11514
- class UserGetUsersResponseUserInstanceUserStats(BaseModel):
11500
+ class UserSearchUsersResponseUserInstanceUserStats(BaseModel):
11515
11501
  num_conversations: int = Field(
11516
11502
  ...,
11517
11503
  description='The number of conversations the user has created.',
@@ -11529,31 +11515,6 @@ class UserGetUsersResponseUserInstanceUserStats(BaseModel):
11529
11515
  )
11530
11516
 
11531
11517
 
11532
- class UserSearchUsersResponseUserInstance(BaseModel):
11533
- org_id: str = Field(
11534
- ...,
11535
- description='The ID of the organization that this user belongs to.',
11536
- title='Org Id',
11537
- )
11538
- user_id: str = Field(
11539
- ..., description='The identifier of the user.', title='User Id'
11540
- )
11541
- first_name: str = Field(
11542
- ..., description='The first name of the user.', title='First Name'
11543
- )
11544
- last_name: str = Field(
11545
- ..., description='The last name of the user.', title='Last Name'
11546
- )
11547
- email: str = Field(..., description='Email of the user.', title='Email')
11548
- user_stats: UserGetUsersResponseUserInstanceUserStats = Field(
11549
- ..., description="Statistics about the user's usage of the Amigo platform."
11550
- )
11551
- role: str = Field(..., description='The ID of the role of the user.', title='Role')
11552
- preferences: MongoCollectionsUserUserPreferences = Field(
11553
- ..., description='The preferences of the user.'
11554
- )
11555
-
11556
-
11557
11518
  class UserSignInWithApiKeyResponse(BaseModel):
11558
11519
  id_token: str = Field(
11559
11520
  ...,
@@ -11968,7 +11929,7 @@ class GetConversationMessagesParametersQuery(BaseModel):
11968
11929
  title='Id',
11969
11930
  )
11970
11931
  message_type: list[MessageType] | None = Field(
11971
- ['external-event', 'agent-message', 'user-message'],
11932
+ ['user-message', 'agent-message', 'external-event'],
11972
11933
  description='The type of messages to retrieve.',
11973
11934
  title='Message Type',
11974
11935
  )
@@ -13304,7 +13265,11 @@ class DecisionStateInput(BaseModel):
13304
13265
  decision_guidelines: list[PydanticBaseModelStrippedNonemptyString1] = Field(
13305
13266
  ..., title='Decision Guidelines'
13306
13267
  )
13307
- objective: str = Field(..., min_length=1)
13268
+ objective: str = Field(
13269
+ ...,
13270
+ description='The objective the agent is trying to achieve in this decision state.',
13271
+ min_length=1,
13272
+ )
13308
13273
  tool_call_specs: list[
13309
13274
  OrganizationCreateServiceHierarchicalStateMachineVersionRequestToolCallSpec
13310
13275
  ] = Field(..., title='Tool Call Specs')
@@ -13482,6 +13447,12 @@ class NumericalMetricSuccessCriterion(BaseModel):
13482
13447
  threshold: float = Field(..., title='Threshold')
13483
13448
 
13484
13449
 
13450
+ class Queries(RootModel[list[PydanticBaseModelStrippedNonemptyString1]]):
13451
+ root: list[PydanticBaseModelStrippedNonemptyString1] = Field(
13452
+ ..., min_length=1, title='Queries'
13453
+ )
13454
+
13455
+
13485
13456
  class RecallStateInput(BaseModel):
13486
13457
  type: Literal['recall'] = Field(..., title='Type')
13487
13458
  name: str = Field(..., pattern='^[A-Za-z0-9_]+$')
@@ -13631,9 +13602,14 @@ class ServiceInstance(BaseModel):
13631
13602
  agent_id: str = Field(
13632
13603
  ..., description='The ID of the agent that this service uses.', title='Agent Id'
13633
13604
  )
13634
- tags: list[MongoCollectionsMetricMetricTag] = Field(
13605
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
13635
13606
  ..., description='The tags of the service.', title='Tags'
13636
13607
  )
13608
+ keyterms: list[str] = Field(
13609
+ ...,
13610
+ description='A list of keyterms that are easy to get wrong during audio transcriptions that tend to occur commonly in audio sessions using this service.',
13611
+ title='Keyterms',
13612
+ )
13637
13613
 
13638
13614
 
13639
13615
  class SimulationConversationInvocationSource(BaseModel):
@@ -13684,7 +13660,7 @@ class SimulationUnitTestSet(BaseModel):
13684
13660
  description='Whether the unit test set has been deleted.',
13685
13661
  title='Is Deleted',
13686
13662
  )
13687
- tags: list[MongoCollectionsMetricMetricTag] = Field(
13663
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
13688
13664
  ..., description='The tags of the simulation unit test set.', title='Tags'
13689
13665
  )
13690
13666
  creator: MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUserInfo
@@ -13721,7 +13697,7 @@ class SimulationUnitTestSetInstance(BaseModel):
13721
13697
  description='Whether the unit test set has been deleted.',
13722
13698
  title='Is Deleted',
13723
13699
  )
13724
- tags: list[MongoCollectionsMetricMetricTag] = Field(
13700
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
13725
13701
  ..., description='The tags of the simulation unit test set.', title='Tags'
13726
13702
  )
13727
13703
  creator: MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetUserInfo
@@ -13849,7 +13825,7 @@ class ToolInstance(BaseModel):
13849
13825
  description='A list of encrypted environment variables that some versions of this tool uses.',
13850
13826
  title='Secret Envvars',
13851
13827
  )
13852
- tags: list[MongoCollectionsMetricMetricTag] = Field(
13828
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
13853
13829
  ..., description='The tags of the simulation persona.', title='Tags'
13854
13830
  )
13855
13831
 
@@ -13880,11 +13856,6 @@ class ToolVersionInstance(BaseModel):
13880
13856
  input_schema: dict[str, Any] = Field(
13881
13857
  ..., description='The input schema of the tool.', title='Input Schema'
13882
13858
  )
13883
- tool_repo: ToolRepo = Field(
13884
- ...,
13885
- description='Whether this tool is published from the main repository or the team-specific repository.',
13886
- title='Tool Repo',
13887
- )
13888
13859
  tool_commit_hash: str = Field(
13889
13860
  ...,
13890
13861
  description='The commit hash of the tool within the repository.',
@@ -13911,6 +13882,7 @@ class ToolVersionInstance(BaseModel):
13911
13882
  description='Whether the tool version is deprecated. Deprecated tool versions are not usable and do not participate in version resolution.',
13912
13883
  title='Deprecated',
13913
13884
  )
13885
+ tool_repo: Literal['team'] = Field('team', title='Tool Repo')
13914
13886
 
13915
13887
 
13916
13888
  class UnitTestRunResult(BaseModel):
@@ -14234,7 +14206,7 @@ class OrganizationCreateOrganizationRequest(BaseModel):
14234
14206
  description='Additional descriptions of the services offered by this organization that is displayed below `main_description` in a smaller font.',
14235
14207
  min_length=1,
14236
14208
  )
14237
- user_dimensions: list[OrganizationCreateOrganizationRequestUserDimension] = Field(
14209
+ user_dimensions: list[OrganizationModifyOrganizationRequestUserDimension] = Field(
14238
14210
  ...,
14239
14211
  description='User dimensions for the organization.',
14240
14212
  title='User Dimensions',
@@ -14404,6 +14376,17 @@ class OrganizationGetApiKeysResponse(BaseModel):
14404
14376
  )
14405
14377
 
14406
14378
 
14379
+ class UserDimensions(
14380
+ RootModel[list[OrganizationModifyOrganizationRequestUserDimension]]
14381
+ ):
14382
+ root: list[OrganizationModifyOrganizationRequestUserDimension] = Field(
14383
+ ...,
14384
+ description='User dimensions for the organization. If not set or `null`, this field is not updated.',
14385
+ min_length=1,
14386
+ title='User Dimensions',
14387
+ )
14388
+
14389
+
14407
14390
  class OrganizationModifyOrganizationRequest(BaseModel):
14408
14391
  title: PydanticBaseModelStrippedNonemptyString1 | None = Field(
14409
14392
  None,
@@ -14499,9 +14482,9 @@ class ServiceCreateServiceRequestVersionSet(BaseModel):
14499
14482
  description='The version number of the state machine to be used. If None, the latest state machine version will be used.',
14500
14483
  title='Service Hierarchical State Machine Version Number',
14501
14484
  )
14502
- llm_model_preferences: dict[str, ServiceCreateServiceRequestVersionSetLLMConfig] = (
14503
- Field(..., title='Llm Model Preferences')
14504
- )
14485
+ llm_model_preferences: dict[
14486
+ str, ServiceUpsertServiceVersionSetRequestVersionSetLLMConfig
14487
+ ] = Field(..., title='Llm Model Preferences')
14505
14488
 
14506
14489
 
14507
14490
  class ServiceGetServicesResponse(BaseModel):
@@ -14579,7 +14562,7 @@ class SimulationCreateSimulationUnitTestSetRequest(BaseModel):
14579
14562
  ..., description='The description of the simulation unit test set.'
14580
14563
  )
14581
14564
  unit_test_runs: list[
14582
- SimulationCreateSimulationUnitTestSetRequestUnitTestRunDescriptor
14565
+ SimulationUpdateSimulationUnitTestSetRequestUnitTestRunDescriptor
14583
14566
  ] = Field(
14584
14567
  ...,
14585
14568
  description='The unit test runs that are part of this set.',
@@ -14683,6 +14666,38 @@ class SimulationUpdateSimulationUnitTestRequestSuccessCriterion(
14683
14666
  pass
14684
14667
 
14685
14668
 
14669
+ class UnitTestRuns(
14670
+ RootModel[list[SimulationUpdateSimulationUnitTestSetRequestUnitTestRunDescriptor]]
14671
+ ):
14672
+ root: list[SimulationUpdateSimulationUnitTestSetRequestUnitTestRunDescriptor] = (
14673
+ Field(
14674
+ ...,
14675
+ description='The unit test runs that are part of this set.',
14676
+ min_length=1,
14677
+ title='Unit Test Runs',
14678
+ )
14679
+ )
14680
+
14681
+
14682
+ class SimulationUpdateSimulationUnitTestSetRequest(BaseModel):
14683
+ name: PydanticBaseModelStrippedNonemptyString1 | None = Field(
14684
+ None, description='The name of the simulation unit test set.'
14685
+ )
14686
+ description: PydanticBaseModelStrippedNonemptyString1 | FieldNotSet | None = Field(
14687
+ default_factory=lambda: PydanticBaseModelStrippedNonemptyString1({}),
14688
+ description='The description of the simulation unit test set. If not specified or an empty object is provided, the description will not be updated.',
14689
+ title='Description',
14690
+ )
14691
+ unit_test_runs: UnitTestRuns | None = Field(
14692
+ None,
14693
+ description='The unit test runs that are part of this set.',
14694
+ title='Unit Test Runs',
14695
+ )
14696
+ tags: dict[str, str | None] | None = Field(
14697
+ None, description='The tags of the simulation unit test set.', title='Tags'
14698
+ )
14699
+
14700
+
14686
14701
  class ToolGetToolVersionsResponse(BaseModel):
14687
14702
  tool_versions: list[ToolVersionInstance] = Field(
14688
14703
  ...,
@@ -14724,7 +14739,7 @@ class ToolGetToolsResponse(BaseModel):
14724
14739
 
14725
14740
 
14726
14741
  class ToolInvokeToolVersionRequest(BaseModel):
14727
- inputs: list[ToolTestToolRequestInput] = Field(
14742
+ inputs: list[ToolInvokeToolVersionRequestInput] = Field(
14728
14743
  ...,
14729
14744
  description='The list of inputs for the tool invocation.',
14730
14745
  max_length=10,
@@ -14748,37 +14763,6 @@ class ToolModifyToolEnvvarsRequest(BaseModel):
14748
14763
  deletes: list[DeleteRequest] | None = Field(default_factory=list, title='Deletes')
14749
14764
 
14750
14765
 
14751
- class ToolTestToolRequest(BaseModel):
14752
- inputs: list[ToolTestToolRequestInput] = Field(
14753
- ...,
14754
- description='The list of inputs for the tool invocation.',
14755
- max_length=10,
14756
- min_length=1,
14757
- title='Inputs',
14758
- )
14759
- commit_branch: str = Field(
14760
- ...,
14761
- description='The branch in the tools repo whose tip will be tested.',
14762
- title='Commit Branch',
14763
- )
14764
- project_path: str = Field(
14765
- ...,
14766
- description='The directory in the tools repo that contains the `pyproject.toml` file corresponding to the tool version to publish.',
14767
- pattern='^[-\\w\\d_/]+$',
14768
- title='Project Path',
14769
- )
14770
- required_envvars: dict[str, str] = Field(
14771
- ...,
14772
- description='The environment variables required for the tool to run.',
14773
- title='Required Envvars',
14774
- )
14775
- required_secret_envvars: dict[str, str] = Field(
14776
- ...,
14777
- description='The secret environment variables required for the tool to run.',
14778
- title='Required Secret Envvars',
14779
- )
14780
-
14781
-
14782
14766
  class ToolTestToolResponse(ToolInvokeToolVersionResponse):
14783
14767
  pass
14784
14768
 
@@ -14820,23 +14804,28 @@ class UserGetUserModelResponse(BaseModel):
14820
14804
  )
14821
14805
 
14822
14806
 
14823
- class UserGetUsersResponse(BaseModel):
14824
- users: list[UserSearchUsersResponseUserInstance] = Field(
14825
- ..., description='Users in this organization.', title='Users'
14807
+ class UserSearchUsersResponseUserInstance(BaseModel):
14808
+ org_id: str = Field(
14809
+ ...,
14810
+ description='The ID of the organization that this user belongs to.',
14811
+ title='Org Id',
14826
14812
  )
14827
- has_more: bool = Field(
14828
- ..., description='Whether there are more users to retrieve.', title='Has More'
14813
+ user_id: str = Field(
14814
+ ..., description='The identifier of the user.', title='User Id'
14829
14815
  )
14830
- continuation_token: int | None = Field(
14831
- ...,
14832
- description='A token to supply to the next request to retrieve the next page of users. Only populated if `has_more` is `True`.',
14833
- title='Continuation Token',
14816
+ first_name: str = Field(
14817
+ ..., description='The first name of the user.', title='First Name'
14834
14818
  )
14835
-
14836
-
14837
- class UserSearchUsersResponse(BaseModel):
14838
- users: list[UserSearchUsersResponseUserInstance] = Field(
14839
- ..., description='Users in this organization.', title='Users'
14819
+ last_name: str = Field(
14820
+ ..., description='The last name of the user.', title='Last Name'
14821
+ )
14822
+ email: str = Field(..., description='Email of the user.', title='Email')
14823
+ user_stats: UserSearchUsersResponseUserInstanceUserStats = Field(
14824
+ ..., description="Statistics about the user's usage of the Amigo platform."
14825
+ )
14826
+ role: str = Field(..., description='The ID of the role of the user.', title='Role')
14827
+ preferences: MongoCollectionsUserUserPreferences = Field(
14828
+ ..., description='The preferences of the user.'
14840
14829
  )
14841
14830
 
14842
14831
 
@@ -14900,6 +14889,9 @@ class ConversationInstance(BaseModel):
14900
14889
  description='The number of messages in this conversation.',
14901
14890
  title='Num Messages',
14902
14891
  )
14892
+ tags: dict[str, str | None] = Field(
14893
+ ..., description='The tags associated with this conversation.', title='Tags'
14894
+ )
14903
14895
 
14904
14896
 
14905
14897
  class CurrentAgentActionEvent(BaseModel):
@@ -14975,7 +14967,7 @@ class Metric(BaseModel):
14975
14967
  additional_notes: str | None = Field(
14976
14968
  ..., description='Additional notes about the metric.', title='Additional Notes'
14977
14969
  )
14978
- tags: list[MongoCollectionsMetricMetricTag] = Field(
14970
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
14979
14971
  ..., description='The tags of the metric.', title='Tags'
14980
14972
  )
14981
14973
  creator: MongoCollectionsMetricMetricUserInfo = Field(
@@ -15048,7 +15040,7 @@ class MetricInstance(BaseModel):
15048
15040
  additional_notes: str | None = Field(
15049
15041
  ..., description='Additional notes about the metric.', title='Additional Notes'
15050
15042
  )
15051
- tags: list[MongoCollectionsMetricMetricTag] = Field(
15043
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
15052
15044
  ..., description='The tags of the metric.', title='Tags'
15053
15045
  )
15054
15046
  creator: MongoCollectionsMetricMetricUserInfo = Field(
@@ -15144,7 +15136,7 @@ class SimulationUnitTest(BaseModel):
15144
15136
  is_deleted: bool = Field(
15145
15137
  ..., description='Whether the unit test has been deleted.', title='Is Deleted'
15146
15138
  )
15147
- tags: list[MongoCollectionsMetricMetricTag] = Field(
15139
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
15148
15140
  ..., description='The tags of the simulation persona.', title='Tags'
15149
15141
  )
15150
15142
  creator: MongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
@@ -15189,7 +15181,7 @@ class SimulationUnitTestInstance(BaseModel):
15189
15181
  is_deleted: bool = Field(
15190
15182
  ..., description='Whether the unit test has been deleted.', title='Is Deleted'
15191
15183
  )
15192
- tags: list[MongoCollectionsMetricMetricTag] = Field(
15184
+ tags: list[MongoCollectionsSimulationUnitTestSetSimulationUnitTestSetTag] = Field(
15193
15185
  ..., description='The tags of the simulation persona.', title='Tags'
15194
15186
  )
15195
15187
  creator: MongoCollectionsSimulationUnitTestSimulationUnitTestUserInfo
@@ -15483,8 +15475,8 @@ class ServiceCreateServiceRequest(BaseModel):
15483
15475
  None,
15484
15476
  description='The `release` version set to use for this service. If not specified, the `release` version set will be the same as the `edge` version set, which uses the\nlatest agent and state machine versions with no model preference.',
15485
15477
  )
15486
- keyterms: list[StrippedNonemptyStringAZAZ02] | None = Field(
15487
- default_factory=list,
15478
+ keyterms: list[StrippedNonemptyStringAZAZ02] = Field(
15479
+ ...,
15488
15480
  description='A list of keyterms that are easy to get wrong during audio transcriptions that tend to occur commonly in audio sessions using this service.',
15489
15481
  max_length=20,
15490
15482
  title='Keyterms',
@@ -15656,6 +15648,26 @@ class ToolSearchToolInvocationsResponse(BaseModel):
15656
15648
  )
15657
15649
 
15658
15650
 
15651
+ class UserGetUsersResponse(BaseModel):
15652
+ users: list[UserSearchUsersResponseUserInstance] = Field(
15653
+ ..., description='Users in this organization.', title='Users'
15654
+ )
15655
+ has_more: bool = Field(
15656
+ ..., description='Whether there are more users to retrieve.', title='Has More'
15657
+ )
15658
+ continuation_token: int | None = Field(
15659
+ ...,
15660
+ description='A token to supply to the next request to retrieve the next page of users. Only populated if `has_more` is `True`.',
15661
+ title='Continuation Token',
15662
+ )
15663
+
15664
+
15665
+ class UserSearchUsersResponse(BaseModel):
15666
+ users: list[UserSearchUsersResponseUserInstance] = Field(
15667
+ ..., description='Users in this organization.', title='Users'
15668
+ )
15669
+
15670
+
15659
15671
  class ServiceHierarchicalStateMachineInstance(BaseModel):
15660
15672
  id: str = Field(..., description='The ID of the state machine version.', title='Id')
15661
15673
  org_id: str = Field(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: amigo_sdk
3
- Version: 0.105.0
3
+ Version: 0.106.0
4
4
  Summary: Amigo AI Python SDK
5
5
  Author: Amigo AI
6
6
  License-File: LICENSE
@@ -2,7 +2,7 @@ scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  scripts/aliases.json,sha256=c1_bkZyvNDQ8iMrKtUuZQqdP87GdLnRPrb3wjX533eQ,322
3
3
  scripts/check.py,sha256=ikFavw1IjX51FNjO-kIzXjYdep3on0dKZHYvPElPFtc,2872
4
4
  scripts/gen_models.py,sha256=c4J_gHYQIBL3CcKg5z8oUusLvPePytfvLdZ7STHBcNk,3553
5
- amigo_sdk/__init__.py,sha256=onI2IGFvocw3pliJoMJt5iaZsaArF_6ZmKuN3lgcsBg,140
5
+ amigo_sdk/__init__.py,sha256=wLIyTbS6p1AORzx4gRJcJU7p1ouM_onLrEYPLCslyCc,140
6
6
  amigo_sdk/_retry_utils.py,sha256=VbA_Uwv268J80d11R9XfnCjZiV-NwE1aXRsSlRjjRio,2108
7
7
  amigo_sdk/auth.py,sha256=WaM9PcEcnaC6CzNsgRKueHkdSAxNbRylzpR_3Q6guQ0,1765
8
8
  amigo_sdk/config.py,sha256=0eZIo-hcJ8ODftKAr-mwB-FGJxGO5PT5T4dRpyWPqAg,1491
@@ -10,13 +10,13 @@ amigo_sdk/errors.py,sha256=Yn12AxIQ6zE9jnGLWO0MUVbBsmw77Kzh82AijyreOkA,4818
10
10
  amigo_sdk/http_client.py,sha256=tfMXHqMTmlz2ja7aJhOVgbwAiJNlKCzPcK4UGNqXHO8,13488
11
11
  amigo_sdk/models.py,sha256=V-G6iL43_ZNOPDcatCJCSszGWGz-nzp_RSyGNm-rBAc,45
12
12
  amigo_sdk/sdk_client.py,sha256=5nj8hzjHSFRs9JMNabdYIhQAcFE2G1jI_r7SHVGr9No,6106
13
- amigo_sdk/generated/model.py,sha256=29a4CeT00NctL2CSmRrGNhYqVV4tei4qWhNf07ceo1w,443870
13
+ amigo_sdk/generated/model.py,sha256=YCZMdsuAettY2KGlFfn0sWifwqeZPYyf627ruLE7RkY,444763
14
14
  amigo_sdk/resources/conversation.py,sha256=X47PbPA6NqdkqXgxAPOjlO1E0W7t695tn1tPWSikMOk,14807
15
15
  amigo_sdk/resources/organization.py,sha256=yX4UlOHNegRzFW4gCJrCxjiLCAGnGegasjviR1yad_Q,1211
16
16
  amigo_sdk/resources/service.py,sha256=t1iA3nS9co-wuR-x5jBhAXXTWfMeGsLwfQcLycwVrCA,1536
17
17
  amigo_sdk/resources/user.py,sha256=P14lN-3fmIvELUjn_vpSaYpNsK-xd8zNmUV_KfcZPAU,4138
18
- amigo_sdk-0.105.0.dist-info/METADATA,sha256=ld-n5WZr259G9EL0TVlQdxHa2hPKvf06kszxauLtnHI,8500
19
- amigo_sdk-0.105.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
20
- amigo_sdk-0.105.0.dist-info/entry_points.txt,sha256=ivKZ8S9W6SH796zUDHeM-qHodrwmkmUItophi-jJWK0,82
21
- amigo_sdk-0.105.0.dist-info/licenses/LICENSE,sha256=tx3FiTVbGxwBUOxQbNh05AAQlC2jd5hGvNpIkSfVbCo,1062
22
- amigo_sdk-0.105.0.dist-info/RECORD,,
18
+ amigo_sdk-0.106.0.dist-info/METADATA,sha256=C-PJznKtpNcPzQGYjybBsojkM7bV1zjhJ3hrKsKYGqs,8500
19
+ amigo_sdk-0.106.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
20
+ amigo_sdk-0.106.0.dist-info/entry_points.txt,sha256=ivKZ8S9W6SH796zUDHeM-qHodrwmkmUItophi-jJWK0,82
21
+ amigo_sdk-0.106.0.dist-info/licenses/LICENSE,sha256=tx3FiTVbGxwBUOxQbNh05AAQlC2jd5hGvNpIkSfVbCo,1062
22
+ amigo_sdk-0.106.0.dist-info/RECORD,,