phenoml 0.0.5__tar.gz → 0.0.6__tar.gz

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.
Files changed (244) hide show
  1. {phenoml-0.0.5 → phenoml-0.0.6}/PKG-INFO +1 -1
  2. {phenoml-0.0.5 → phenoml-0.0.6}/pyproject.toml +1 -1
  3. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/client.py +14 -2
  4. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/json_patch_operation.py +5 -1
  5. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/client.py +7 -4
  6. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/client_wrapper.py +10 -8
  7. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/client.py +22 -22
  8. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_patch_request_body_item.py +5 -1
  9. phenoml-0.0.6/src/phenoml/types/__init__.py +21 -0
  10. phenoml-0.0.6/src/phenoml/types/cohort_response.py +5 -0
  11. phenoml-0.0.6/src/phenoml/types/lang2fhir_and_create_response.py +5 -0
  12. phenoml-0.0.6/src/phenoml/types/lang2fhir_and_search_response.py +5 -0
  13. phenoml-0.0.6/src/phenoml/types/mcp_server_response.py +5 -0
  14. phenoml-0.0.6/src/phenoml/types/mcp_server_tool_call_response.py +5 -0
  15. phenoml-0.0.6/src/phenoml/types/mcp_server_tool_response.py +5 -0
  16. phenoml-0.0.6/src/phenoml/types/search_concept.py +5 -0
  17. phenoml-0.0.6/src/phenoml/workflows/__init__.py +66 -0
  18. phenoml-0.0.6/src/phenoml/workflows/client.py +210 -0
  19. phenoml-0.0.6/src/phenoml/workflows/errors/__init__.py +11 -0
  20. phenoml-0.0.6/src/phenoml/workflows/errors/bad_request_error.py +10 -0
  21. phenoml-0.0.6/src/phenoml/workflows/errors/forbidden_error.py +10 -0
  22. phenoml-0.0.6/src/phenoml/workflows/errors/internal_server_error.py +10 -0
  23. phenoml-0.0.6/src/phenoml/workflows/errors/not_found_error.py +10 -0
  24. phenoml-0.0.6/src/phenoml/workflows/errors/unauthorized_error.py +10 -0
  25. phenoml-0.0.6/src/phenoml/workflows/mcp_server/__init__.py +7 -0
  26. phenoml-0.0.6/src/phenoml/workflows/mcp_server/client.py +274 -0
  27. phenoml-0.0.6/src/phenoml/workflows/mcp_server/raw_client.py +226 -0
  28. phenoml-0.0.6/src/phenoml/workflows/mcp_server/tools/__init__.py +4 -0
  29. phenoml-0.0.6/src/phenoml/workflows/mcp_server/tools/client.py +287 -0
  30. phenoml-0.0.6/src/phenoml/workflows/mcp_server/tools/raw_client.py +244 -0
  31. phenoml-0.0.6/src/phenoml/workflows/raw_client.py +169 -0
  32. phenoml-0.0.6/src/phenoml/workflows/types/__init__.py +43 -0
  33. phenoml-0.0.6/src/phenoml/workflows/types/create_workflow_response.py +44 -0
  34. phenoml-0.0.6/src/phenoml/workflows/types/decision_node_definition.py +32 -0
  35. phenoml-0.0.6/src/phenoml/workflows/types/execute_workflow_response.py +30 -0
  36. phenoml-0.0.6/src/phenoml/workflows/types/execute_workflow_response_results.py +22 -0
  37. phenoml-0.0.6/src/phenoml/workflows/types/lang2fhir_create_definition.py +37 -0
  38. phenoml-0.0.6/src/phenoml/workflows/types/lang2fhir_search_definition.py +42 -0
  39. phenoml-0.0.6/src/phenoml/workflows/types/list_workflows_response.py +39 -0
  40. phenoml-0.0.6/src/phenoml/workflows/types/step_operation.py +26 -0
  41. phenoml-0.0.6/src/phenoml/workflows/types/sub_workflow_definition.py +32 -0
  42. phenoml-0.0.6/src/phenoml/workflows/types/workflow_config.py +27 -0
  43. phenoml-0.0.6/src/phenoml/workflows/types/workflow_definition.py +57 -0
  44. phenoml-0.0.6/src/phenoml/workflows/types/workflow_graph.py +23 -0
  45. phenoml-0.0.6/src/phenoml/workflows/types/workflow_response.py +61 -0
  46. phenoml-0.0.6/src/phenoml/workflows/types/workflow_response_graph.py +23 -0
  47. phenoml-0.0.6/src/phenoml/workflows/types/workflow_step.py +55 -0
  48. phenoml-0.0.6/src/phenoml/workflows/types/workflow_step_summary.py +47 -0
  49. phenoml-0.0.6/src/phenoml/workflows/types/workflow_step_summary_type.py +5 -0
  50. phenoml-0.0.6/src/phenoml/workflows/types/workflow_step_type.py +5 -0
  51. phenoml-0.0.6/src/phenoml/workflows/workflows/__init__.py +19 -0
  52. phenoml-0.0.6/src/phenoml/workflows/workflows/client.py +694 -0
  53. phenoml-0.0.6/src/phenoml/workflows/workflows/raw_client.py +1266 -0
  54. phenoml-0.0.6/src/phenoml/workflows/workflows/types/__init__.py +17 -0
  55. phenoml-0.0.6/src/phenoml/workflows/workflows/types/create_workflow_request_fhir_provider_id.py +5 -0
  56. phenoml-0.0.6/src/phenoml/workflows/workflows/types/update_workflow_request_fhir_provider_id.py +5 -0
  57. phenoml-0.0.6/src/phenoml/workflows/workflows/types/workflows_delete_response.py +20 -0
  58. phenoml-0.0.6/src/phenoml/workflows/workflows/types/workflows_get_response.py +26 -0
  59. phenoml-0.0.6/src/phenoml/workflows/workflows/types/workflows_update_response.py +31 -0
  60. {phenoml-0.0.5 → phenoml-0.0.6}/LICENSE +0 -0
  61. {phenoml-0.0.5 → phenoml-0.0.6}/README.md +0 -0
  62. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/__init__.py +0 -0
  63. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/__init__.py +0 -0
  64. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/__init__.py +0 -0
  65. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/bad_request_error.py +0 -0
  66. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/forbidden_error.py +0 -0
  67. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/internal_server_error.py +0 -0
  68. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/not_found_error.py +0 -0
  69. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/errors/unauthorized_error.py +0 -0
  70. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/__init__.py +0 -0
  71. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/client.py +0 -0
  72. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/raw_client.py +0 -0
  73. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/types/__init__.py +0 -0
  74. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/types/prompts_delete_response.py +0 -0
  75. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/prompts/types/prompts_list_response.py +0 -0
  76. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/raw_client.py +0 -0
  77. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/__init__.py +0 -0
  78. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_chat_response.py +0 -0
  79. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_create_request.py +0 -0
  80. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_create_request_provider.py +0 -0
  81. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_delete_response.py +0 -0
  82. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_get_chat_messages_request_order.py +0 -0
  83. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_get_chat_messages_response.py +0 -0
  84. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_list_response.py +0 -0
  85. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_prompts_response.py +0 -0
  86. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_response.py +0 -0
  87. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_template.py +0 -0
  88. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/agent_template_provider.py +0 -0
  89. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/chat_message_template.py +0 -0
  90. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/chat_session_template.py +0 -0
  91. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/json_patch.py +0 -0
  92. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/json_patch_operation_op.py +0 -0
  93. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/prompt_template.py +0 -0
  94. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/agent/types/success_response.py +0 -0
  95. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/__init__.py +0 -0
  96. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/auth/__init__.py +0 -0
  97. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/auth/client.py +0 -0
  98. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/auth/raw_client.py +0 -0
  99. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/auth/types/__init__.py +0 -0
  100. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/auth/types/auth_generate_token_response.py +0 -0
  101. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/client.py +0 -0
  102. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/errors/__init__.py +0 -0
  103. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/errors/bad_request_error.py +0 -0
  104. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/errors/unauthorized_error.py +0 -0
  105. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/raw_client.py +0 -0
  106. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/types/__init__.py +0 -0
  107. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/types/bad_request_error_body.py +0 -0
  108. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/authtoken/types/unauthorized_error_body.py +0 -0
  109. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/__init__.py +0 -0
  110. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/client.py +0 -0
  111. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/errors/__init__.py +0 -0
  112. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/errors/bad_request_error.py +0 -0
  113. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/errors/internal_server_error.py +0 -0
  114. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/errors/unauthorized_error.py +0 -0
  115. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/raw_client.py +0 -0
  116. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/types/__init__.py +0 -0
  117. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/types/cohort_response.py +0 -0
  118. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/cohort/types/search_concept.py +0 -0
  119. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/__init__.py +0 -0
  120. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/client.py +0 -0
  121. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/__init__.py +0 -0
  122. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/bad_request_error.py +0 -0
  123. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/conflict_error.py +0 -0
  124. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/failed_dependency_error.py +0 -0
  125. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/internal_server_error.py +0 -0
  126. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/errors/unauthorized_error.py +0 -0
  127. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/raw_client.py +0 -0
  128. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/__init__.py +0 -0
  129. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/bad_request_error_body.py +0 -0
  130. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_cohort_request_config.py +0 -0
  131. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_cohort_response.py +0 -0
  132. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_cohort_response_queries_item.py +0 -0
  133. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_cohort_response_queries_item_code_extract_results_item.py +0 -0
  134. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_cohort_response_queries_item_code_extract_results_item_codes_item.py +0 -0
  135. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/construe_upload_code_system_response.py +0 -0
  136. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/extract_codes_result.py +0 -0
  137. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/extract_request_config.py +0 -0
  138. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/extract_request_config_chunking_method.py +0 -0
  139. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/extract_request_system.py +0 -0
  140. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/extracted_code_result.py +0 -0
  141. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/internal_server_error_body.py +0 -0
  142. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/unauthorized_error_body.py +0 -0
  143. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/construe/types/upload_request_format.py +0 -0
  144. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/__init__.py +0 -0
  145. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/api_error.py +0 -0
  146. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/datetime_utils.py +0 -0
  147. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/file.py +0 -0
  148. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/force_multipart.py +0 -0
  149. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/http_client.py +0 -0
  150. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/http_response.py +0 -0
  151. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/jsonable_encoder.py +0 -0
  152. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/pydantic_utilities.py +0 -0
  153. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/query_encoder.py +0 -0
  154. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/remove_none_from_dict.py +0 -0
  155. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/request_options.py +0 -0
  156. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/core/serialization.py +0 -0
  157. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/environment.py +0 -0
  158. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/__init__.py +0 -0
  159. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/errors/__init__.py +0 -0
  160. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/errors/bad_request_error.py +0 -0
  161. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/errors/internal_server_error.py +0 -0
  162. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/errors/not_found_error.py +0 -0
  163. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/errors/unauthorized_error.py +0 -0
  164. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/raw_client.py +0 -0
  165. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/__init__.py +0 -0
  166. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/error_response.py +0 -0
  167. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_bundle.py +0 -0
  168. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_bundle_entry_item.py +0 -0
  169. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_bundle_entry_item_request.py +0 -0
  170. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_bundle_entry_item_request_method.py +0 -0
  171. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_bundle_entry_item_response.py +0 -0
  172. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_patch_request_body_item_op.py +0 -0
  173. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_resource.py +0 -0
  174. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_resource_meta.py +0 -0
  175. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir/types/fhir_search_response.py +0 -0
  176. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/__init__.py +0 -0
  177. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/client.py +0 -0
  178. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/__init__.py +0 -0
  179. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/bad_request_error.py +0 -0
  180. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/forbidden_error.py +0 -0
  181. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/internal_server_error.py +0 -0
  182. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/not_found_error.py +0 -0
  183. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/errors/unauthorized_error.py +0 -0
  184. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/raw_client.py +0 -0
  185. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/__init__.py +0 -0
  186. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/auth_method.py +0 -0
  187. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_auth_config.py +0 -0
  188. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_delete_response.py +0 -0
  189. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_list_response.py +0 -0
  190. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_remove_auth_config_response.py +0 -0
  191. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_response.py +0 -0
  192. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_set_active_auth_config_response.py +0 -0
  193. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_provider_template.py +0 -0
  194. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_query_response.py +0 -0
  195. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/fhir_query_response_data.py +0 -0
  196. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/json_web_key.py +0 -0
  197. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/provider.py +0 -0
  198. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/service_account_key.py +0 -0
  199. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/fhir_provider/types/smart_configuration.py +0 -0
  200. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/__init__.py +0 -0
  201. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/client.py +0 -0
  202. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/__init__.py +0 -0
  203. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/bad_request_error.py +0 -0
  204. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/failed_dependency_error.py +0 -0
  205. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/forbidden_error.py +0 -0
  206. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/internal_server_error.py +0 -0
  207. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/errors/unauthorized_error.py +0 -0
  208. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/raw_client.py +0 -0
  209. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/__init__.py +0 -0
  210. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/create_request_resource.py +0 -0
  211. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/document_request_file_type.py +0 -0
  212. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/document_request_resource.py +0 -0
  213. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/fhir_resource.py +0 -0
  214. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/lang2fhir_upload_profile_response.py +0 -0
  215. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/lang2fhir/types/search_response.py +0 -0
  216. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/py.typed +0 -0
  217. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/__init__.py +0 -0
  218. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/client.py +0 -0
  219. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/__init__.py +0 -0
  220. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/bad_request_error.py +0 -0
  221. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/failed_dependency_error.py +0 -0
  222. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/forbidden_error.py +0 -0
  223. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/internal_server_error.py +0 -0
  224. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/errors/unauthorized_error.py +0 -0
  225. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/__init__.py +0 -0
  226. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/client.py +0 -0
  227. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/raw_client.py +0 -0
  228. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/tools/__init__.py +0 -0
  229. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/tools/client.py +0 -0
  230. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/mcp_server/tools/raw_client.py +0 -0
  231. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/raw_client.py +0 -0
  232. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/__init__.py +0 -0
  233. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/cohort_response.py +0 -0
  234. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/lang2fhir_and_create_request_resource.py +0 -0
  235. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/lang2fhir_and_create_response.py +0 -0
  236. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/lang2fhir_and_search_response.py +0 -0
  237. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/mcp_server_response.py +0 -0
  238. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/mcp_server_response_data.py +0 -0
  239. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/mcp_server_tool_call_response.py +0 -0
  240. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/mcp_server_tool_response.py +0 -0
  241. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/mcp_server_tool_response_data.py +0 -0
  242. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/tools/types/search_concept.py +0 -0
  243. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/version.py +0 -0
  244. {phenoml-0.0.5 → phenoml-0.0.6}/src/phenoml/wrapper_client.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: phenoml
3
- Version: 0.0.5
3
+ Version: 0.0.6
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -3,7 +3,7 @@ name = "phenoml"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "phenoml"
6
- version = "0.0.5"
6
+ version = "0.0.6"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -139,7 +139,10 @@ class AgentClient:
139
139
  client = phenoml(
140
140
  token="YOUR_TOKEN",
141
141
  )
142
- client.agent.list()
142
+ client.agent.list(
143
+ is_active=True,
144
+ tags="tags",
145
+ )
143
146
  """
144
147
  _response = self._raw_client.list(is_active=is_active, tags=tags, request_options=request_options)
145
148
  return _response.data
@@ -429,6 +432,9 @@ class AgentClient:
429
432
  )
430
433
  client.agent.get_chat_messages(
431
434
  chat_session_id="chat_session_id",
435
+ num_messages=1,
436
+ role="role",
437
+ order="asc",
432
438
  )
433
439
  """
434
440
  _response = self._raw_client.get_chat_messages(
@@ -574,7 +580,10 @@ class AsyncAgentClient:
574
580
 
575
581
 
576
582
  async def main() -> None:
577
- await client.agent.list()
583
+ await client.agent.list(
584
+ is_active=True,
585
+ tags="tags",
586
+ )
578
587
 
579
588
 
580
589
  asyncio.run(main())
@@ -912,6 +921,9 @@ class AsyncAgentClient:
912
921
  async def main() -> None:
913
922
  await client.agent.get_chat_messages(
914
923
  chat_session_id="chat_session_id",
924
+ num_messages=1,
925
+ role="role",
926
+ order="asc",
915
927
  )
916
928
 
917
929
 
@@ -20,7 +20,11 @@ class JsonPatchOperation(UniversalBaseModel):
20
20
  A JSON Pointer string specifying a location within the target document
21
21
  """
22
22
 
23
- value: typing.Optional[typing.Optional[typing.Any]] = None
23
+ value: typing.Optional[typing.Optional[typing.Any]] = pydantic.Field(default=None)
24
+ """
25
+ The value to be used within the operations
26
+ """
27
+
24
28
  from_: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="from")] = pydantic.Field(default=None)
25
29
  """
26
30
  A JSON Pointer string specifying the location in the target document to move the value from (used with move and copy operations)
@@ -13,6 +13,7 @@ from .fhir.client import AsyncFhirClient, FhirClient
13
13
  from .fhir_provider.client import AsyncFhirProviderClient, FhirProviderClient
14
14
  from .lang2fhir.client import AsyncLang2FhirClient, Lang2FhirClient
15
15
  from .tools.client import AsyncToolsClient, ToolsClient
16
+ from .workflows.client import AsyncWorkflowsClient, WorkflowsClient
16
17
 
17
18
 
18
19
  class phenoml:
@@ -33,7 +34,7 @@ class phenoml:
33
34
 
34
35
 
35
36
 
36
- token : typing.Union[str, typing.Callable[[], str]]
37
+ token : typing.Optional[typing.Union[str, typing.Callable[[], str]]]
37
38
  headers : typing.Optional[typing.Dict[str, str]]
38
39
  Additional headers to send with every request.
39
40
 
@@ -60,7 +61,7 @@ class phenoml:
60
61
  *,
61
62
  base_url: typing.Optional[str] = None,
62
63
  environment: phenomlEnvironment = phenomlEnvironment.DEFAULT,
63
- token: typing.Union[str, typing.Callable[[], str]],
64
+ token: typing.Optional[typing.Union[str, typing.Callable[[], str]]] = None,
64
65
  headers: typing.Optional[typing.Dict[str, str]] = None,
65
66
  timeout: typing.Optional[float] = None,
66
67
  follow_redirects: typing.Optional[bool] = True,
@@ -88,6 +89,7 @@ class phenoml:
88
89
  self.fhir_provider = FhirProviderClient(client_wrapper=self._client_wrapper)
89
90
  self.lang2fhir = Lang2FhirClient(client_wrapper=self._client_wrapper)
90
91
  self.tools = ToolsClient(client_wrapper=self._client_wrapper)
92
+ self.workflows = WorkflowsClient(client_wrapper=self._client_wrapper)
91
93
 
92
94
 
93
95
  class Asyncphenoml:
@@ -108,7 +110,7 @@ class Asyncphenoml:
108
110
 
109
111
 
110
112
 
111
- token : typing.Union[str, typing.Callable[[], str]]
113
+ token : typing.Optional[typing.Union[str, typing.Callable[[], str]]]
112
114
  headers : typing.Optional[typing.Dict[str, str]]
113
115
  Additional headers to send with every request.
114
116
 
@@ -135,7 +137,7 @@ class Asyncphenoml:
135
137
  *,
136
138
  base_url: typing.Optional[str] = None,
137
139
  environment: phenomlEnvironment = phenomlEnvironment.DEFAULT,
138
- token: typing.Union[str, typing.Callable[[], str]],
140
+ token: typing.Optional[typing.Union[str, typing.Callable[[], str]]] = None,
139
141
  headers: typing.Optional[typing.Dict[str, str]] = None,
140
142
  timeout: typing.Optional[float] = None,
141
143
  follow_redirects: typing.Optional[bool] = True,
@@ -163,6 +165,7 @@ class Asyncphenoml:
163
165
  self.fhir_provider = AsyncFhirProviderClient(client_wrapper=self._client_wrapper)
164
166
  self.lang2fhir = AsyncLang2FhirClient(client_wrapper=self._client_wrapper)
165
167
  self.tools = AsyncToolsClient(client_wrapper=self._client_wrapper)
168
+ self.workflows = AsyncWorkflowsClient(client_wrapper=self._client_wrapper)
166
169
 
167
170
 
168
171
  def _get_base_url(*, base_url: typing.Optional[str] = None, environment: phenomlEnvironment) -> str:
@@ -10,7 +10,7 @@ class BaseClientWrapper:
10
10
  def __init__(
11
11
  self,
12
12
  *,
13
- token: typing.Union[str, typing.Callable[[], str]],
13
+ token: typing.Optional[typing.Union[str, typing.Callable[[], str]]] = None,
14
14
  headers: typing.Optional[typing.Dict[str, str]] = None,
15
15
  base_url: str,
16
16
  timeout: typing.Optional[float] = None,
@@ -22,17 +22,19 @@ 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.5",
25
+ "User-Agent": "phenoml/0.0.6",
26
26
  "X-Fern-Language": "Python",
27
27
  "X-Fern-SDK-Name": "phenoml",
28
- "X-Fern-SDK-Version": "0.0.5",
28
+ "X-Fern-SDK-Version": "0.0.6",
29
29
  **(self.get_custom_headers() or {}),
30
30
  }
31
- headers["Authorization"] = f"Bearer {self._get_token()}"
31
+ token = self._get_token()
32
+ if token is not None:
33
+ headers["Authorization"] = f"Bearer {token}"
32
34
  return headers
33
35
 
34
- def _get_token(self) -> str:
35
- if isinstance(self._token, str):
36
+ def _get_token(self) -> typing.Optional[str]:
37
+ if isinstance(self._token, str) or self._token is None:
36
38
  return self._token
37
39
  else:
38
40
  return self._token()
@@ -51,7 +53,7 @@ class SyncClientWrapper(BaseClientWrapper):
51
53
  def __init__(
52
54
  self,
53
55
  *,
54
- token: typing.Union[str, typing.Callable[[], str]],
56
+ token: typing.Optional[typing.Union[str, typing.Callable[[], str]]] = None,
55
57
  headers: typing.Optional[typing.Dict[str, str]] = None,
56
58
  base_url: str,
57
59
  timeout: typing.Optional[float] = None,
@@ -70,7 +72,7 @@ class AsyncClientWrapper(BaseClientWrapper):
70
72
  def __init__(
71
73
  self,
72
74
  *,
73
- token: typing.Union[str, typing.Callable[[], str]],
75
+ token: typing.Optional[typing.Union[str, typing.Callable[[], str]]] = None,
74
76
  headers: typing.Optional[typing.Dict[str, str]] = None,
75
77
  base_url: str,
76
78
  timeout: typing.Optional[float] = None,
@@ -85,8 +85,8 @@ class FhirClient:
85
85
  token="YOUR_TOKEN",
86
86
  )
87
87
  client.fhir.search(
88
- fhir_provider_id="fhir_provider_id",
89
- fhir_path="fhir_path",
88
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
89
+ fhir_path="Patient",
90
90
  phenoml_on_behalf_of="user@example.com",
91
91
  )
92
92
  """
@@ -157,8 +157,8 @@ class FhirClient:
157
157
  token="YOUR_TOKEN",
158
158
  )
159
159
  client.fhir.create(
160
- fhir_provider_id="fhir_provider_id",
161
- fhir_path="fhir_path",
160
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
161
+ fhir_path="Patient",
162
162
  phenoml_on_behalf_of="user@example.com",
163
163
  resource_type="Patient",
164
164
  )
@@ -232,8 +232,8 @@ class FhirClient:
232
232
  token="YOUR_TOKEN",
233
233
  )
234
234
  client.fhir.upsert(
235
- fhir_provider_id="fhir_provider_id",
236
- fhir_path="fhir_path",
235
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
236
+ fhir_path="Patient",
237
237
  phenoml_on_behalf_of="user@example.com",
238
238
  resource_type="Patient",
239
239
  id="123",
@@ -296,8 +296,8 @@ class FhirClient:
296
296
  token="YOUR_TOKEN",
297
297
  )
298
298
  client.fhir.delete(
299
- fhir_provider_id="fhir_provider_id",
300
- fhir_path="fhir_path",
299
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
300
+ fhir_path="Patient",
301
301
  phenoml_on_behalf_of="user@example.com",
302
302
  )
303
303
  """
@@ -361,8 +361,8 @@ class FhirClient:
361
361
  token="YOUR_TOKEN",
362
362
  )
363
363
  client.fhir.patch(
364
- fhir_provider_id="fhir_provider_id",
365
- fhir_path="fhir_path",
364
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
365
+ fhir_path="Patient",
366
366
  phenoml_on_behalf_of="user@example.com",
367
367
  request=[
368
368
  FhirPatchRequestBodyItem(
@@ -432,7 +432,7 @@ class FhirClient:
432
432
  token="YOUR_TOKEN",
433
433
  )
434
434
  client.fhir.execute_bundle(
435
- fhir_provider_id="fhir_provider_id",
435
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
436
436
  phenoml_on_behalf_of="user@example.com",
437
437
  entry=[
438
438
  FhirBundleEntryItem(
@@ -543,8 +543,8 @@ class AsyncFhirClient:
543
543
 
544
544
  async def main() -> None:
545
545
  await client.fhir.search(
546
- fhir_provider_id="fhir_provider_id",
547
- fhir_path="fhir_path",
546
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
547
+ fhir_path="Patient",
548
548
  phenoml_on_behalf_of="user@example.com",
549
549
  )
550
550
 
@@ -623,8 +623,8 @@ class AsyncFhirClient:
623
623
 
624
624
  async def main() -> None:
625
625
  await client.fhir.create(
626
- fhir_provider_id="fhir_provider_id",
627
- fhir_path="fhir_path",
626
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
627
+ fhir_path="Patient",
628
628
  phenoml_on_behalf_of="user@example.com",
629
629
  resource_type="Patient",
630
630
  )
@@ -706,8 +706,8 @@ class AsyncFhirClient:
706
706
 
707
707
  async def main() -> None:
708
708
  await client.fhir.upsert(
709
- fhir_provider_id="fhir_provider_id",
710
- fhir_path="fhir_path",
709
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
710
+ fhir_path="Patient",
711
711
  phenoml_on_behalf_of="user@example.com",
712
712
  resource_type="Patient",
713
713
  id="123",
@@ -778,8 +778,8 @@ class AsyncFhirClient:
778
778
 
779
779
  async def main() -> None:
780
780
  await client.fhir.delete(
781
- fhir_provider_id="fhir_provider_id",
782
- fhir_path="fhir_path",
781
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
782
+ fhir_path="Patient",
783
783
  phenoml_on_behalf_of="user@example.com",
784
784
  )
785
785
 
@@ -851,8 +851,8 @@ class AsyncFhirClient:
851
851
 
852
852
  async def main() -> None:
853
853
  await client.fhir.patch(
854
- fhir_provider_id="fhir_provider_id",
855
- fhir_path="fhir_path",
854
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
855
+ fhir_path="Patient",
856
856
  phenoml_on_behalf_of="user@example.com",
857
857
  request=[
858
858
  FhirPatchRequestBodyItem(
@@ -930,7 +930,7 @@ class AsyncFhirClient:
930
930
 
931
931
  async def main() -> None:
932
932
  await client.fhir.execute_bundle(
933
- fhir_provider_id="fhir_provider_id",
933
+ fhir_provider_id="550e8400-e29b-41d4-a716-446655440000",
934
934
  phenoml_on_behalf_of="user@example.com",
935
935
  entry=[
936
936
  FhirBundleEntryItem(
@@ -20,7 +20,11 @@ class FhirPatchRequestBodyItem(UniversalBaseModel):
20
20
  JSON Pointer to the target location
21
21
  """
22
22
 
23
- value: typing.Optional[typing.Optional[typing.Any]] = None
23
+ value: typing.Optional[typing.Optional[typing.Any]] = pydantic.Field(default=None)
24
+ """
25
+ The value to use (required for add, replace, test operations)
26
+ """
27
+
24
28
  from_: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="from")] = pydantic.Field(default=None)
25
29
  """
26
30
  Source location for move and copy operations (JSON Pointer)
@@ -0,0 +1,21 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ from .cohort_response import CohortResponse
6
+ from .lang2fhir_and_create_response import Lang2FhirAndCreateResponse
7
+ from .lang2fhir_and_search_response import Lang2FhirAndSearchResponse
8
+ from .mcp_server_response import McpServerResponse
9
+ from .mcp_server_tool_call_response import McpServerToolCallResponse
10
+ from .mcp_server_tool_response import McpServerToolResponse
11
+ from .search_concept import SearchConcept
12
+
13
+ __all__ = [
14
+ "CohortResponse",
15
+ "Lang2FhirAndCreateResponse",
16
+ "Lang2FhirAndSearchResponse",
17
+ "McpServerResponse",
18
+ "McpServerToolCallResponse",
19
+ "McpServerToolResponse",
20
+ "SearchConcept",
21
+ ]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ CohortResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ Lang2FhirAndCreateResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ Lang2FhirAndSearchResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ McpServerResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ McpServerToolCallResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ McpServerToolResponse = typing.Optional[typing.Any]
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ SearchConcept = typing.Optional[typing.Any]
@@ -0,0 +1,66 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ from .types import (
6
+ CreateWorkflowResponse,
7
+ DecisionNodeDefinition,
8
+ ExecuteWorkflowResponse,
9
+ ExecuteWorkflowResponseResults,
10
+ Lang2FhirCreateDefinition,
11
+ Lang2FhirSearchDefinition,
12
+ ListWorkflowsResponse,
13
+ StepOperation,
14
+ SubWorkflowDefinition,
15
+ WorkflowConfig,
16
+ WorkflowDefinition,
17
+ WorkflowGraph,
18
+ WorkflowResponse,
19
+ WorkflowResponseGraph,
20
+ WorkflowStep,
21
+ WorkflowStepSummary,
22
+ WorkflowStepSummaryType,
23
+ WorkflowStepType,
24
+ )
25
+ from .errors import BadRequestError, ForbiddenError, InternalServerError, NotFoundError, UnauthorizedError
26
+ from . import mcp_server, workflows
27
+ from .workflows import (
28
+ CreateWorkflowRequestFhirProviderId,
29
+ UpdateWorkflowRequestFhirProviderId,
30
+ WorkflowsDeleteResponse,
31
+ WorkflowsGetResponse,
32
+ WorkflowsUpdateResponse,
33
+ )
34
+
35
+ __all__ = [
36
+ "BadRequestError",
37
+ "CreateWorkflowRequestFhirProviderId",
38
+ "CreateWorkflowResponse",
39
+ "DecisionNodeDefinition",
40
+ "ExecuteWorkflowResponse",
41
+ "ExecuteWorkflowResponseResults",
42
+ "ForbiddenError",
43
+ "InternalServerError",
44
+ "Lang2FhirCreateDefinition",
45
+ "Lang2FhirSearchDefinition",
46
+ "ListWorkflowsResponse",
47
+ "NotFoundError",
48
+ "StepOperation",
49
+ "SubWorkflowDefinition",
50
+ "UnauthorizedError",
51
+ "UpdateWorkflowRequestFhirProviderId",
52
+ "WorkflowConfig",
53
+ "WorkflowDefinition",
54
+ "WorkflowGraph",
55
+ "WorkflowResponse",
56
+ "WorkflowResponseGraph",
57
+ "WorkflowStep",
58
+ "WorkflowStepSummary",
59
+ "WorkflowStepSummaryType",
60
+ "WorkflowStepType",
61
+ "WorkflowsDeleteResponse",
62
+ "WorkflowsGetResponse",
63
+ "WorkflowsUpdateResponse",
64
+ "mcp_server",
65
+ "workflows",
66
+ ]
@@ -0,0 +1,210 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
6
+ from ..core.request_options import RequestOptions
7
+ from .mcp_server.client import AsyncMcpServerClient, McpServerClient
8
+ from .raw_client import AsyncRawWorkflowsClient, RawWorkflowsClient
9
+ from .workflows.client import AsyncWorkflowsClient as workflows_workflows_client_AsyncWorkflowsClient
10
+ from .workflows.client import WorkflowsClient as workflows_workflows_client_WorkflowsClient
11
+
12
+
13
+ class WorkflowsClient:
14
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
15
+ self._raw_client = RawWorkflowsClient(client_wrapper=client_wrapper)
16
+ self.workflows = workflows_workflows_client_WorkflowsClient(client_wrapper=client_wrapper)
17
+
18
+ self.mcp_server = McpServerClient(client_wrapper=client_wrapper)
19
+
20
+ @property
21
+ def with_raw_response(self) -> RawWorkflowsClient:
22
+ """
23
+ Retrieves a raw implementation of this client that returns raw responses.
24
+
25
+ Returns
26
+ -------
27
+ RawWorkflowsClient
28
+ """
29
+ return self._raw_client
30
+
31
+ def create_fhir_resource(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
32
+ """
33
+ Parameters
34
+ ----------
35
+ request_options : typing.Optional[RequestOptions]
36
+ Request-specific configuration.
37
+
38
+ Returns
39
+ -------
40
+ None
41
+
42
+ Examples
43
+ --------
44
+ from phenoml import phenoml
45
+
46
+ client = phenoml(
47
+ token="YOUR_TOKEN",
48
+ )
49
+ client.workflows.create_fhir_resource()
50
+ """
51
+ _response = self._raw_client.create_fhir_resource(request_options=request_options)
52
+ return _response.data
53
+
54
+ def search_fhir_resources(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
55
+ """
56
+ Parameters
57
+ ----------
58
+ request_options : typing.Optional[RequestOptions]
59
+ Request-specific configuration.
60
+
61
+ Returns
62
+ -------
63
+ None
64
+
65
+ Examples
66
+ --------
67
+ from phenoml import phenoml
68
+
69
+ client = phenoml(
70
+ token="YOUR_TOKEN",
71
+ )
72
+ client.workflows.search_fhir_resources()
73
+ """
74
+ _response = self._raw_client.search_fhir_resources(request_options=request_options)
75
+ return _response.data
76
+
77
+ def analyze_cohort(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
78
+ """
79
+ Parameters
80
+ ----------
81
+ request_options : typing.Optional[RequestOptions]
82
+ Request-specific configuration.
83
+
84
+ Returns
85
+ -------
86
+ None
87
+
88
+ Examples
89
+ --------
90
+ from phenoml import phenoml
91
+
92
+ client = phenoml(
93
+ token="YOUR_TOKEN",
94
+ )
95
+ client.workflows.analyze_cohort()
96
+ """
97
+ _response = self._raw_client.analyze_cohort(request_options=request_options)
98
+ return _response.data
99
+
100
+
101
+ class AsyncWorkflowsClient:
102
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
103
+ self._raw_client = AsyncRawWorkflowsClient(client_wrapper=client_wrapper)
104
+ self.workflows = workflows_workflows_client_AsyncWorkflowsClient(client_wrapper=client_wrapper)
105
+
106
+ self.mcp_server = AsyncMcpServerClient(client_wrapper=client_wrapper)
107
+
108
+ @property
109
+ def with_raw_response(self) -> AsyncRawWorkflowsClient:
110
+ """
111
+ Retrieves a raw implementation of this client that returns raw responses.
112
+
113
+ Returns
114
+ -------
115
+ AsyncRawWorkflowsClient
116
+ """
117
+ return self._raw_client
118
+
119
+ async def create_fhir_resource(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
120
+ """
121
+ Parameters
122
+ ----------
123
+ request_options : typing.Optional[RequestOptions]
124
+ Request-specific configuration.
125
+
126
+ Returns
127
+ -------
128
+ None
129
+
130
+ Examples
131
+ --------
132
+ import asyncio
133
+
134
+ from phenoml import Asyncphenoml
135
+
136
+ client = Asyncphenoml(
137
+ token="YOUR_TOKEN",
138
+ )
139
+
140
+
141
+ async def main() -> None:
142
+ await client.workflows.create_fhir_resource()
143
+
144
+
145
+ asyncio.run(main())
146
+ """
147
+ _response = await self._raw_client.create_fhir_resource(request_options=request_options)
148
+ return _response.data
149
+
150
+ async def search_fhir_resources(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
151
+ """
152
+ Parameters
153
+ ----------
154
+ request_options : typing.Optional[RequestOptions]
155
+ Request-specific configuration.
156
+
157
+ Returns
158
+ -------
159
+ None
160
+
161
+ Examples
162
+ --------
163
+ import asyncio
164
+
165
+ from phenoml import Asyncphenoml
166
+
167
+ client = Asyncphenoml(
168
+ token="YOUR_TOKEN",
169
+ )
170
+
171
+
172
+ async def main() -> None:
173
+ await client.workflows.search_fhir_resources()
174
+
175
+
176
+ asyncio.run(main())
177
+ """
178
+ _response = await self._raw_client.search_fhir_resources(request_options=request_options)
179
+ return _response.data
180
+
181
+ async def analyze_cohort(self, *, request_options: typing.Optional[RequestOptions] = None) -> None:
182
+ """
183
+ Parameters
184
+ ----------
185
+ request_options : typing.Optional[RequestOptions]
186
+ Request-specific configuration.
187
+
188
+ Returns
189
+ -------
190
+ None
191
+
192
+ Examples
193
+ --------
194
+ import asyncio
195
+
196
+ from phenoml import Asyncphenoml
197
+
198
+ client = Asyncphenoml(
199
+ token="YOUR_TOKEN",
200
+ )
201
+
202
+
203
+ async def main() -> None:
204
+ await client.workflows.analyze_cohort()
205
+
206
+
207
+ asyncio.run(main())
208
+ """
209
+ _response = await self._raw_client.analyze_cohort(request_options=request_options)
210
+ return _response.data