phenoml 0.0.2__py3-none-any.whl → 0.0.5__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.

Potentially problematic release.


This version of phenoml might be problematic. Click here for more details.

Files changed (68) hide show
  1. phenoml/agent/__init__.py +6 -8
  2. phenoml/agent/client.py +45 -75
  3. phenoml/agent/raw_client.py +37 -77
  4. phenoml/agent/types/__init__.py +6 -8
  5. phenoml/agent/types/agent_create_request.py +53 -0
  6. phenoml/agent/types/agent_create_request_provider.py +5 -0
  7. phenoml/agent/types/agent_template.py +3 -6
  8. phenoml/agent/types/agent_template_provider.py +5 -0
  9. phenoml/client.py +6 -0
  10. phenoml/core/client_wrapper.py +2 -2
  11. phenoml/fhir/__init__.py +36 -0
  12. phenoml/fhir/client.py +970 -0
  13. phenoml/fhir/errors/__init__.py +10 -0
  14. phenoml/fhir/errors/bad_request_error.py +10 -0
  15. phenoml/fhir/errors/internal_server_error.py +10 -0
  16. phenoml/fhir/errors/not_found_error.py +10 -0
  17. phenoml/fhir/errors/unauthorized_error.py +10 -0
  18. phenoml/fhir/raw_client.py +1385 -0
  19. phenoml/fhir/types/__init__.py +29 -0
  20. phenoml/{agent/types/chat_fhir_client_config.py → fhir/types/error_response.py} +11 -6
  21. phenoml/fhir/types/fhir_bundle.py +43 -0
  22. phenoml/fhir/types/fhir_bundle_entry_item.py +34 -0
  23. phenoml/{agent/types/agent_fhir_config.py → fhir/types/fhir_bundle_entry_item_request.py} +5 -11
  24. phenoml/fhir/types/fhir_bundle_entry_item_request_method.py +5 -0
  25. phenoml/fhir/types/fhir_bundle_entry_item_response.py +24 -0
  26. phenoml/fhir/types/fhir_patch_request_body_item.py +36 -0
  27. phenoml/fhir/types/fhir_patch_request_body_item_op.py +7 -0
  28. phenoml/fhir/types/fhir_resource.py +40 -0
  29. phenoml/fhir/types/fhir_resource_meta.py +28 -0
  30. phenoml/fhir/types/fhir_search_response.py +8 -0
  31. phenoml/fhir_provider/__init__.py +43 -0
  32. phenoml/fhir_provider/client.py +731 -0
  33. phenoml/fhir_provider/errors/__init__.py +11 -0
  34. phenoml/fhir_provider/errors/bad_request_error.py +10 -0
  35. phenoml/fhir_provider/errors/forbidden_error.py +10 -0
  36. phenoml/fhir_provider/errors/internal_server_error.py +10 -0
  37. phenoml/fhir_provider/errors/not_found_error.py +10 -0
  38. phenoml/fhir_provider/errors/unauthorized_error.py +10 -0
  39. phenoml/fhir_provider/raw_client.py +1445 -0
  40. phenoml/fhir_provider/types/__init__.py +35 -0
  41. phenoml/fhir_provider/types/auth_method.py +7 -0
  42. phenoml/fhir_provider/types/fhir_provider_auth_config.py +53 -0
  43. phenoml/fhir_provider/types/fhir_provider_delete_response.py +20 -0
  44. phenoml/fhir_provider/types/fhir_provider_list_response.py +22 -0
  45. phenoml/fhir_provider/types/fhir_provider_remove_auth_config_response.py +22 -0
  46. phenoml/fhir_provider/types/fhir_provider_response.py +22 -0
  47. phenoml/fhir_provider/types/fhir_provider_set_active_auth_config_response.py +22 -0
  48. phenoml/fhir_provider/types/fhir_provider_template.py +66 -0
  49. phenoml/fhir_provider/types/fhir_query_response.py +27 -0
  50. phenoml/fhir_provider/types/fhir_query_response_data.py +5 -0
  51. phenoml/fhir_provider/types/json_web_key.py +51 -0
  52. phenoml/fhir_provider/types/provider.py +8 -0
  53. phenoml/fhir_provider/types/service_account_key.py +35 -0
  54. phenoml/fhir_provider/types/smart_configuration.py +46 -0
  55. phenoml/tools/__init__.py +0 -8
  56. phenoml/tools/client.py +24 -60
  57. phenoml/tools/raw_client.py +18 -67
  58. phenoml/tools/types/__init__.py +0 -8
  59. phenoml-0.0.5.dist-info/LICENSE +21 -0
  60. {phenoml-0.0.2.dist-info → phenoml-0.0.5.dist-info}/METADATA +1 -1
  61. {phenoml-0.0.2.dist-info → phenoml-0.0.5.dist-info}/RECORD +62 -22
  62. phenoml/agent/types/agent_provider.py +0 -7
  63. phenoml/agent/types/provider_type.py +0 -5
  64. phenoml/tools/types/cohort_request_provider.py +0 -5
  65. phenoml/tools/types/fhir_client_config.py +0 -31
  66. phenoml/tools/types/lang2fhir_and_create_request_provider.py +0 -7
  67. phenoml/tools/types/lang2fhir_and_search_request_provider.py +0 -7
  68. {phenoml-0.0.2.dist-info → phenoml-0.0.5.dist-info}/WHEEL +0 -0
@@ -0,0 +1,53 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .agent_create_request_provider import AgentCreateRequestProvider
8
+
9
+
10
+ class AgentCreateRequest(UniversalBaseModel):
11
+ name: str = pydantic.Field()
12
+ """
13
+ Agent name
14
+ """
15
+
16
+ description: typing.Optional[str] = pydantic.Field(default=None)
17
+ """
18
+ Agent description
19
+ """
20
+
21
+ prompts: typing.List[str] = pydantic.Field()
22
+ """
23
+ Array of prompt IDs to use for this agent
24
+ """
25
+
26
+ tools: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
27
+ """
28
+ Array of MCP server tool IDs to use for this agent
29
+ """
30
+
31
+ is_active: bool = pydantic.Field()
32
+ """
33
+ Whether the agent is active
34
+ """
35
+
36
+ tags: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
37
+ """
38
+ Tags for categorizing the agent
39
+ """
40
+
41
+ provider: typing.Optional[AgentCreateRequestProvider] = pydantic.Field(default=None)
42
+ """
43
+ FHIR provider ID(s) - must be valid UUIDs from existing FHIR providers
44
+ """
45
+
46
+ if IS_PYDANTIC_V2:
47
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
48
+ else:
49
+
50
+ class Config:
51
+ frozen = True
52
+ smart_union = True
53
+ extra = pydantic.Extra.allow
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentCreateRequestProvider = typing.Union[str, typing.List[str]]
@@ -4,8 +4,7 @@ import typing
4
4
 
5
5
  import pydantic
6
6
  from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
- from .agent_fhir_config import AgentFhirConfig
8
- from .agent_provider import AgentProvider
7
+ from .agent_template_provider import AgentTemplateProvider
9
8
 
10
9
 
11
10
  class AgentTemplate(UniversalBaseModel):
@@ -44,13 +43,11 @@ class AgentTemplate(UniversalBaseModel):
44
43
  Tags for categorizing the agent
45
44
  """
46
45
 
47
- provider: typing.Optional[AgentProvider] = pydantic.Field(default=None)
46
+ provider: typing.Optional[AgentTemplateProvider] = pydantic.Field(default=None)
48
47
  """
49
- FHIR provider type - can be a single provider or array of providers
48
+ FHIR provider ID(s) - must be valid UUIDs from existing FHIR providers
50
49
  """
51
50
 
52
- meta: typing.Optional[AgentFhirConfig] = None
53
-
54
51
  if IS_PYDANTIC_V2:
55
52
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
56
53
  else:
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ AgentTemplateProvider = typing.Union[str, typing.List[str]]
phenoml/client.py CHANGED
@@ -9,6 +9,8 @@ from .cohort.client import AsyncCohortClient, CohortClient
9
9
  from .construe.client import AsyncConstrueClient, ConstrueClient
10
10
  from .core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
11
11
  from .environment import phenomlEnvironment
12
+ from .fhir.client import AsyncFhirClient, FhirClient
13
+ from .fhir_provider.client import AsyncFhirProviderClient, FhirProviderClient
12
14
  from .lang2fhir.client import AsyncLang2FhirClient, Lang2FhirClient
13
15
  from .tools.client import AsyncToolsClient, ToolsClient
14
16
 
@@ -82,6 +84,8 @@ class phenoml:
82
84
  self.authtoken = AuthtokenClient(client_wrapper=self._client_wrapper)
83
85
  self.cohort = CohortClient(client_wrapper=self._client_wrapper)
84
86
  self.construe = ConstrueClient(client_wrapper=self._client_wrapper)
87
+ self.fhir = FhirClient(client_wrapper=self._client_wrapper)
88
+ self.fhir_provider = FhirProviderClient(client_wrapper=self._client_wrapper)
85
89
  self.lang2fhir = Lang2FhirClient(client_wrapper=self._client_wrapper)
86
90
  self.tools = ToolsClient(client_wrapper=self._client_wrapper)
87
91
 
@@ -155,6 +159,8 @@ class Asyncphenoml:
155
159
  self.authtoken = AsyncAuthtokenClient(client_wrapper=self._client_wrapper)
156
160
  self.cohort = AsyncCohortClient(client_wrapper=self._client_wrapper)
157
161
  self.construe = AsyncConstrueClient(client_wrapper=self._client_wrapper)
162
+ self.fhir = AsyncFhirClient(client_wrapper=self._client_wrapper)
163
+ self.fhir_provider = AsyncFhirProviderClient(client_wrapper=self._client_wrapper)
158
164
  self.lang2fhir = AsyncLang2FhirClient(client_wrapper=self._client_wrapper)
159
165
  self.tools = AsyncToolsClient(client_wrapper=self._client_wrapper)
160
166
 
@@ -22,10 +22,10 @@ class BaseClientWrapper:
22
22
 
23
23
  def get_headers(self) -> typing.Dict[str, str]:
24
24
  headers: typing.Dict[str, str] = {
25
- "User-Agent": "phenoml/0.0.2",
25
+ "User-Agent": "phenoml/0.0.5",
26
26
  "X-Fern-Language": "Python",
27
27
  "X-Fern-SDK-Name": "phenoml",
28
- "X-Fern-SDK-Version": "0.0.2",
28
+ "X-Fern-SDK-Version": "0.0.5",
29
29
  **(self.get_custom_headers() or {}),
30
30
  }
31
31
  headers["Authorization"] = f"Bearer {self._get_token()}"
@@ -0,0 +1,36 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ from .types import (
6
+ ErrorResponse,
7
+ FhirBundle,
8
+ FhirBundleEntryItem,
9
+ FhirBundleEntryItemRequest,
10
+ FhirBundleEntryItemRequestMethod,
11
+ FhirBundleEntryItemResponse,
12
+ FhirPatchRequestBodyItem,
13
+ FhirPatchRequestBodyItemOp,
14
+ FhirResource,
15
+ FhirResourceMeta,
16
+ FhirSearchResponse,
17
+ )
18
+ from .errors import BadRequestError, InternalServerError, NotFoundError, UnauthorizedError
19
+
20
+ __all__ = [
21
+ "BadRequestError",
22
+ "ErrorResponse",
23
+ "FhirBundle",
24
+ "FhirBundleEntryItem",
25
+ "FhirBundleEntryItemRequest",
26
+ "FhirBundleEntryItemRequestMethod",
27
+ "FhirBundleEntryItemResponse",
28
+ "FhirPatchRequestBodyItem",
29
+ "FhirPatchRequestBodyItemOp",
30
+ "FhirResource",
31
+ "FhirResourceMeta",
32
+ "FhirSearchResponse",
33
+ "InternalServerError",
34
+ "NotFoundError",
35
+ "UnauthorizedError",
36
+ ]