robosystems-client 0.1.9__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 robosystems-client might be problematic. Click here for more details.

Files changed (282) hide show
  1. robosystems_client/__init__.py +14 -0
  2. robosystems_client/api/__init__.py +1 -0
  3. robosystems_client/api/agent/__init__.py +1 -0
  4. robosystems_client/api/agent/query_financial_agent.py +423 -0
  5. robosystems_client/api/auth/__init__.py +1 -0
  6. robosystems_client/api/auth/check_password_strength.py +172 -0
  7. robosystems_client/api/auth/complete_sso_auth.py +177 -0
  8. robosystems_client/api/auth/generate_sso_token.py +174 -0
  9. robosystems_client/api/auth/get_captcha_config.py +87 -0
  10. robosystems_client/api/auth/get_current_auth_user.py +220 -0
  11. robosystems_client/api/auth/get_password_policy.py +134 -0
  12. robosystems_client/api/auth/login_user.py +181 -0
  13. robosystems_client/api/auth/logout_user.py +169 -0
  14. robosystems_client/api/auth/refresh_session.py +174 -0
  15. robosystems_client/api/auth/register_user.py +189 -0
  16. robosystems_client/api/auth/sso_login.py +177 -0
  17. robosystems_client/api/auth/sso_token_exchange.py +181 -0
  18. robosystems_client/api/backup/__init__.py +1 -0
  19. robosystems_client/api/backup/create_backup.py +401 -0
  20. robosystems_client/api/backup/export_backup.py +225 -0
  21. robosystems_client/api/backup/get_backup_download_url.py +258 -0
  22. robosystems_client/api/backup/get_backup_stats.py +182 -0
  23. robosystems_client/api/backup/kuzu_backup_health.py +202 -0
  24. robosystems_client/api/backup/list_backups.py +217 -0
  25. robosystems_client/api/backup/restore_backup.py +401 -0
  26. robosystems_client/api/billing/__init__.py +1 -0
  27. robosystems_client/api/billing/get_available_subscription_plans_v1_graph_id_billing_available_plans_get.py +198 -0
  28. robosystems_client/api/billing/get_credit_billing_info_v1_graph_id_billing_credits_get.py +210 -0
  29. robosystems_client/api/billing/get_current_graph_bill.py +285 -0
  30. robosystems_client/api/billing/get_graph_billing_history.py +329 -0
  31. robosystems_client/api/billing/get_graph_monthly_bill.py +315 -0
  32. robosystems_client/api/billing/get_graph_pricing_info_v1_graph_id_billing_pricing_get.py +198 -0
  33. robosystems_client/api/billing/get_graph_subscription_v1_graph_id_billing_subscription_get.py +198 -0
  34. robosystems_client/api/billing/get_graph_usage_details.py +350 -0
  35. robosystems_client/api/billing/upgrade_graph_subscription_v1_graph_id_billing_subscription_upgrade_post.py +216 -0
  36. robosystems_client/api/connections/__init__.py +1 -0
  37. robosystems_client/api/connections/create_connection.py +327 -0
  38. robosystems_client/api/connections/create_link_token.py +281 -0
  39. robosystems_client/api/connections/delete_connection.py +278 -0
  40. robosystems_client/api/connections/exchange_link_token.py +301 -0
  41. robosystems_client/api/connections/get_connection.py +262 -0
  42. robosystems_client/api/connections/get_connection_options.py +285 -0
  43. robosystems_client/api/connections/init_o_auth.py +230 -0
  44. robosystems_client/api/connections/list_connections.py +314 -0
  45. robosystems_client/api/connections/oauth_callback.py +318 -0
  46. robosystems_client/api/connections/sync_connection.py +362 -0
  47. robosystems_client/api/create/__init__.py +1 -0
  48. robosystems_client/api/create/create_graph.py +375 -0
  49. robosystems_client/api/create/get_available_extensions.py +134 -0
  50. robosystems_client/api/credits_/__init__.py +1 -0
  51. robosystems_client/api/credits_/check_credit_balance.py +299 -0
  52. robosystems_client/api/credits_/check_storage_limits.py +249 -0
  53. robosystems_client/api/credits_/get_credit_summary.py +245 -0
  54. robosystems_client/api/credits_/get_storage_usage.py +279 -0
  55. robosystems_client/api/credits_/list_credit_transactions.py +392 -0
  56. robosystems_client/api/graph_analytics/__init__.py +1 -0
  57. robosystems_client/api/graph_analytics/get_graph_metrics.py +285 -0
  58. robosystems_client/api/graph_analytics/get_graph_usage_stats.py +329 -0
  59. robosystems_client/api/graph_status/__init__.py +1 -0
  60. robosystems_client/api/graph_status/get_database_health.py +273 -0
  61. robosystems_client/api/graph_status/get_database_info.py +277 -0
  62. robosystems_client/api/mcp/__init__.py +1 -0
  63. robosystems_client/api/mcp/call_mcp_tool.py +432 -0
  64. robosystems_client/api/mcp/list_mcp_tools.py +265 -0
  65. robosystems_client/api/operations/__init__.py +1 -0
  66. robosystems_client/api/operations/cancel_operation.py +246 -0
  67. robosystems_client/api/operations/get_operation_status.py +273 -0
  68. robosystems_client/api/operations/stream_operation_events.py +415 -0
  69. robosystems_client/api/query/__init__.py +1 -0
  70. robosystems_client/api/query/execute_cypher_query.py +482 -0
  71. robosystems_client/api/schema/__init__.py +1 -0
  72. robosystems_client/api/schema/export_graph_schema.py +239 -0
  73. robosystems_client/api/schema/get_graph_schema_info.py +277 -0
  74. robosystems_client/api/schema/list_schema_extensions.py +216 -0
  75. robosystems_client/api/schema/validate_schema.py +326 -0
  76. robosystems_client/api/service_offerings/__init__.py +1 -0
  77. robosystems_client/api/service_offerings/get_service_offerings.py +197 -0
  78. robosystems_client/api/status/__init__.py +1 -0
  79. robosystems_client/api/status/get_mcp_health.py +136 -0
  80. robosystems_client/api/status/get_service_status.py +134 -0
  81. robosystems_client/api/user/__init__.py +1 -0
  82. robosystems_client/api/user/create_user_api_key.py +205 -0
  83. robosystems_client/api/user/get_all_credit_summaries.py +256 -0
  84. robosystems_client/api/user/get_current_user.py +187 -0
  85. robosystems_client/api/user/get_user_graphs.py +187 -0
  86. robosystems_client/api/user/list_user_api_keys.py +187 -0
  87. robosystems_client/api/user/revoke_user_api_key.py +209 -0
  88. robosystems_client/api/user/select_user_graph.py +213 -0
  89. robosystems_client/api/user/update_user.py +205 -0
  90. robosystems_client/api/user/update_user_api_key.py +218 -0
  91. robosystems_client/api/user/update_user_password.py +218 -0
  92. robosystems_client/api/user_analytics/__init__.py +1 -0
  93. robosystems_client/api/user_analytics/get_detailed_user_analytics.py +222 -0
  94. robosystems_client/api/user_analytics/get_user_usage_overview.py +187 -0
  95. robosystems_client/api/user_limits/__init__.py +1 -0
  96. robosystems_client/api/user_limits/get_user_limits.py +190 -0
  97. robosystems_client/api/user_limits/get_user_usage.py +187 -0
  98. robosystems_client/api/user_subscriptions/__init__.py +1 -0
  99. robosystems_client/api/user_subscriptions/cancel_shared_repository_subscription.py +209 -0
  100. robosystems_client/api/user_subscriptions/get_repository_credits.py +206 -0
  101. robosystems_client/api/user_subscriptions/get_shared_repository_credits.py +193 -0
  102. robosystems_client/api/user_subscriptions/get_user_shared_subscriptions.py +213 -0
  103. robosystems_client/api/user_subscriptions/subscribe_to_shared_repository.py +214 -0
  104. robosystems_client/api/user_subscriptions/upgrade_shared_repository_subscription.py +228 -0
  105. robosystems_client/client.py +278 -0
  106. robosystems_client/errors.py +16 -0
  107. robosystems_client/extensions/README.md +611 -0
  108. robosystems_client/extensions/__init__.py +108 -0
  109. robosystems_client/extensions/auth_integration.py +210 -0
  110. robosystems_client/extensions/extensions.py +170 -0
  111. robosystems_client/extensions/operation_client.py +368 -0
  112. robosystems_client/extensions/query_client.py +375 -0
  113. robosystems_client/extensions/sse_client.py +520 -0
  114. robosystems_client/extensions/tests/__init__.py +1 -0
  115. robosystems_client/extensions/tests/test_integration.py +490 -0
  116. robosystems_client/extensions/tests/test_unit.py +560 -0
  117. robosystems_client/extensions/utils.py +526 -0
  118. robosystems_client/models/__init__.py +379 -0
  119. robosystems_client/models/account_info.py +79 -0
  120. robosystems_client/models/add_on_credit_info.py +119 -0
  121. robosystems_client/models/agent_message.py +68 -0
  122. robosystems_client/models/agent_request.py +132 -0
  123. robosystems_client/models/agent_request_context_type_0.py +44 -0
  124. robosystems_client/models/agent_response.py +132 -0
  125. robosystems_client/models/agent_response_metadata_type_0.py +44 -0
  126. robosystems_client/models/api_key_info.py +134 -0
  127. robosystems_client/models/api_keys_response.py +74 -0
  128. robosystems_client/models/auth_response.py +82 -0
  129. robosystems_client/models/auth_response_user.py +44 -0
  130. robosystems_client/models/available_extension.py +78 -0
  131. robosystems_client/models/available_extensions_response.py +73 -0
  132. robosystems_client/models/backup_create_request.py +117 -0
  133. robosystems_client/models/backup_export_request.py +72 -0
  134. robosystems_client/models/backup_list_response.py +90 -0
  135. robosystems_client/models/backup_response.py +200 -0
  136. robosystems_client/models/backup_restore_request.py +81 -0
  137. robosystems_client/models/backup_stats_response.py +156 -0
  138. robosystems_client/models/backup_stats_response_backup_formats.py +44 -0
  139. robosystems_client/models/cancel_operation_response_canceloperation.py +44 -0
  140. robosystems_client/models/cancellation_response.py +76 -0
  141. robosystems_client/models/check_credit_balance_response_checkcreditbalance.py +44 -0
  142. robosystems_client/models/connection_options_response.py +82 -0
  143. robosystems_client/models/connection_provider_info.py +203 -0
  144. robosystems_client/models/connection_provider_info_auth_type.py +11 -0
  145. robosystems_client/models/connection_provider_info_provider.py +10 -0
  146. robosystems_client/models/connection_response.py +149 -0
  147. robosystems_client/models/connection_response_metadata.py +44 -0
  148. robosystems_client/models/connection_response_provider.py +10 -0
  149. robosystems_client/models/create_api_key_request.py +82 -0
  150. robosystems_client/models/create_api_key_response.py +74 -0
  151. robosystems_client/models/create_connection_request.py +179 -0
  152. robosystems_client/models/create_connection_request_provider.py +10 -0
  153. robosystems_client/models/create_graph_request.py +183 -0
  154. robosystems_client/models/credit_check_request.py +82 -0
  155. robosystems_client/models/credit_summary.py +128 -0
  156. robosystems_client/models/credit_summary_response.py +140 -0
  157. robosystems_client/models/credits_summary_response.py +122 -0
  158. robosystems_client/models/credits_summary_response_credits_by_addon_item.py +44 -0
  159. robosystems_client/models/custom_schema_definition.py +194 -0
  160. robosystems_client/models/custom_schema_definition_metadata.py +49 -0
  161. robosystems_client/models/custom_schema_definition_nodes_item.py +44 -0
  162. robosystems_client/models/custom_schema_definition_relationships_item.py +44 -0
  163. robosystems_client/models/cypher_query_request.py +128 -0
  164. robosystems_client/models/cypher_query_request_parameters_type_0.py +44 -0
  165. robosystems_client/models/database_health_response.py +181 -0
  166. robosystems_client/models/database_info_response.py +191 -0
  167. robosystems_client/models/detailed_transactions_response.py +124 -0
  168. robosystems_client/models/detailed_transactions_response_date_range.py +44 -0
  169. robosystems_client/models/detailed_transactions_response_summary.py +59 -0
  170. robosystems_client/models/enhanced_credit_transaction_response.py +192 -0
  171. robosystems_client/models/enhanced_credit_transaction_response_metadata.py +44 -0
  172. robosystems_client/models/error_response.py +145 -0
  173. robosystems_client/models/exchange_token_request.py +116 -0
  174. robosystems_client/models/exchange_token_request_metadata_type_0.py +44 -0
  175. robosystems_client/models/get_all_credit_summaries_response_getallcreditsummaries.py +44 -0
  176. robosystems_client/models/get_backup_download_url_response_getbackupdownloadurl.py +44 -0
  177. robosystems_client/models/get_current_auth_user_response_getcurrentauthuser.py +44 -0
  178. robosystems_client/models/get_current_graph_bill_response_getcurrentgraphbill.py +44 -0
  179. robosystems_client/models/get_graph_billing_history_response_getgraphbillinghistory.py +44 -0
  180. robosystems_client/models/get_graph_monthly_bill_response_getgraphmonthlybill.py +44 -0
  181. robosystems_client/models/get_graph_schema_info_response_getgraphschemainfo.py +44 -0
  182. robosystems_client/models/get_graph_usage_details_response_getgraphusagedetails.py +44 -0
  183. robosystems_client/models/get_mcp_health_response_getmcphealth.py +44 -0
  184. robosystems_client/models/get_operation_status_response_getoperationstatus.py +44 -0
  185. robosystems_client/models/get_storage_usage_response_getstorageusage.py +44 -0
  186. robosystems_client/models/graph_info.py +92 -0
  187. robosystems_client/models/graph_metadata.py +105 -0
  188. robosystems_client/models/graph_metrics_response.py +188 -0
  189. robosystems_client/models/graph_metrics_response_estimated_size.py +44 -0
  190. robosystems_client/models/graph_metrics_response_health_status.py +44 -0
  191. robosystems_client/models/graph_metrics_response_node_counts.py +44 -0
  192. robosystems_client/models/graph_metrics_response_relationship_counts.py +44 -0
  193. robosystems_client/models/graph_usage_response.py +116 -0
  194. robosystems_client/models/graph_usage_response_query_statistics.py +44 -0
  195. robosystems_client/models/graph_usage_response_recent_activity.py +44 -0
  196. robosystems_client/models/graph_usage_response_storage_usage.py +44 -0
  197. robosystems_client/models/health_status.py +110 -0
  198. robosystems_client/models/health_status_details_type_0.py +44 -0
  199. robosystems_client/models/http_validation_error.py +75 -0
  200. robosystems_client/models/initial_entity_data.py +212 -0
  201. robosystems_client/models/kuzu_backup_health_response_kuzubackuphealth.py +44 -0
  202. robosystems_client/models/link_token_request.py +174 -0
  203. robosystems_client/models/link_token_request_options_type_0.py +44 -0
  204. robosystems_client/models/link_token_request_provider_type_0.py +10 -0
  205. robosystems_client/models/list_connections_provider_type_0.py +10 -0
  206. robosystems_client/models/list_schema_extensions_response_listschemaextensions.py +44 -0
  207. robosystems_client/models/login_request.py +68 -0
  208. robosystems_client/models/logout_user_response_logoutuser.py +44 -0
  209. robosystems_client/models/mcp_tool_call.py +84 -0
  210. robosystems_client/models/mcp_tool_call_arguments.py +44 -0
  211. robosystems_client/models/mcp_tools_response.py +74 -0
  212. robosystems_client/models/mcp_tools_response_tools_item.py +44 -0
  213. robosystems_client/models/o_auth_callback_request.py +130 -0
  214. robosystems_client/models/o_auth_init_request.py +128 -0
  215. robosystems_client/models/o_auth_init_request_additional_params_type_0.py +44 -0
  216. robosystems_client/models/o_auth_init_response.py +78 -0
  217. robosystems_client/models/password_check_request.py +82 -0
  218. robosystems_client/models/password_check_response.py +112 -0
  219. robosystems_client/models/password_check_response_character_types.py +44 -0
  220. robosystems_client/models/password_policy_response.py +66 -0
  221. robosystems_client/models/password_policy_response_policy.py +44 -0
  222. robosystems_client/models/plaid_connection_config.py +209 -0
  223. robosystems_client/models/plaid_connection_config_accounts_type_0_item.py +44 -0
  224. robosystems_client/models/plaid_connection_config_institution_type_0.py +44 -0
  225. robosystems_client/models/quick_books_connection_config.py +92 -0
  226. robosystems_client/models/register_request.py +98 -0
  227. robosystems_client/models/repository_credits_response.py +101 -0
  228. robosystems_client/models/repository_plan.py +10 -0
  229. robosystems_client/models/repository_type.py +10 -0
  230. robosystems_client/models/response_mode.py +11 -0
  231. robosystems_client/models/schema_export_response.py +163 -0
  232. robosystems_client/models/schema_export_response_data_stats_type_0.py +44 -0
  233. robosystems_client/models/schema_export_response_schema_definition_type_0.py +44 -0
  234. robosystems_client/models/schema_validation_request.py +142 -0
  235. robosystems_client/models/schema_validation_request_schema_definition_type_0.py +44 -0
  236. robosystems_client/models/schema_validation_response.py +227 -0
  237. robosystems_client/models/schema_validation_response_compatibility_type_0.py +44 -0
  238. robosystems_client/models/schema_validation_response_stats_type_0.py +44 -0
  239. robosystems_client/models/sec_connection_config.py +82 -0
  240. robosystems_client/models/sso_complete_request.py +60 -0
  241. robosystems_client/models/sso_exchange_request.py +90 -0
  242. robosystems_client/models/sso_exchange_response.py +78 -0
  243. robosystems_client/models/sso_login_request.py +60 -0
  244. robosystems_client/models/sso_token_response.py +78 -0
  245. robosystems_client/models/storage_limit_response.py +149 -0
  246. robosystems_client/models/subscription_info.py +180 -0
  247. robosystems_client/models/subscription_info_metadata.py +44 -0
  248. robosystems_client/models/subscription_request.py +89 -0
  249. robosystems_client/models/subscription_response.py +82 -0
  250. robosystems_client/models/success_response.py +112 -0
  251. robosystems_client/models/success_response_data_type_0.py +44 -0
  252. robosystems_client/models/sync_connection_request.py +106 -0
  253. robosystems_client/models/sync_connection_request_sync_options_type_0.py +44 -0
  254. robosystems_client/models/sync_connection_response_syncconnection.py +44 -0
  255. robosystems_client/models/tier_upgrade_request.py +62 -0
  256. robosystems_client/models/transaction_summary_response.py +126 -0
  257. robosystems_client/models/update_api_key_request.py +92 -0
  258. robosystems_client/models/update_password_request.py +76 -0
  259. robosystems_client/models/update_user_request.py +92 -0
  260. robosystems_client/models/upgrade_subscription_request.py +82 -0
  261. robosystems_client/models/user_analytics_response.py +132 -0
  262. robosystems_client/models/user_analytics_response_api_usage.py +44 -0
  263. robosystems_client/models/user_analytics_response_graph_usage.py +44 -0
  264. robosystems_client/models/user_analytics_response_limits.py +44 -0
  265. robosystems_client/models/user_analytics_response_recent_activity_item.py +44 -0
  266. robosystems_client/models/user_analytics_response_user_info.py +44 -0
  267. robosystems_client/models/user_graph_summary.py +134 -0
  268. robosystems_client/models/user_graphs_response.py +96 -0
  269. robosystems_client/models/user_limits_response.py +95 -0
  270. robosystems_client/models/user_response.py +132 -0
  271. robosystems_client/models/user_subscriptions_response.py +90 -0
  272. robosystems_client/models/user_usage_response.py +90 -0
  273. robosystems_client/models/user_usage_response_graphs.py +44 -0
  274. robosystems_client/models/user_usage_summary_response.py +130 -0
  275. robosystems_client/models/user_usage_summary_response_usage_vs_limits.py +44 -0
  276. robosystems_client/models/validation_error.py +88 -0
  277. robosystems_client/py.typed +1 -0
  278. robosystems_client/sdk-config.yaml +5 -0
  279. robosystems_client/types.py +54 -0
  280. robosystems_client-0.1.9.dist-info/METADATA +302 -0
  281. robosystems_client-0.1.9.dist-info/RECORD +282 -0
  282. robosystems_client-0.1.9.dist-info/WHEEL +4 -0
@@ -0,0 +1,14 @@
1
+ """RoboSystems Python Client."""
2
+
3
+ __version__ = "0.1.0"
4
+
5
+ from .client import AuthenticatedClient, Client
6
+
7
+ __all__ = (
8
+ "AuthenticatedClient",
9
+ "Client",
10
+ "RoboSystemsSDK",
11
+ )
12
+
13
+ # Convenience alias for the main SDK
14
+ RoboSystemsSDK = AuthenticatedClient
@@ -0,0 +1 @@
1
+ """Contains methods for accessing the API"""
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""
@@ -0,0 +1,423 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.agent_request import AgentRequest
9
+ from ...models.agent_response import AgentResponse
10
+ from ...models.error_response import ErrorResponse
11
+ from ...models.http_validation_error import HTTPValidationError
12
+ from ...types import UNSET, Response, Unset
13
+
14
+
15
+ def _get_kwargs(
16
+ graph_id: str,
17
+ *,
18
+ body: AgentRequest,
19
+ authorization: Union[None, Unset, str] = UNSET,
20
+ auth_token: Union[None, Unset, str] = UNSET,
21
+ ) -> dict[str, Any]:
22
+ headers: dict[str, Any] = {}
23
+ if not isinstance(authorization, Unset):
24
+ headers["authorization"] = authorization
25
+
26
+ cookies = {}
27
+ if auth_token is not UNSET:
28
+ cookies["auth-token"] = auth_token
29
+
30
+ _kwargs: dict[str, Any] = {
31
+ "method": "post",
32
+ "url": f"/v1/{graph_id}/agent",
33
+ "cookies": cookies,
34
+ }
35
+
36
+ _kwargs["json"] = body.to_dict()
37
+
38
+ headers["Content-Type"] = "application/json"
39
+
40
+ _kwargs["headers"] = headers
41
+ return _kwargs
42
+
43
+
44
+ def _parse_response(
45
+ *, client: Union[AuthenticatedClient, Client], response: httpx.Response
46
+ ) -> Optional[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
47
+ if response.status_code == 200:
48
+ response_200 = AgentResponse.from_dict(response.json())
49
+
50
+ return response_200
51
+ if response.status_code == 400:
52
+ response_400 = ErrorResponse.from_dict(response.json())
53
+
54
+ return response_400
55
+ if response.status_code == 402:
56
+ response_402 = ErrorResponse.from_dict(response.json())
57
+
58
+ return response_402
59
+ if response.status_code == 403:
60
+ response_403 = ErrorResponse.from_dict(response.json())
61
+
62
+ return response_403
63
+ if response.status_code == 500:
64
+ response_500 = ErrorResponse.from_dict(response.json())
65
+
66
+ return response_500
67
+ if response.status_code == 422:
68
+ response_422 = HTTPValidationError.from_dict(response.json())
69
+
70
+ return response_422
71
+ if client.raise_on_unexpected_status:
72
+ raise errors.UnexpectedStatus(response.status_code, response.content)
73
+ else:
74
+ return None
75
+
76
+
77
+ def _build_response(
78
+ *, client: Union[AuthenticatedClient, Client], response: httpx.Response
79
+ ) -> Response[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
80
+ return Response(
81
+ status_code=HTTPStatus(response.status_code),
82
+ content=response.content,
83
+ headers=response.headers,
84
+ parsed=_parse_response(client=client, response=response),
85
+ )
86
+
87
+
88
+ def sync_detailed(
89
+ graph_id: str,
90
+ *,
91
+ client: AuthenticatedClient,
92
+ body: AgentRequest,
93
+ authorization: Union[None, Unset, str] = UNSET,
94
+ auth_token: Union[None, Unset, str] = UNSET,
95
+ ) -> Response[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
96
+ """Query Financial Agent
97
+
98
+ AI-powered financial analysis with direct access to graph data.
99
+
100
+ This endpoint provides intelligent financial analysis using an AI agent that can:
101
+ - Analyze entity financial statements and SEC filings
102
+ - Review QuickBooks transactions and accounting data
103
+ - Perform multi-period trend analysis
104
+ - Generate insights from balance sheets and income statements
105
+ - Answer complex financial queries with contextual understanding
106
+
107
+ **Execution Modes:**
108
+ - **Quick Analysis** (default): Synchronous responses for simple queries (1-2 tool calls)
109
+ - **Extended Analysis**: Asynchronous processing for complex research (returns operation_id for SSE
110
+ monitoring)
111
+
112
+ **Extended Analysis Monitoring:**
113
+ For complex queries, connect to the SSE stream for real-time progress:
114
+ ```javascript
115
+ const eventSource = new EventSource('/v1/operations/{operation_id}/stream');
116
+ eventSource.onmessage = (event) => {
117
+ const data = JSON.parse(event.data);
118
+ console.log('Analysis:', data.message);
119
+ };
120
+ ```
121
+
122
+ **SSE Connection Limits:**
123
+ - Maximum 5 concurrent SSE connections per user
124
+ - Rate limited to 10 new connections per minute
125
+ - Automatic circuit breaker for Redis failures
126
+ - Graceful degradation with fallback to polling if SSE unavailable
127
+
128
+ **Events Emitted:**
129
+ - `operation_started`: Analysis begins
130
+ - `operation_progress`: Tool calls, analysis steps
131
+ - `operation_completed`: Final comprehensive analysis
132
+ - `operation_error`: Analysis failed
133
+
134
+ **Error Handling:**
135
+ - `429 Too Many Requests`: SSE connection limit exceeded
136
+ - `503 Service Unavailable`: SSE system temporarily disabled
137
+ - Fallback to status polling endpoint if SSE unavailable
138
+
139
+ **Credit Consumption:**
140
+ - Variable based on complexity: 3-60 credits
141
+ - Simple queries: 3-15 credits
142
+ - Complex analysis: 15-60 credits
143
+ - Multiplied by graph tier (standard=1x, enterprise=2x, premium=4x)
144
+
145
+ The agent automatically determines query complexity or you can force extended analysis.
146
+
147
+ Args:
148
+ graph_id (str):
149
+ authorization (Union[None, Unset, str]):
150
+ auth_token (Union[None, Unset, str]):
151
+ body (AgentRequest): Request model for financial agent interactions.
152
+
153
+ Raises:
154
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
155
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
156
+
157
+ Returns:
158
+ Response[Union[AgentResponse, ErrorResponse, HTTPValidationError]]
159
+ """
160
+
161
+ kwargs = _get_kwargs(
162
+ graph_id=graph_id,
163
+ body=body,
164
+ authorization=authorization,
165
+ auth_token=auth_token,
166
+ )
167
+
168
+ response = client.get_httpx_client().request(
169
+ **kwargs,
170
+ )
171
+
172
+ return _build_response(client=client, response=response)
173
+
174
+
175
+ def sync(
176
+ graph_id: str,
177
+ *,
178
+ client: AuthenticatedClient,
179
+ body: AgentRequest,
180
+ authorization: Union[None, Unset, str] = UNSET,
181
+ auth_token: Union[None, Unset, str] = UNSET,
182
+ ) -> Optional[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
183
+ """Query Financial Agent
184
+
185
+ AI-powered financial analysis with direct access to graph data.
186
+
187
+ This endpoint provides intelligent financial analysis using an AI agent that can:
188
+ - Analyze entity financial statements and SEC filings
189
+ - Review QuickBooks transactions and accounting data
190
+ - Perform multi-period trend analysis
191
+ - Generate insights from balance sheets and income statements
192
+ - Answer complex financial queries with contextual understanding
193
+
194
+ **Execution Modes:**
195
+ - **Quick Analysis** (default): Synchronous responses for simple queries (1-2 tool calls)
196
+ - **Extended Analysis**: Asynchronous processing for complex research (returns operation_id for SSE
197
+ monitoring)
198
+
199
+ **Extended Analysis Monitoring:**
200
+ For complex queries, connect to the SSE stream for real-time progress:
201
+ ```javascript
202
+ const eventSource = new EventSource('/v1/operations/{operation_id}/stream');
203
+ eventSource.onmessage = (event) => {
204
+ const data = JSON.parse(event.data);
205
+ console.log('Analysis:', data.message);
206
+ };
207
+ ```
208
+
209
+ **SSE Connection Limits:**
210
+ - Maximum 5 concurrent SSE connections per user
211
+ - Rate limited to 10 new connections per minute
212
+ - Automatic circuit breaker for Redis failures
213
+ - Graceful degradation with fallback to polling if SSE unavailable
214
+
215
+ **Events Emitted:**
216
+ - `operation_started`: Analysis begins
217
+ - `operation_progress`: Tool calls, analysis steps
218
+ - `operation_completed`: Final comprehensive analysis
219
+ - `operation_error`: Analysis failed
220
+
221
+ **Error Handling:**
222
+ - `429 Too Many Requests`: SSE connection limit exceeded
223
+ - `503 Service Unavailable`: SSE system temporarily disabled
224
+ - Fallback to status polling endpoint if SSE unavailable
225
+
226
+ **Credit Consumption:**
227
+ - Variable based on complexity: 3-60 credits
228
+ - Simple queries: 3-15 credits
229
+ - Complex analysis: 15-60 credits
230
+ - Multiplied by graph tier (standard=1x, enterprise=2x, premium=4x)
231
+
232
+ The agent automatically determines query complexity or you can force extended analysis.
233
+
234
+ Args:
235
+ graph_id (str):
236
+ authorization (Union[None, Unset, str]):
237
+ auth_token (Union[None, Unset, str]):
238
+ body (AgentRequest): Request model for financial agent interactions.
239
+
240
+ Raises:
241
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
242
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
243
+
244
+ Returns:
245
+ Union[AgentResponse, ErrorResponse, HTTPValidationError]
246
+ """
247
+
248
+ return sync_detailed(
249
+ graph_id=graph_id,
250
+ client=client,
251
+ body=body,
252
+ authorization=authorization,
253
+ auth_token=auth_token,
254
+ ).parsed
255
+
256
+
257
+ async def asyncio_detailed(
258
+ graph_id: str,
259
+ *,
260
+ client: AuthenticatedClient,
261
+ body: AgentRequest,
262
+ authorization: Union[None, Unset, str] = UNSET,
263
+ auth_token: Union[None, Unset, str] = UNSET,
264
+ ) -> Response[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
265
+ """Query Financial Agent
266
+
267
+ AI-powered financial analysis with direct access to graph data.
268
+
269
+ This endpoint provides intelligent financial analysis using an AI agent that can:
270
+ - Analyze entity financial statements and SEC filings
271
+ - Review QuickBooks transactions and accounting data
272
+ - Perform multi-period trend analysis
273
+ - Generate insights from balance sheets and income statements
274
+ - Answer complex financial queries with contextual understanding
275
+
276
+ **Execution Modes:**
277
+ - **Quick Analysis** (default): Synchronous responses for simple queries (1-2 tool calls)
278
+ - **Extended Analysis**: Asynchronous processing for complex research (returns operation_id for SSE
279
+ monitoring)
280
+
281
+ **Extended Analysis Monitoring:**
282
+ For complex queries, connect to the SSE stream for real-time progress:
283
+ ```javascript
284
+ const eventSource = new EventSource('/v1/operations/{operation_id}/stream');
285
+ eventSource.onmessage = (event) => {
286
+ const data = JSON.parse(event.data);
287
+ console.log('Analysis:', data.message);
288
+ };
289
+ ```
290
+
291
+ **SSE Connection Limits:**
292
+ - Maximum 5 concurrent SSE connections per user
293
+ - Rate limited to 10 new connections per minute
294
+ - Automatic circuit breaker for Redis failures
295
+ - Graceful degradation with fallback to polling if SSE unavailable
296
+
297
+ **Events Emitted:**
298
+ - `operation_started`: Analysis begins
299
+ - `operation_progress`: Tool calls, analysis steps
300
+ - `operation_completed`: Final comprehensive analysis
301
+ - `operation_error`: Analysis failed
302
+
303
+ **Error Handling:**
304
+ - `429 Too Many Requests`: SSE connection limit exceeded
305
+ - `503 Service Unavailable`: SSE system temporarily disabled
306
+ - Fallback to status polling endpoint if SSE unavailable
307
+
308
+ **Credit Consumption:**
309
+ - Variable based on complexity: 3-60 credits
310
+ - Simple queries: 3-15 credits
311
+ - Complex analysis: 15-60 credits
312
+ - Multiplied by graph tier (standard=1x, enterprise=2x, premium=4x)
313
+
314
+ The agent automatically determines query complexity or you can force extended analysis.
315
+
316
+ Args:
317
+ graph_id (str):
318
+ authorization (Union[None, Unset, str]):
319
+ auth_token (Union[None, Unset, str]):
320
+ body (AgentRequest): Request model for financial agent interactions.
321
+
322
+ Raises:
323
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
324
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
325
+
326
+ Returns:
327
+ Response[Union[AgentResponse, ErrorResponse, HTTPValidationError]]
328
+ """
329
+
330
+ kwargs = _get_kwargs(
331
+ graph_id=graph_id,
332
+ body=body,
333
+ authorization=authorization,
334
+ auth_token=auth_token,
335
+ )
336
+
337
+ response = await client.get_async_httpx_client().request(**kwargs)
338
+
339
+ return _build_response(client=client, response=response)
340
+
341
+
342
+ async def asyncio(
343
+ graph_id: str,
344
+ *,
345
+ client: AuthenticatedClient,
346
+ body: AgentRequest,
347
+ authorization: Union[None, Unset, str] = UNSET,
348
+ auth_token: Union[None, Unset, str] = UNSET,
349
+ ) -> Optional[Union[AgentResponse, ErrorResponse, HTTPValidationError]]:
350
+ """Query Financial Agent
351
+
352
+ AI-powered financial analysis with direct access to graph data.
353
+
354
+ This endpoint provides intelligent financial analysis using an AI agent that can:
355
+ - Analyze entity financial statements and SEC filings
356
+ - Review QuickBooks transactions and accounting data
357
+ - Perform multi-period trend analysis
358
+ - Generate insights from balance sheets and income statements
359
+ - Answer complex financial queries with contextual understanding
360
+
361
+ **Execution Modes:**
362
+ - **Quick Analysis** (default): Synchronous responses for simple queries (1-2 tool calls)
363
+ - **Extended Analysis**: Asynchronous processing for complex research (returns operation_id for SSE
364
+ monitoring)
365
+
366
+ **Extended Analysis Monitoring:**
367
+ For complex queries, connect to the SSE stream for real-time progress:
368
+ ```javascript
369
+ const eventSource = new EventSource('/v1/operations/{operation_id}/stream');
370
+ eventSource.onmessage = (event) => {
371
+ const data = JSON.parse(event.data);
372
+ console.log('Analysis:', data.message);
373
+ };
374
+ ```
375
+
376
+ **SSE Connection Limits:**
377
+ - Maximum 5 concurrent SSE connections per user
378
+ - Rate limited to 10 new connections per minute
379
+ - Automatic circuit breaker for Redis failures
380
+ - Graceful degradation with fallback to polling if SSE unavailable
381
+
382
+ **Events Emitted:**
383
+ - `operation_started`: Analysis begins
384
+ - `operation_progress`: Tool calls, analysis steps
385
+ - `operation_completed`: Final comprehensive analysis
386
+ - `operation_error`: Analysis failed
387
+
388
+ **Error Handling:**
389
+ - `429 Too Many Requests`: SSE connection limit exceeded
390
+ - `503 Service Unavailable`: SSE system temporarily disabled
391
+ - Fallback to status polling endpoint if SSE unavailable
392
+
393
+ **Credit Consumption:**
394
+ - Variable based on complexity: 3-60 credits
395
+ - Simple queries: 3-15 credits
396
+ - Complex analysis: 15-60 credits
397
+ - Multiplied by graph tier (standard=1x, enterprise=2x, premium=4x)
398
+
399
+ The agent automatically determines query complexity or you can force extended analysis.
400
+
401
+ Args:
402
+ graph_id (str):
403
+ authorization (Union[None, Unset, str]):
404
+ auth_token (Union[None, Unset, str]):
405
+ body (AgentRequest): Request model for financial agent interactions.
406
+
407
+ Raises:
408
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
409
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
410
+
411
+ Returns:
412
+ Union[AgentResponse, ErrorResponse, HTTPValidationError]
413
+ """
414
+
415
+ return (
416
+ await asyncio_detailed(
417
+ graph_id=graph_id,
418
+ client=client,
419
+ body=body,
420
+ authorization=authorization,
421
+ auth_token=auth_token,
422
+ )
423
+ ).parsed
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""
@@ -0,0 +1,172 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.http_validation_error import HTTPValidationError
9
+ from ...models.password_check_request import PasswordCheckRequest
10
+ from ...models.password_check_response import PasswordCheckResponse
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs(
15
+ *,
16
+ body: PasswordCheckRequest,
17
+ ) -> dict[str, Any]:
18
+ headers: dict[str, Any] = {}
19
+
20
+ _kwargs: dict[str, Any] = {
21
+ "method": "post",
22
+ "url": "/v1/auth/password/check",
23
+ }
24
+
25
+ _kwargs["json"] = body.to_dict()
26
+
27
+ headers["Content-Type"] = "application/json"
28
+
29
+ _kwargs["headers"] = headers
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(
34
+ *, client: Union[AuthenticatedClient, Client], response: httpx.Response
35
+ ) -> Optional[Union[HTTPValidationError, PasswordCheckResponse]]:
36
+ if response.status_code == 200:
37
+ response_200 = PasswordCheckResponse.from_dict(response.json())
38
+
39
+ return response_200
40
+ if response.status_code == 422:
41
+ response_422 = HTTPValidationError.from_dict(response.json())
42
+
43
+ return response_422
44
+ if client.raise_on_unexpected_status:
45
+ raise errors.UnexpectedStatus(response.status_code, response.content)
46
+ else:
47
+ return None
48
+
49
+
50
+ def _build_response(
51
+ *, client: Union[AuthenticatedClient, Client], response: httpx.Response
52
+ ) -> Response[Union[HTTPValidationError, PasswordCheckResponse]]:
53
+ return Response(
54
+ status_code=HTTPStatus(response.status_code),
55
+ content=response.content,
56
+ headers=response.headers,
57
+ parsed=_parse_response(client=client, response=response),
58
+ )
59
+
60
+
61
+ def sync_detailed(
62
+ *,
63
+ client: Union[AuthenticatedClient, Client],
64
+ body: PasswordCheckRequest,
65
+ ) -> Response[Union[HTTPValidationError, PasswordCheckResponse]]:
66
+ """Check Password Strength
67
+
68
+ Check password strength and get validation feedback
69
+
70
+ Args:
71
+ body (PasswordCheckRequest): Password strength check request model.
72
+
73
+ Raises:
74
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
75
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
76
+
77
+ Returns:
78
+ Response[Union[HTTPValidationError, PasswordCheckResponse]]
79
+ """
80
+
81
+ kwargs = _get_kwargs(
82
+ body=body,
83
+ )
84
+
85
+ response = client.get_httpx_client().request(
86
+ **kwargs,
87
+ )
88
+
89
+ return _build_response(client=client, response=response)
90
+
91
+
92
+ def sync(
93
+ *,
94
+ client: Union[AuthenticatedClient, Client],
95
+ body: PasswordCheckRequest,
96
+ ) -> Optional[Union[HTTPValidationError, PasswordCheckResponse]]:
97
+ """Check Password Strength
98
+
99
+ Check password strength and get validation feedback
100
+
101
+ Args:
102
+ body (PasswordCheckRequest): Password strength check request model.
103
+
104
+ Raises:
105
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
106
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
107
+
108
+ Returns:
109
+ Union[HTTPValidationError, PasswordCheckResponse]
110
+ """
111
+
112
+ return sync_detailed(
113
+ client=client,
114
+ body=body,
115
+ ).parsed
116
+
117
+
118
+ async def asyncio_detailed(
119
+ *,
120
+ client: Union[AuthenticatedClient, Client],
121
+ body: PasswordCheckRequest,
122
+ ) -> Response[Union[HTTPValidationError, PasswordCheckResponse]]:
123
+ """Check Password Strength
124
+
125
+ Check password strength and get validation feedback
126
+
127
+ Args:
128
+ body (PasswordCheckRequest): Password strength check request model.
129
+
130
+ Raises:
131
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
132
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
133
+
134
+ Returns:
135
+ Response[Union[HTTPValidationError, PasswordCheckResponse]]
136
+ """
137
+
138
+ kwargs = _get_kwargs(
139
+ body=body,
140
+ )
141
+
142
+ response = await client.get_async_httpx_client().request(**kwargs)
143
+
144
+ return _build_response(client=client, response=response)
145
+
146
+
147
+ async def asyncio(
148
+ *,
149
+ client: Union[AuthenticatedClient, Client],
150
+ body: PasswordCheckRequest,
151
+ ) -> Optional[Union[HTTPValidationError, PasswordCheckResponse]]:
152
+ """Check Password Strength
153
+
154
+ Check password strength and get validation feedback
155
+
156
+ Args:
157
+ body (PasswordCheckRequest): Password strength check request model.
158
+
159
+ Raises:
160
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
161
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
162
+
163
+ Returns:
164
+ Union[HTTPValidationError, PasswordCheckResponse]
165
+ """
166
+
167
+ return (
168
+ await asyncio_detailed(
169
+ client=client,
170
+ body=body,
171
+ )
172
+ ).parsed