qca 0.0.1.dev1__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.
Files changed (596) hide show
  1. qca/__init__.py +50 -0
  2. qca/_version.py +1 -0
  3. qca/common/__init__.py +43 -0
  4. qca/common/_base_client.py +450 -0
  5. qca/common/_exceptions.py +97 -0
  6. qca/common/_files.py +38 -0
  7. qca/common/_models.py +33 -0
  8. qca/common/_resource.py +35 -0
  9. qca/common/_response.py +220 -0
  10. qca/common/_streaming.py +143 -0
  11. qca/common/_types.py +25 -0
  12. qca/common/_utils.py +73 -0
  13. qca/common/credentials.py +13 -0
  14. qca/common/pagination.py +118 -0
  15. qca/forward/__init__.py +7 -0
  16. qca/forward/_client.py +142 -0
  17. qca/forward/resources/__init__.py +14 -0
  18. qca/forward/resources/batches/__init__.py +4 -0
  19. qca/forward/resources/batches/batches.py +308 -0
  20. qca/forward/resources/batches/tasks.py +71 -0
  21. qca/forward/resources/channel_pairings.py +111 -0
  22. qca/forward/resources/channels/__init__.py +4 -0
  23. qca/forward/resources/channels/channels.py +336 -0
  24. qca/forward/resources/channels/qr_sessions.py +106 -0
  25. qca/forward/resources/environments.py +305 -0
  26. qca/forward/resources/files.py +272 -0
  27. qca/forward/resources/identities/__init__.py +6 -0
  28. qca/forward/resources/identities/configs.py +249 -0
  29. qca/forward/resources/identities/identities.py +570 -0
  30. qca/forward/resources/identities/memory_stores.py +186 -0
  31. qca/forward/resources/memory_stores/__init__.py +6 -0
  32. qca/forward/resources/memory_stores/memories.py +290 -0
  33. qca/forward/resources/memory_stores/memory_stores.py +321 -0
  34. qca/forward/resources/memory_stores/memory_versions.py +179 -0
  35. qca/forward/resources/models.py +58 -0
  36. qca/forward/resources/schedule_runs.py +149 -0
  37. qca/forward/resources/schedules.py +545 -0
  38. qca/forward/resources/sessions/__init__.py +6 -0
  39. qca/forward/resources/sessions/events.py +208 -0
  40. qca/forward/resources/sessions/resources.py +66 -0
  41. qca/forward/resources/sessions/sessions.py +417 -0
  42. qca/forward/resources/sessions/threads/__init__.py +4 -0
  43. qca/forward/resources/sessions/threads/events.py +128 -0
  44. qca/forward/resources/sessions/threads/threads.py +177 -0
  45. qca/forward/resources/skills/__init__.py +4 -0
  46. qca/forward/resources/skills/skills.py +335 -0
  47. qca/forward/resources/skills/versions.py +253 -0
  48. qca/forward/resources/templates.py +426 -0
  49. qca/forward/resources/vaults/__init__.py +4 -0
  50. qca/forward/resources/vaults/credentials.py +227 -0
  51. qca/forward/resources/vaults/vaults.py +217 -0
  52. qca/forward/types/__init__.py +205 -0
  53. qca/forward/types/batch.py +35 -0
  54. qca/forward/types/batch_cancel_params.py +11 -0
  55. qca/forward/types/batch_create_params.py +14 -0
  56. qca/forward/types/batch_file.py +13 -0
  57. qca/forward/types/batch_list_params.py +14 -0
  58. qca/forward/types/batch_request_counts.py +17 -0
  59. qca/forward/types/batch_task.py +24 -0
  60. qca/forward/types/batch_task_artifacts_item.py +14 -0
  61. qca/forward/types/batch_task_error.py +12 -0
  62. qca/forward/types/batch_task_list_params.py +14 -0
  63. qca/forward/types/batch_task_usage.py +11 -0
  64. qca/forward/types/batch_usage.py +11 -0
  65. qca/forward/types/channel.py +27 -0
  66. qca/forward/types/channel_channel_config.py +14 -0
  67. qca/forward/types/channel_channel_config_response_options.py +12 -0
  68. qca/forward/types/channel_create_params.py +18 -0
  69. qca/forward/types/channel_identity_resolution.py +11 -0
  70. qca/forward/types/channel_list_params.py +18 -0
  71. qca/forward/types/channel_pairing.py +17 -0
  72. qca/forward/types/channel_pairing_create_params.py +14 -0
  73. qca/forward/types/channel_qr_session.py +19 -0
  74. qca/forward/types/channel_qr_session_create_params.py +11 -0
  75. qca/forward/types/channel_update_params.py +16 -0
  76. qca/forward/types/content_block_param.py +17 -0
  77. qca/forward/types/deleted_channel.py +12 -0
  78. qca/forward/types/deleted_channel_pairing.py +12 -0
  79. qca/forward/types/deleted_identity.py +12 -0
  80. qca/forward/types/deleted_memory.py +13 -0
  81. qca/forward/types/deleted_memory_store.py +13 -0
  82. qca/forward/types/deleted_memory_store_mount.py +13 -0
  83. qca/forward/types/deleted_skill_version.py +13 -0
  84. qca/forward/types/effective_config.py +23 -0
  85. qca/forward/types/effective_config_agent.py +19 -0
  86. qca/forward/types/effective_config_agent_tools_item.py +15 -0
  87. qca/forward/types/effective_config_agent_tools_item_configs_item.py +12 -0
  88. qca/forward/types/effective_config_session.py +17 -0
  89. qca/forward/types/effective_config_session_resources_item.py +14 -0
  90. qca/forward/types/environment.py +24 -0
  91. qca/forward/types/environment_config.py +15 -0
  92. qca/forward/types/environment_config_packages.py +17 -0
  93. qca/forward/types/environment_create_params.py +15 -0
  94. qca/forward/types/environment_list_params.py +14 -0
  95. qca/forward/types/environment_update_params.py +14 -0
  96. qca/forward/types/environment_variable_override.py +12 -0
  97. qca/forward/types/environment_variable_override_param.py +12 -0
  98. qca/forward/types/file_list_params.py +16 -0
  99. qca/forward/types/file_metadata.py +22 -0
  100. qca/forward/types/file_upload_params.py +17 -0
  101. qca/forward/types/git_hub_repository.py +13 -0
  102. qca/forward/types/git_hub_repository_param.py +14 -0
  103. qca/forward/types/identity.py +19 -0
  104. qca/forward/types/identity_clear_params.py +11 -0
  105. qca/forward/types/identity_clear_response.py +18 -0
  106. qca/forward/types/identity_clear_response_summary.py +16 -0
  107. qca/forward/types/identity_config.py +25 -0
  108. qca/forward/types/identity_config_list_params.py +15 -0
  109. qca/forward/types/identity_config_spec.py +31 -0
  110. qca/forward/types/identity_config_spec_param.py +31 -0
  111. qca/forward/types/identity_config_upsert_params.py +17 -0
  112. qca/forward/types/identity_create_params.py +15 -0
  113. qca/forward/types/identity_list_params.py +17 -0
  114. qca/forward/types/identity_list_templates_response.py +14 -0
  115. qca/forward/types/identity_memory_store_list_response.py +15 -0
  116. qca/forward/types/identity_memory_store_mount_params.py +9 -0
  117. qca/forward/types/identity_stats.py +14 -0
  118. qca/forward/types/identity_template.py +15 -0
  119. qca/forward/types/identity_update_params.py +15 -0
  120. qca/forward/types/image_source_param.py +15 -0
  121. qca/forward/types/mcp_server.py +13 -0
  122. qca/forward/types/mcp_server_override.py +13 -0
  123. qca/forward/types/mcp_server_override_param.py +13 -0
  124. qca/forward/types/mcp_server_param.py +13 -0
  125. qca/forward/types/memory.py +21 -0
  126. qca/forward/types/memory_store.py +25 -0
  127. qca/forward/types/memory_store_create_params.py +14 -0
  128. qca/forward/types/memory_store_list_params.py +14 -0
  129. qca/forward/types/memory_store_memory_create_params.py +13 -0
  130. qca/forward/types/memory_store_memory_list_params.py +14 -0
  131. qca/forward/types/memory_store_memory_update_params.py +13 -0
  132. qca/forward/types/memory_store_memory_version_list_params.py +14 -0
  133. qca/forward/types/memory_store_mount.py +20 -0
  134. qca/forward/types/memory_store_update_params.py +13 -0
  135. qca/forward/types/memory_version.py +23 -0
  136. qca/forward/types/model.py +23 -0
  137. qca/forward/types/model_config.py +13 -0
  138. qca/forward/types/model_config_param.py +13 -0
  139. qca/forward/types/model_list_response.py +15 -0
  140. qca/forward/types/multiagent_config.py +15 -0
  141. qca/forward/types/multiagent_config_param.py +15 -0
  142. qca/forward/types/multiagent_entry.py +13 -0
  143. qca/forward/types/multiagent_entry_param.py +13 -0
  144. qca/forward/types/permission_policy.py +11 -0
  145. qca/forward/types/permission_policy_param.py +9 -0
  146. qca/forward/types/resource_binding.py +11 -0
  147. qca/forward/types/resource_binding_param.py +11 -0
  148. qca/forward/types/schedule.py +34 -0
  149. qca/forward/types/schedule_archive_many_params.py +12 -0
  150. qca/forward/types/schedule_archive_many_response.py +11 -0
  151. qca/forward/types/schedule_archive_params.py +11 -0
  152. qca/forward/types/schedule_create_params.py +21 -0
  153. qca/forward/types/schedule_execution.py +14 -0
  154. qca/forward/types/schedule_initial_events_item.py +12 -0
  155. qca/forward/types/schedule_list_params.py +19 -0
  156. qca/forward/types/schedule_pause_params.py +11 -0
  157. qca/forward/types/schedule_paused_reason.py +11 -0
  158. qca/forward/types/schedule_run.py +33 -0
  159. qca/forward/types/schedule_run_list_params.py +20 -0
  160. qca/forward/types/schedule_run_params.py +11 -0
  161. qca/forward/types/schedule_run_retrieve_params.py +11 -0
  162. qca/forward/types/schedule_run_trigger_context.py +13 -0
  163. qca/forward/types/schedule_sinks_item.py +16 -0
  164. qca/forward/types/schedule_sinks_item_target.py +12 -0
  165. qca/forward/types/schedule_trigger_policy.py +15 -0
  166. qca/forward/types/schedule_unpause_params.py +11 -0
  167. qca/forward/types/schedule_update_params.py +20 -0
  168. qca/forward/types/session.py +33 -0
  169. qca/forward/types/session_archive_params.py +11 -0
  170. qca/forward/types/session_cancel_params.py +11 -0
  171. qca/forward/types/session_config.py +11 -0
  172. qca/forward/types/session_create_params.py +21 -0
  173. qca/forward/types/session_create_params_config_param.py +11 -0
  174. qca/forward/types/session_event.py +52 -0
  175. qca/forward/types/session_event_list_params.py +18 -0
  176. qca/forward/types/session_event_param.py +24 -0
  177. qca/forward/types/session_event_send_params.py +15 -0
  178. qca/forward/types/session_event_send_response.py +14 -0
  179. qca/forward/types/session_event_stream_params.py +14 -0
  180. qca/forward/types/session_list_params.py +27 -0
  181. qca/forward/types/session_resource.py +17 -0
  182. qca/forward/types/session_resource_add_params.py +13 -0
  183. qca/forward/types/session_resource_spec_param.py +13 -0
  184. qca/forward/types/session_stats.py +12 -0
  185. qca/forward/types/session_template.py +18 -0
  186. qca/forward/types/session_thread.py +27 -0
  187. qca/forward/types/session_thread_archive_params.py +11 -0
  188. qca/forward/types/session_thread_event_list_params.py +13 -0
  189. qca/forward/types/session_thread_event_stream_params.py +11 -0
  190. qca/forward/types/session_thread_list_params.py +13 -0
  191. qca/forward/types/session_thread_stop_reason.py +11 -0
  192. qca/forward/types/session_update_params.py +17 -0
  193. qca/forward/types/session_update_params_config_param.py +11 -0
  194. qca/forward/types/session_usage.py +11 -0
  195. qca/forward/types/skill.py +23 -0
  196. qca/forward/types/skill_binding.py +14 -0
  197. qca/forward/types/skill_binding_param.py +14 -0
  198. qca/forward/types/skill_create_params.py +20 -0
  199. qca/forward/types/skill_list_params.py +17 -0
  200. qca/forward/types/skill_override.py +13 -0
  201. qca/forward/types/skill_override_param.py +13 -0
  202. qca/forward/types/skill_retrieve_params.py +11 -0
  203. qca/forward/types/skill_update_params.py +16 -0
  204. qca/forward/types/skill_version.py +22 -0
  205. qca/forward/types/skill_version_create_params.py +13 -0
  206. qca/forward/types/skill_version_list_params.py +12 -0
  207. qca/forward/types/system_override.py +12 -0
  208. qca/forward/types/system_override_param.py +12 -0
  209. qca/forward/types/template.py +39 -0
  210. qca/forward/types/template_archive_params.py +11 -0
  211. qca/forward/types/template_clone_params.py +13 -0
  212. qca/forward/types/template_create_params.py +35 -0
  213. qca/forward/types/template_list_params.py +14 -0
  214. qca/forward/types/template_update_params.py +35 -0
  215. qca/forward/types/tool.py +21 -0
  216. qca/forward/types/tool_config.py +16 -0
  217. qca/forward/types/tool_config_param.py +16 -0
  218. qca/forward/types/tool_override.py +15 -0
  219. qca/forward/types/tool_override_param.py +15 -0
  220. qca/forward/types/tool_param.py +21 -0
  221. qca/forward/types/vault.py +18 -0
  222. qca/forward/types/vault_create_params.py +13 -0
  223. qca/forward/types/vault_credential.py +22 -0
  224. qca/forward/types/vault_credential_auth.py +12 -0
  225. qca/forward/types/vault_credential_create_params.py +14 -0
  226. qca/forward/types/vault_credential_list_params.py +15 -0
  227. qca/forward/types/vault_list_params.py +15 -0
  228. qca/managed/__init__.py +7 -0
  229. qca/managed/_client.py +115 -0
  230. qca/managed/resources/__init__.py +10 -0
  231. qca/managed/resources/agents/__init__.py +4 -0
  232. qca/managed/resources/agents/agents.py +386 -0
  233. qca/managed/resources/agents/versions.py +71 -0
  234. qca/managed/resources/deployment_runs.py +160 -0
  235. qca/managed/resources/deployments.py +552 -0
  236. qca/managed/resources/dreams.py +303 -0
  237. qca/managed/resources/environments/__init__.py +4 -0
  238. qca/managed/resources/environments/environments.py +359 -0
  239. qca/managed/resources/environments/work.py +449 -0
  240. qca/managed/resources/files.py +295 -0
  241. qca/managed/resources/memory_stores/__init__.py +6 -0
  242. qca/managed/resources/memory_stores/memories.py +358 -0
  243. qca/managed/resources/memory_stores/memory_stores.py +362 -0
  244. qca/managed/resources/memory_stores/memory_versions.py +228 -0
  245. qca/managed/resources/models.py +71 -0
  246. qca/managed/resources/sessions/__init__.py +6 -0
  247. qca/managed/resources/sessions/events.py +240 -0
  248. qca/managed/resources/sessions/resources.py +303 -0
  249. qca/managed/resources/sessions/sessions.py +472 -0
  250. qca/managed/resources/sessions/threads/__init__.py +4 -0
  251. qca/managed/resources/sessions/threads/events.py +141 -0
  252. qca/managed/resources/sessions/threads/threads.py +185 -0
  253. qca/managed/resources/skills/__init__.py +4 -0
  254. qca/managed/resources/skills/skills.py +254 -0
  255. qca/managed/resources/skills/versions.py +273 -0
  256. qca/managed/resources/vaults/__init__.py +4 -0
  257. qca/managed/resources/vaults/credentials.py +437 -0
  258. qca/managed/resources/vaults/vaults.py +296 -0
  259. qca/managed/types/__init__.py +421 -0
  260. qca/managed/types/actor_union.py +15 -0
  261. qca/managed/types/advisor_params.py +12 -0
  262. qca/managed/types/agent.py +33 -0
  263. qca/managed/types/agent_archive_params.py +12 -0
  264. qca/managed/types/agent_create_params.py +31 -0
  265. qca/managed/types/agent_list_params.py +18 -0
  266. qca/managed/types/agent_mcp_tool_result_event_content_union.py +21 -0
  267. qca/managed/types/agent_message_event_content_union.py +12 -0
  268. qca/managed/types/agent_params.py +13 -0
  269. qca/managed/types/agent_reference.py +13 -0
  270. qca/managed/types/agent_retrieve_params.py +13 -0
  271. qca/managed/types/agent_skill_union.py +13 -0
  272. qca/managed/types/agent_thread_message_received_event_content_union.py +20 -0
  273. qca/managed/types/agent_thread_message_received_event_content_union_source.py +15 -0
  274. qca/managed/types/agent_thread_message_sent_event_content_union.py +18 -0
  275. qca/managed/types/agent_thread_message_sent_event_content_union_source.py +15 -0
  276. qca/managed/types/agent_tool_config_union.py +22 -0
  277. qca/managed/types/agent_tool_config_union_permission_policy.py +11 -0
  278. qca/managed/types/agent_tool_result_event_content_union.py +21 -0
  279. qca/managed/types/agent_tool_union.py +25 -0
  280. qca/managed/types/agent_tool_union_default_config.py +15 -0
  281. qca/managed/types/agent_tool_union_default_config_permission_policy.py +11 -0
  282. qca/managed/types/agent_toolset20260401_params.py +37 -0
  283. qca/managed/types/agent_toolset_default_config_params.py +16 -0
  284. qca/managed/types/agent_update_params.py +32 -0
  285. qca/managed/types/agent_version_list_params.py +14 -0
  286. qca/managed/types/agent_with_overrides_params.py +27 -0
  287. qca/managed/types/always_allow_policy_param.py +11 -0
  288. qca/managed/types/always_ask_policy_param.py +11 -0
  289. qca/managed/types/base64_document_source_param.py +13 -0
  290. qca/managed/types/base64_image_source_param.py +13 -0
  291. qca/managed/types/bash_tool_config_params.py +18 -0
  292. qca/managed/types/branch_checkout_param.py +12 -0
  293. qca/managed/types/budget_limit.py +15 -0
  294. qca/managed/types/budget_limit_param.py +15 -0
  295. qca/managed/types/cache_creation_usage.py +12 -0
  296. qca/managed/types/capability_support.py +11 -0
  297. qca/managed/types/cloud_config_networking_union.py +14 -0
  298. qca/managed/types/cloud_config_params.py +19 -0
  299. qca/managed/types/commit_checkout_param.py +12 -0
  300. qca/managed/types/context_management_capability.py +17 -0
  301. qca/managed/types/credential.py +23 -0
  302. qca/managed/types/credential_auth_union.py +23 -0
  303. qca/managed/types/credential_validation.py +23 -0
  304. qca/managed/types/custom_skill_params.py +13 -0
  305. qca/managed/types/custom_tool_input_schema.py +13 -0
  306. qca/managed/types/custom_tool_input_schema_param.py +13 -0
  307. qca/managed/types/custom_tool_params.py +17 -0
  308. qca/managed/types/delete_session_resource.py +12 -0
  309. qca/managed/types/deleted_credential.py +12 -0
  310. qca/managed/types/deleted_file.py +12 -0
  311. qca/managed/types/deleted_memory.py +12 -0
  312. qca/managed/types/deleted_memory_store.py +12 -0
  313. qca/managed/types/deleted_session.py +12 -0
  314. qca/managed/types/deleted_skill.py +12 -0
  315. qca/managed/types/deleted_skill_version.py +12 -0
  316. qca/managed/types/deleted_vault.py +12 -0
  317. qca/managed/types/delta_content.py +16 -0
  318. qca/managed/types/deployment.py +37 -0
  319. qca/managed/types/deployment_archive_params.py +12 -0
  320. qca/managed/types/deployment_create_params.py +36 -0
  321. qca/managed/types/deployment_initial_event_union.py +20 -0
  322. qca/managed/types/deployment_list_params.py +22 -0
  323. qca/managed/types/deployment_pause_params.py +12 -0
  324. qca/managed/types/deployment_paused_reason_error_union.py +11 -0
  325. qca/managed/types/deployment_paused_reason_union.py +15 -0
  326. qca/managed/types/deployment_retrieve_params.py +12 -0
  327. qca/managed/types/deployment_run.py +24 -0
  328. qca/managed/types/deployment_run_error_union.py +12 -0
  329. qca/managed/types/deployment_run_list_params.py +24 -0
  330. qca/managed/types/deployment_run_params.py +12 -0
  331. qca/managed/types/deployment_run_retrieve_params.py +12 -0
  332. qca/managed/types/deployment_unpause_params.py +12 -0
  333. qca/managed/types/deployment_update_params.py +34 -0
  334. qca/managed/types/deployment_user_define_outcome_event_rubric_union.py +13 -0
  335. qca/managed/types/deployment_user_message_event_content_union.py +18 -0
  336. qca/managed/types/deployment_user_message_event_content_union_source.py +15 -0
  337. qca/managed/types/document_block_param.py +22 -0
  338. qca/managed/types/dream.py +33 -0
  339. qca/managed/types/dream_archive_params.py +12 -0
  340. qca/managed/types/dream_cancel_params.py +12 -0
  341. qca/managed/types/dream_create_params.py +23 -0
  342. qca/managed/types/dream_error.py +12 -0
  343. qca/managed/types/dream_input_union.py +13 -0
  344. qca/managed/types/dream_list_params.py +19 -0
  345. qca/managed/types/dream_memory_store_input_param.py +12 -0
  346. qca/managed/types/dream_model_config.py +12 -0
  347. qca/managed/types/dream_model_config_param.py +12 -0
  348. qca/managed/types/dream_output.py +12 -0
  349. qca/managed/types/dream_retrieve_params.py +12 -0
  350. qca/managed/types/dream_sessions_input_param.py +12 -0
  351. qca/managed/types/dream_usage.py +14 -0
  352. qca/managed/types/edit_tool_config_params.py +18 -0
  353. qca/managed/types/effort_capability.py +19 -0
  354. qca/managed/types/effort_high_param.py +11 -0
  355. qca/managed/types/effort_low_param.py +11 -0
  356. qca/managed/types/effort_max_param.py +11 -0
  357. qca/managed/types/effort_medium_param.py +11 -0
  358. qca/managed/types/effort_xhigh_param.py +11 -0
  359. qca/managed/types/environment.py +23 -0
  360. qca/managed/types/environment_archive_params.py +12 -0
  361. qca/managed/types/environment_config_union.py +17 -0
  362. qca/managed/types/environment_create_params.py +21 -0
  363. qca/managed/types/environment_delete_params.py +12 -0
  364. qca/managed/types/environment_delete_response.py +12 -0
  365. qca/managed/types/environment_list_params.py +18 -0
  366. qca/managed/types/environment_retrieve_params.py +12 -0
  367. qca/managed/types/environment_update_params.py +21 -0
  368. qca/managed/types/environment_variable_auth_response_networking_union.py +12 -0
  369. qca/managed/types/environment_variable_create_params.py +20 -0
  370. qca/managed/types/environment_variable_update_params.py +19 -0
  371. qca/managed/types/environment_work_ack_params.py +11 -0
  372. qca/managed/types/environment_work_heartbeat_params.py +13 -0
  373. qca/managed/types/environment_work_list_params.py +15 -0
  374. qca/managed/types/environment_work_poll_params.py +14 -0
  375. qca/managed/types/environment_work_retrieve_params.py +12 -0
  376. qca/managed/types/environment_work_stats_params.py +12 -0
  377. qca/managed/types/environment_work_stop_params.py +13 -0
  378. qca/managed/types/environment_work_update_params.py +13 -0
  379. qca/managed/types/file_delete_params.py +12 -0
  380. qca/managed/types/file_document_source_param.py +12 -0
  381. qca/managed/types/file_download_params.py +12 -0
  382. qca/managed/types/file_get_metadata_params.py +12 -0
  383. qca/managed/types/file_image_source_param.py +12 -0
  384. qca/managed/types/file_list_params.py +19 -0
  385. qca/managed/types/file_metadata.py +25 -0
  386. qca/managed/types/file_resource.py +17 -0
  387. qca/managed/types/file_resource_params.py +13 -0
  388. qca/managed/types/file_rubric_params.py +12 -0
  389. qca/managed/types/file_scope.py +12 -0
  390. qca/managed/types/file_upload_params.py +18 -0
  391. qca/managed/types/git_hub_repository_resource_checkout_union.py +13 -0
  392. qca/managed/types/git_hub_repository_resource_config_checkout_union.py +13 -0
  393. qca/managed/types/git_hub_repository_resource_params.py +19 -0
  394. qca/managed/types/glob_tool_config_params.py +18 -0
  395. qca/managed/types/grep_tool_config_params.py +18 -0
  396. qca/managed/types/image_block_param.py +17 -0
  397. qca/managed/types/injection_location_params.py +12 -0
  398. qca/managed/types/injection_location_response.py +12 -0
  399. qca/managed/types/injection_location_update_params.py +12 -0
  400. qca/managed/types/limited_credential_networking_params.py +12 -0
  401. qca/managed/types/limited_network_params.py +14 -0
  402. qca/managed/types/mcp_probe.py +15 -0
  403. qca/managed/types/mcp_server_url_definition.py +13 -0
  404. qca/managed/types/mcp_tool_config.py +16 -0
  405. qca/managed/types/mcp_tool_config_params.py +17 -0
  406. qca/managed/types/mcp_tool_config_permission_policy_union.py +11 -0
  407. qca/managed/types/mcp_toolset_default_config_params.py +16 -0
  408. qca/managed/types/mcp_toolset_params.py +18 -0
  409. qca/managed/types/mcpo_auth_create_params.py +19 -0
  410. qca/managed/types/mcpo_auth_refresh_params.py +23 -0
  411. qca/managed/types/mcpo_auth_refresh_response.py +18 -0
  412. qca/managed/types/mcpo_auth_refresh_response_token_endpoint_auth_union.py +11 -0
  413. qca/managed/types/mcpo_auth_refresh_update_params.py +17 -0
  414. qca/managed/types/mcpo_auth_update_params.py +18 -0
  415. qca/managed/types/memory.py +22 -0
  416. qca/managed/types/memory_list_item_union.py +21 -0
  417. qca/managed/types/memory_store.py +19 -0
  418. qca/managed/types/memory_store_archive_params.py +12 -0
  419. qca/managed/types/memory_store_create_params.py +15 -0
  420. qca/managed/types/memory_store_delete_params.py +12 -0
  421. qca/managed/types/memory_store_list_params.py +19 -0
  422. qca/managed/types/memory_store_memory_create_params.py +16 -0
  423. qca/managed/types/memory_store_memory_delete_params.py +13 -0
  424. qca/managed/types/memory_store_memory_list_params.py +17 -0
  425. qca/managed/types/memory_store_memory_retrieve_params.py +13 -0
  426. qca/managed/types/memory_store_memory_update_params.py +21 -0
  427. qca/managed/types/memory_store_memory_version_list_params.py +23 -0
  428. qca/managed/types/memory_store_memory_version_redact_params.py +12 -0
  429. qca/managed/types/memory_store_memory_version_retrieve_params.py +13 -0
  430. qca/managed/types/memory_store_resource_param.py +14 -0
  431. qca/managed/types/memory_store_retrieve_params.py +12 -0
  432. qca/managed/types/memory_store_update_params.py +15 -0
  433. qca/managed/types/memory_version.py +27 -0
  434. qca/managed/types/model_capabilities.py +25 -0
  435. qca/managed/types/model_config.py +18 -0
  436. qca/managed/types/model_config_effort_union.py +11 -0
  437. qca/managed/types/model_config_params.py +39 -0
  438. qca/managed/types/model_info.py +30 -0
  439. qca/managed/types/model_list_params.py +15 -0
  440. qca/managed/types/monetary_amount.py +12 -0
  441. qca/managed/types/monetary_amount_param.py +12 -0
  442. qca/managed/types/multiagent.py +15 -0
  443. qca/managed/types/multiagent_agent_union.py +17 -0
  444. qca/managed/types/multiagent_params.py +17 -0
  445. qca/managed/types/multiagent_self_params.py +11 -0
  446. qca/managed/types/outcome_evaluation_resource.py +18 -0
  447. qca/managed/types/output_behavior_create_new_param.py +11 -0
  448. qca/managed/types/output_behavior_union.py +12 -0
  449. qca/managed/types/output_behavior_update_existing_param.py +12 -0
  450. qca/managed/types/packages.py +17 -0
  451. qca/managed/types/packages_params.py +17 -0
  452. qca/managed/types/plain_text_document_source_param.py +13 -0
  453. qca/managed/types/precondition_param.py +12 -0
  454. qca/managed/types/qoder_skill_params.py +13 -0
  455. qca/managed/types/read_tool_config_params.py +18 -0
  456. qca/managed/types/redacted_block_param.py +11 -0
  457. qca/managed/types/refresh_http_response.py +14 -0
  458. qca/managed/types/refresh_object.py +15 -0
  459. qca/managed/types/schedule.py +16 -0
  460. qca/managed/types/schedule_params.py +13 -0
  461. qca/managed/types/search_result_block_param.py +19 -0
  462. qca/managed/types/search_result_citations.py +11 -0
  463. qca/managed/types/search_result_citations_param.py +9 -0
  464. qca/managed/types/search_result_content.py +12 -0
  465. qca/managed/types/search_result_content_param.py +12 -0
  466. qca/managed/types/self_hosted_config_params.py +11 -0
  467. qca/managed/types/self_hosted_work.py +26 -0
  468. qca/managed/types/self_hosted_work_heartbeat_response.py +15 -0
  469. qca/managed/types/self_hosted_work_queue_stats.py +15 -0
  470. qca/managed/types/send_session_events.py +14 -0
  471. qca/managed/types/send_session_events_data_union.py +39 -0
  472. qca/managed/types/server_tool_usage.py +12 -0
  473. qca/managed/types/session.py +37 -0
  474. qca/managed/types/session_agent.py +28 -0
  475. qca/managed/types/session_agent_skill_union.py +13 -0
  476. qca/managed/types/session_agent_tool_union.py +25 -0
  477. qca/managed/types/session_agent_tool_union_default_config.py +17 -0
  478. qca/managed/types/session_agent_tool_union_default_config_permission_policy.py +11 -0
  479. qca/managed/types/session_agent_update_param.py +24 -0
  480. qca/managed/types/session_archive_params.py +12 -0
  481. qca/managed/types/session_create_params.py +31 -0
  482. qca/managed/types/session_delete_params.py +12 -0
  483. qca/managed/types/session_error_event_error_union.py +19 -0
  484. qca/managed/types/session_error_event_error_union_retry_status.py +11 -0
  485. qca/managed/types/session_event.py +77 -0
  486. qca/managed/types/session_event_list_params.py +23 -0
  487. qca/managed/types/session_event_send_params.py +34 -0
  488. qca/managed/types/session_event_stop_reason.py +12 -0
  489. qca/managed/types/session_event_stream_params.py +13 -0
  490. qca/managed/types/session_event_usage.py +24 -0
  491. qca/managed/types/session_list_params.py +26 -0
  492. qca/managed/types/session_multiagent_coordinator.py +15 -0
  493. qca/managed/types/session_multiagent_coordinator_agent_union.py +26 -0
  494. qca/managed/types/session_resource_add_params.py +15 -0
  495. qca/managed/types/session_resource_config_union.py +21 -0
  496. qca/managed/types/session_resource_delete_params.py +12 -0
  497. qca/managed/types/session_resource_get_response_union.py +27 -0
  498. qca/managed/types/session_resource_list_params.py +16 -0
  499. qca/managed/types/session_resource_retrieve_params.py +12 -0
  500. qca/managed/types/session_resource_union.py +27 -0
  501. qca/managed/types/session_resource_update_params.py +14 -0
  502. qca/managed/types/session_resource_update_response_union.py +27 -0
  503. qca/managed/types/session_retrieve_params.py +12 -0
  504. qca/managed/types/session_stats.py +12 -0
  505. qca/managed/types/session_stream_event.py +82 -0
  506. qca/managed/types/session_stream_event_stop_reason.py +12 -0
  507. qca/managed/types/session_stream_event_usage.py +24 -0
  508. qca/managed/types/session_thread.py +27 -0
  509. qca/managed/types/session_thread_agent_skill_union.py +13 -0
  510. qca/managed/types/session_thread_agent_tool_union.py +25 -0
  511. qca/managed/types/session_thread_agent_tool_union_default_config.py +17 -0
  512. qca/managed/types/session_thread_agent_tool_union_default_config_permission_policy.py +11 -0
  513. qca/managed/types/session_thread_agent_union.py +26 -0
  514. qca/managed/types/session_thread_archive_params.py +12 -0
  515. qca/managed/types/session_thread_event_list_params.py +16 -0
  516. qca/managed/types/session_thread_event_stream_params.py +13 -0
  517. qca/managed/types/session_thread_list_params.py +14 -0
  518. qca/managed/types/session_thread_retrieve_params.py +12 -0
  519. qca/managed/types/session_thread_stats.py +13 -0
  520. qca/managed/types/session_thread_usage.py +22 -0
  521. qca/managed/types/session_update_params.py +22 -0
  522. qca/managed/types/session_usage.py +22 -0
  523. qca/managed/types/session_work_data.py +12 -0
  524. qca/managed/types/skill.py +22 -0
  525. qca/managed/types/skill_create_params.py +17 -0
  526. qca/managed/types/skill_delete_params.py +12 -0
  527. qca/managed/types/skill_list_params.py +19 -0
  528. qca/managed/types/skill_retrieve_params.py +12 -0
  529. qca/managed/types/skill_source.py +11 -0
  530. qca/managed/types/skill_version.py +19 -0
  531. qca/managed/types/skill_version_create_params.py +15 -0
  532. qca/managed/types/skill_version_delete_params.py +12 -0
  533. qca/managed/types/skill_version_download_params.py +12 -0
  534. qca/managed/types/skill_version_list_params.py +14 -0
  535. qca/managed/types/skill_version_retrieve_params.py +12 -0
  536. qca/managed/types/span_model_usage.py +15 -0
  537. qca/managed/types/start_event_preview_union.py +12 -0
  538. qca/managed/types/static_bearer_create_params.py +13 -0
  539. qca/managed/types/static_bearer_update_params.py +12 -0
  540. qca/managed/types/stream_session_thread_events_union.py +82 -0
  541. qca/managed/types/stream_session_thread_events_union_stop_reason.py +12 -0
  542. qca/managed/types/stream_session_thread_events_union_usage.py +24 -0
  543. qca/managed/types/system_content_block.py +12 -0
  544. qca/managed/types/system_content_block_param.py +12 -0
  545. qca/managed/types/system_message_event_params.py +15 -0
  546. qca/managed/types/text_block.py +12 -0
  547. qca/managed/types/text_block_param.py +12 -0
  548. qca/managed/types/text_rubric_params.py +12 -0
  549. qca/managed/types/thinking_capability.py +15 -0
  550. qca/managed/types/thinking_types.py +15 -0
  551. qca/managed/types/token_endpoint_auth_basic_param.py +12 -0
  552. qca/managed/types/token_endpoint_auth_basic_update_param.py +12 -0
  553. qca/managed/types/token_endpoint_auth_none_param.py +11 -0
  554. qca/managed/types/token_endpoint_auth_post_param.py +12 -0
  555. qca/managed/types/token_endpoint_auth_post_update_param.py +12 -0
  556. qca/managed/types/trigger_context_union.py +13 -0
  557. qca/managed/types/unrestricted_credential_networking_params.py +11 -0
  558. qca/managed/types/unrestricted_network_param.py +11 -0
  559. qca/managed/types/url_document_source_param.py +12 -0
  560. qca/managed/types/url_image_source_param.py +12 -0
  561. qca/managed/types/urlmcp_server_params.py +13 -0
  562. qca/managed/types/user_custom_tool_result_event_content_union.py +21 -0
  563. qca/managed/types/user_custom_tool_result_event_params.py +20 -0
  564. qca/managed/types/user_define_outcome_event_params.py +18 -0
  565. qca/managed/types/user_define_outcome_event_rubric_union.py +13 -0
  566. qca/managed/types/user_interrupt_event_params.py +12 -0
  567. qca/managed/types/user_location.py +15 -0
  568. qca/managed/types/user_location_param.py +15 -0
  569. qca/managed/types/user_message_event_content_union.py +18 -0
  570. qca/managed/types/user_message_event_content_union_source.py +15 -0
  571. qca/managed/types/user_message_event_params.py +18 -0
  572. qca/managed/types/user_tool_confirmation_event_params.py +14 -0
  573. qca/managed/types/user_tool_result_event_content_union.py +21 -0
  574. qca/managed/types/user_tool_result_event_params.py +20 -0
  575. qca/managed/types/vault.py +18 -0
  576. qca/managed/types/vault_archive_params.py +12 -0
  577. qca/managed/types/vault_create_params.py +14 -0
  578. qca/managed/types/vault_credential_archive_params.py +12 -0
  579. qca/managed/types/vault_credential_create_params.py +20 -0
  580. qca/managed/types/vault_credential_delete_params.py +12 -0
  581. qca/managed/types/vault_credential_list_params.py +18 -0
  582. qca/managed/types/vault_credential_mcpo_auth_validate_params.py +12 -0
  583. qca/managed/types/vault_credential_retrieve_params.py +12 -0
  584. qca/managed/types/vault_credential_update_params.py +19 -0
  585. qca/managed/types/vault_delete_params.py +12 -0
  586. qca/managed/types/vault_list_params.py +18 -0
  587. qca/managed/types/vault_retrieve_params.py +12 -0
  588. qca/managed/types/web_fetch_tool_config_params.py +21 -0
  589. qca/managed/types/web_search_tool_config_params.py +22 -0
  590. qca/managed/types/write_tool_config_params.py +18 -0
  591. qca/py.typed +0 -0
  592. qca-0.0.1.dev1.dist-info/METADATA +279 -0
  593. qca-0.0.1.dev1.dist-info/RECORD +596 -0
  594. qca-0.0.1.dev1.dist-info/WHEEL +5 -0
  595. qca-0.0.1.dev1.dist-info/licenses/LICENSE +21 -0
  596. qca-0.0.1.dev1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,472 @@
1
+ from __future__ import annotations
2
+
3
+ from datetime import datetime
4
+ from functools import cached_property
5
+ from typing import Any, Dict, List, Literal, Union
6
+
7
+ import httpx
8
+
9
+ from qca.common._resource import AsyncAPIResource, SyncAPIResource
10
+ from qca.common._types import NOT_GIVEN, NotGiven
11
+ from qca.common._utils import make_request_options, path_template
12
+ from qca.common.pagination import AsyncPaginator, SyncPage
13
+ from qca.managed.resources.sessions.events import AsyncEvents, Events
14
+ from qca.managed.resources.sessions.resources import AsyncResources, Resources
15
+ from qca.managed.resources.sessions.threads.threads import AsyncThreads, Threads
16
+ from qca.managed.types.agent_params import AgentParams
17
+ from qca.managed.types.agent_with_overrides_params import AgentWithOverridesParams
18
+ from qca.managed.types.budget_limit_param import BudgetLimitParam
19
+ from qca.managed.types.deleted_session import DeletedSession
20
+ from qca.managed.types.file_resource_params import FileResourceParams
21
+ from qca.managed.types.git_hub_repository_resource_params import GitHubRepositoryResourceParams
22
+ from qca.managed.types.memory_store_resource_param import MemoryStoreResourceParam
23
+ from qca.managed.types.session import Session
24
+ from qca.managed.types.session_agent_update_param import SessionAgentUpdateParam
25
+ from qca.managed.types.user_define_outcome_event_params import UserDefineOutcomeEventParams
26
+ from qca.managed.types.user_message_event_params import UserMessageEventParams
27
+
28
+ __all__ = ["Sessions", "AsyncSessions"]
29
+
30
+
31
+ class Sessions(SyncAPIResource):
32
+ @cached_property
33
+ def events(self) -> Events:
34
+ return Events(self._client)
35
+
36
+ @cached_property
37
+ def resources(self) -> Resources:
38
+ return Resources(self._client)
39
+
40
+ @cached_property
41
+ def threads(self) -> Threads:
42
+ return Threads(self._client)
43
+
44
+ def create(
45
+ self,
46
+ *,
47
+ agent: Union[str, AgentParams, AgentWithOverridesParams],
48
+ environment_id: str,
49
+ environment_variables: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
50
+ title: Union[str, None, NotGiven] = NOT_GIVEN,
51
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
52
+ budget: Union[BudgetLimitParam, None, NotGiven] = NOT_GIVEN,
53
+ initial_events: Union[
54
+ List[Union[UserMessageEventParams, UserDefineOutcomeEventParams]], None, NotGiven
55
+ ] = NOT_GIVEN,
56
+ metadata: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
57
+ resources: Union[
58
+ List[Union[GitHubRepositoryResourceParams, FileResourceParams, MemoryStoreResourceParam]], None, NotGiven
59
+ ] = NOT_GIVEN,
60
+ vault_ids: Union[List[str], None, NotGiven] = NOT_GIVEN,
61
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
62
+ extra_headers: Dict[str, str] | None = None,
63
+ extra_query: Dict[str, Any] | None = None,
64
+ extra_body: Dict[str, Any] | None = None,
65
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
66
+ ) -> Session:
67
+ """POST /sessions."""
68
+ _path = path_template("/sessions")
69
+ options = make_request_options(
70
+ body={
71
+ "environment_variables": environment_variables,
72
+ "agent": agent,
73
+ "environment_id": environment_id,
74
+ "title": title,
75
+ "budget": budget,
76
+ "initial_events": initial_events,
77
+ "metadata": metadata,
78
+ "resources": resources,
79
+ "vault_ids": vault_ids,
80
+ },
81
+ query={},
82
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
83
+ extra_headers=extra_headers,
84
+ extra_query=extra_query,
85
+ extra_body=extra_body,
86
+ timeout=timeout,
87
+ )
88
+ return self._client.request("POST", _path, cast_to=Session, options=options)
89
+
90
+ def retrieve(
91
+ self,
92
+ session_id: str,
93
+ *,
94
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
95
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
96
+ extra_headers: Dict[str, str] | None = None,
97
+ extra_query: Dict[str, Any] | None = None,
98
+ extra_body: Dict[str, Any] | None = None,
99
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
100
+ ) -> Session:
101
+ """GET /sessions/{session_id}."""
102
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
103
+ options = make_request_options(
104
+ body={},
105
+ query={},
106
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
107
+ extra_headers=extra_headers,
108
+ extra_query=extra_query,
109
+ extra_body=extra_body,
110
+ timeout=timeout,
111
+ )
112
+ return self._client.request("GET", _path, cast_to=Session, options=options)
113
+
114
+ def update(
115
+ self,
116
+ session_id: str,
117
+ *,
118
+ environment_variables: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
119
+ title: Union[str, None, NotGiven] = NOT_GIVEN,
120
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
121
+ metadata: Union[Dict[str, Any], None, NotGiven] = NOT_GIVEN,
122
+ agent: Union[SessionAgentUpdateParam, None, NotGiven] = NOT_GIVEN,
123
+ budget: Union[BudgetLimitParam, None, NotGiven] = NOT_GIVEN,
124
+ vault_ids: Union[List[str], None, NotGiven] = NOT_GIVEN,
125
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
126
+ extra_headers: Dict[str, str] | None = None,
127
+ extra_query: Dict[str, Any] | None = None,
128
+ extra_body: Dict[str, Any] | None = None,
129
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
130
+ ) -> Session:
131
+ """POST /sessions/{session_id}."""
132
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
133
+ options = make_request_options(
134
+ body={
135
+ "environment_variables": environment_variables,
136
+ "title": title,
137
+ "metadata": metadata,
138
+ "agent": agent,
139
+ "budget": budget,
140
+ "vault_ids": vault_ids,
141
+ },
142
+ query={},
143
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
144
+ extra_headers=extra_headers,
145
+ extra_query=extra_query,
146
+ extra_body=extra_body,
147
+ timeout=timeout,
148
+ )
149
+ return self._client.request("POST", _path, cast_to=Session, options=options)
150
+
151
+ def list(
152
+ self,
153
+ *,
154
+ agent_id: Union[str, None, NotGiven] = NOT_GIVEN,
155
+ agent_version: Union[int, None, NotGiven] = NOT_GIVEN,
156
+ created_at_gt: Union[datetime, None, NotGiven] = NOT_GIVEN,
157
+ created_at_gte: Union[datetime, None, NotGiven] = NOT_GIVEN,
158
+ created_at_lt: Union[datetime, None, NotGiven] = NOT_GIVEN,
159
+ created_at_lte: Union[datetime, None, NotGiven] = NOT_GIVEN,
160
+ deployment_id: Union[str, None, NotGiven] = NOT_GIVEN,
161
+ include_archived: Union[bool, None, NotGiven] = NOT_GIVEN,
162
+ limit: Union[int, None, NotGiven] = NOT_GIVEN,
163
+ memory_store_id: Union[str, None, NotGiven] = NOT_GIVEN,
164
+ page: Union[str, None, NotGiven] = NOT_GIVEN,
165
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
166
+ order: Union[Literal["asc", "desc"], None, NotGiven] = NOT_GIVEN,
167
+ statuses: Union[List[str], None, NotGiven] = NOT_GIVEN,
168
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
169
+ extra_headers: Dict[str, str] | None = None,
170
+ extra_query: Dict[str, Any] | None = None,
171
+ extra_body: Dict[str, Any] | None = None,
172
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
173
+ ) -> SyncPage[Session]:
174
+ """GET /sessions."""
175
+ _path = path_template("/sessions")
176
+ options = make_request_options(
177
+ body={},
178
+ query={
179
+ "agent_id": agent_id,
180
+ "agent_version": agent_version,
181
+ "created_at[gt]": created_at_gt,
182
+ "created_at[gte]": created_at_gte,
183
+ "created_at[lt]": created_at_lt,
184
+ "created_at[lte]": created_at_lte,
185
+ "deployment_id": deployment_id,
186
+ "include_archived": include_archived,
187
+ "limit": limit,
188
+ "memory_store_id": memory_store_id,
189
+ "page": page,
190
+ "order": order,
191
+ "statuses[]": statuses,
192
+ },
193
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
194
+ extra_headers=extra_headers,
195
+ extra_query=extra_query,
196
+ extra_body=extra_body,
197
+ timeout=timeout,
198
+ )
199
+ return self._client.request(
200
+ "GET", _path, cast_to=Session, options=options, page_style="BidirectionalPageCursor"
201
+ )
202
+
203
+ def delete(
204
+ self,
205
+ session_id: str,
206
+ *,
207
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
208
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
209
+ extra_headers: Dict[str, str] | None = None,
210
+ extra_query: Dict[str, Any] | None = None,
211
+ extra_body: Dict[str, Any] | None = None,
212
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
213
+ ) -> DeletedSession:
214
+ """DELETE /sessions/{session_id}."""
215
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
216
+ options = make_request_options(
217
+ body={},
218
+ query={},
219
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
220
+ extra_headers=extra_headers,
221
+ extra_query=extra_query,
222
+ extra_body=extra_body,
223
+ timeout=timeout,
224
+ )
225
+ return self._client.request("DELETE", _path, cast_to=DeletedSession, options=options)
226
+
227
+ def archive(
228
+ self,
229
+ session_id: str,
230
+ *,
231
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
232
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
233
+ extra_headers: Dict[str, str] | None = None,
234
+ extra_query: Dict[str, Any] | None = None,
235
+ extra_body: Dict[str, Any] | None = None,
236
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
237
+ ) -> Session:
238
+ """POST /sessions/{session_id}/archive."""
239
+ _path = path_template("/sessions/{session_id}/archive", session_id=session_id)
240
+ options = make_request_options(
241
+ body={},
242
+ query={},
243
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
244
+ extra_headers=extra_headers,
245
+ extra_query=extra_query,
246
+ extra_body=extra_body,
247
+ timeout=timeout,
248
+ )
249
+ return self._client.request("POST", _path, cast_to=Session, options=options)
250
+
251
+
252
+ class AsyncSessions(AsyncAPIResource):
253
+ @cached_property
254
+ def events(self) -> AsyncEvents:
255
+ return AsyncEvents(self._client)
256
+
257
+ @cached_property
258
+ def resources(self) -> AsyncResources:
259
+ return AsyncResources(self._client)
260
+
261
+ @cached_property
262
+ def threads(self) -> AsyncThreads:
263
+ return AsyncThreads(self._client)
264
+
265
+ async def create(
266
+ self,
267
+ *,
268
+ agent: Union[str, AgentParams, AgentWithOverridesParams],
269
+ environment_id: str,
270
+ environment_variables: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
271
+ title: Union[str, None, NotGiven] = NOT_GIVEN,
272
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
273
+ budget: Union[BudgetLimitParam, None, NotGiven] = NOT_GIVEN,
274
+ initial_events: Union[
275
+ List[Union[UserMessageEventParams, UserDefineOutcomeEventParams]], None, NotGiven
276
+ ] = NOT_GIVEN,
277
+ metadata: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
278
+ resources: Union[
279
+ List[Union[GitHubRepositoryResourceParams, FileResourceParams, MemoryStoreResourceParam]], None, NotGiven
280
+ ] = NOT_GIVEN,
281
+ vault_ids: Union[List[str], None, NotGiven] = NOT_GIVEN,
282
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
283
+ extra_headers: Dict[str, str] | None = None,
284
+ extra_query: Dict[str, Any] | None = None,
285
+ extra_body: Dict[str, Any] | None = None,
286
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
287
+ ) -> Session:
288
+ """POST /sessions."""
289
+ _path = path_template("/sessions")
290
+ options = make_request_options(
291
+ body={
292
+ "environment_variables": environment_variables,
293
+ "agent": agent,
294
+ "environment_id": environment_id,
295
+ "title": title,
296
+ "budget": budget,
297
+ "initial_events": initial_events,
298
+ "metadata": metadata,
299
+ "resources": resources,
300
+ "vault_ids": vault_ids,
301
+ },
302
+ query={},
303
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
304
+ extra_headers=extra_headers,
305
+ extra_query=extra_query,
306
+ extra_body=extra_body,
307
+ timeout=timeout,
308
+ )
309
+ return await self._client.request("POST", _path, cast_to=Session, options=options)
310
+
311
+ async def retrieve(
312
+ self,
313
+ session_id: str,
314
+ *,
315
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
316
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
317
+ extra_headers: Dict[str, str] | None = None,
318
+ extra_query: Dict[str, Any] | None = None,
319
+ extra_body: Dict[str, Any] | None = None,
320
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
321
+ ) -> Session:
322
+ """GET /sessions/{session_id}."""
323
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
324
+ options = make_request_options(
325
+ body={},
326
+ query={},
327
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
328
+ extra_headers=extra_headers,
329
+ extra_query=extra_query,
330
+ extra_body=extra_body,
331
+ timeout=timeout,
332
+ )
333
+ return await self._client.request("GET", _path, cast_to=Session, options=options)
334
+
335
+ async def update(
336
+ self,
337
+ session_id: str,
338
+ *,
339
+ environment_variables: Union[Dict[str, str], None, NotGiven] = NOT_GIVEN,
340
+ title: Union[str, None, NotGiven] = NOT_GIVEN,
341
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
342
+ metadata: Union[Dict[str, Any], None, NotGiven] = NOT_GIVEN,
343
+ agent: Union[SessionAgentUpdateParam, None, NotGiven] = NOT_GIVEN,
344
+ budget: Union[BudgetLimitParam, None, NotGiven] = NOT_GIVEN,
345
+ vault_ids: Union[List[str], None, NotGiven] = NOT_GIVEN,
346
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
347
+ extra_headers: Dict[str, str] | None = None,
348
+ extra_query: Dict[str, Any] | None = None,
349
+ extra_body: Dict[str, Any] | None = None,
350
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
351
+ ) -> Session:
352
+ """POST /sessions/{session_id}."""
353
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
354
+ options = make_request_options(
355
+ body={
356
+ "environment_variables": environment_variables,
357
+ "title": title,
358
+ "metadata": metadata,
359
+ "agent": agent,
360
+ "budget": budget,
361
+ "vault_ids": vault_ids,
362
+ },
363
+ query={},
364
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
365
+ extra_headers=extra_headers,
366
+ extra_query=extra_query,
367
+ extra_body=extra_body,
368
+ timeout=timeout,
369
+ )
370
+ return await self._client.request("POST", _path, cast_to=Session, options=options)
371
+
372
+ def list(
373
+ self,
374
+ *,
375
+ agent_id: Union[str, None, NotGiven] = NOT_GIVEN,
376
+ agent_version: Union[int, None, NotGiven] = NOT_GIVEN,
377
+ created_at_gt: Union[datetime, None, NotGiven] = NOT_GIVEN,
378
+ created_at_gte: Union[datetime, None, NotGiven] = NOT_GIVEN,
379
+ created_at_lt: Union[datetime, None, NotGiven] = NOT_GIVEN,
380
+ created_at_lte: Union[datetime, None, NotGiven] = NOT_GIVEN,
381
+ deployment_id: Union[str, None, NotGiven] = NOT_GIVEN,
382
+ include_archived: Union[bool, None, NotGiven] = NOT_GIVEN,
383
+ limit: Union[int, None, NotGiven] = NOT_GIVEN,
384
+ memory_store_id: Union[str, None, NotGiven] = NOT_GIVEN,
385
+ page: Union[str, None, NotGiven] = NOT_GIVEN,
386
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
387
+ order: Union[Literal["asc", "desc"], None, NotGiven] = NOT_GIVEN,
388
+ statuses: Union[List[str], None, NotGiven] = NOT_GIVEN,
389
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
390
+ extra_headers: Dict[str, str] | None = None,
391
+ extra_query: Dict[str, Any] | None = None,
392
+ extra_body: Dict[str, Any] | None = None,
393
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
394
+ ) -> AsyncPaginator[Session]:
395
+ """GET /sessions."""
396
+ _path = path_template("/sessions")
397
+ options = make_request_options(
398
+ body={},
399
+ query={
400
+ "agent_id": agent_id,
401
+ "agent_version": agent_version,
402
+ "created_at[gt]": created_at_gt,
403
+ "created_at[gte]": created_at_gte,
404
+ "created_at[lt]": created_at_lt,
405
+ "created_at[lte]": created_at_lte,
406
+ "deployment_id": deployment_id,
407
+ "include_archived": include_archived,
408
+ "limit": limit,
409
+ "memory_store_id": memory_store_id,
410
+ "page": page,
411
+ "order": order,
412
+ "statuses[]": statuses,
413
+ },
414
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
415
+ extra_headers=extra_headers,
416
+ extra_query=extra_query,
417
+ extra_body=extra_body,
418
+ timeout=timeout,
419
+ )
420
+ return AsyncPaginator(
421
+ lambda: self._client.request(
422
+ "GET", _path, cast_to=Session, options=options, page_style="BidirectionalPageCursor"
423
+ )
424
+ )
425
+
426
+ async def delete(
427
+ self,
428
+ session_id: str,
429
+ *,
430
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
431
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
432
+ extra_headers: Dict[str, str] | None = None,
433
+ extra_query: Dict[str, Any] | None = None,
434
+ extra_body: Dict[str, Any] | None = None,
435
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
436
+ ) -> DeletedSession:
437
+ """DELETE /sessions/{session_id}."""
438
+ _path = path_template("/sessions/{session_id}", session_id=session_id)
439
+ options = make_request_options(
440
+ body={},
441
+ query={},
442
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
443
+ extra_headers=extra_headers,
444
+ extra_query=extra_query,
445
+ extra_body=extra_body,
446
+ timeout=timeout,
447
+ )
448
+ return await self._client.request("DELETE", _path, cast_to=DeletedSession, options=options)
449
+
450
+ async def archive(
451
+ self,
452
+ session_id: str,
453
+ *,
454
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
455
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
456
+ extra_headers: Dict[str, str] | None = None,
457
+ extra_query: Dict[str, Any] | None = None,
458
+ extra_body: Dict[str, Any] | None = None,
459
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
460
+ ) -> Session:
461
+ """POST /sessions/{session_id}/archive."""
462
+ _path = path_template("/sessions/{session_id}/archive", session_id=session_id)
463
+ options = make_request_options(
464
+ body={},
465
+ query={},
466
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
467
+ extra_headers=extra_headers,
468
+ extra_query=extra_query,
469
+ extra_body=extra_body,
470
+ timeout=timeout,
471
+ )
472
+ return await self._client.request("POST", _path, cast_to=Session, options=options)
@@ -0,0 +1,4 @@
1
+ from .events import AsyncEvents as AsyncEvents
2
+ from .events import Events as Events
3
+ from .threads import AsyncThreads as AsyncThreads
4
+ from .threads import Threads as Threads
@@ -0,0 +1,141 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Any, Dict, List, Literal, Union
4
+
5
+ import httpx
6
+
7
+ from qca.common._resource import AsyncAPIResource, SyncAPIResource
8
+ from qca.common._streaming import AsyncStream, Stream
9
+ from qca.common._types import NOT_GIVEN, NotGiven
10
+ from qca.common._utils import make_request_options, path_template
11
+ from qca.common.pagination import AsyncPaginator, SyncPage
12
+ from qca.managed.types.session_event import SessionEvent
13
+ from qca.managed.types.stream_session_thread_events_union import StreamSessionThreadEventsUnion
14
+
15
+ __all__ = ["Events", "AsyncEvents"]
16
+
17
+
18
+ class Events(SyncAPIResource):
19
+ def list(
20
+ self,
21
+ thread_id: str,
22
+ *,
23
+ session_id: str,
24
+ before_id: Union[str, None, NotGiven] = NOT_GIVEN,
25
+ after_id: Union[str, None, NotGiven] = NOT_GIVEN,
26
+ limit: Union[int, None, NotGiven] = NOT_GIVEN,
27
+ page: Union[str, None, NotGiven] = NOT_GIVEN,
28
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
29
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
30
+ extra_headers: Dict[str, str] | None = None,
31
+ extra_query: Dict[str, Any] | None = None,
32
+ extra_body: Dict[str, Any] | None = None,
33
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
34
+ ) -> SyncPage[SessionEvent]:
35
+ """GET /sessions/{session_id}/threads/{thread_id}/events."""
36
+ _path = path_template(
37
+ "/sessions/{session_id}/threads/{thread_id}/events", thread_id=thread_id, session_id=session_id
38
+ )
39
+ options = make_request_options(
40
+ body={},
41
+ query={"before_id": before_id, "after_id": after_id, "limit": limit, "page": page},
42
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
43
+ extra_headers=extra_headers,
44
+ extra_query=extra_query,
45
+ extra_body=extra_body,
46
+ timeout=timeout,
47
+ )
48
+ return self._client.request("GET", _path, cast_to=SessionEvent, options=options, page_style="PageCursor")
49
+
50
+ def stream(
51
+ self,
52
+ thread_id: str,
53
+ *,
54
+ session_id: str,
55
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
56
+ event_deltas: Union[List[Literal["agent.message", "agent.thinking"]], None, NotGiven] = NOT_GIVEN,
57
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
58
+ extra_headers: Dict[str, str] | None = None,
59
+ extra_query: Dict[str, Any] | None = None,
60
+ extra_body: Dict[str, Any] | None = None,
61
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
62
+ ) -> Stream[StreamSessionThreadEventsUnion]:
63
+ """GET /sessions/{session_id}/threads/{thread_id}/stream."""
64
+ _path = path_template(
65
+ "/sessions/{session_id}/threads/{thread_id}/stream", thread_id=thread_id, session_id=session_id
66
+ )
67
+ options = make_request_options(
68
+ body={},
69
+ query={"event_deltas[]": event_deltas},
70
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
71
+ extra_headers=extra_headers,
72
+ extra_query=extra_query,
73
+ extra_body=extra_body,
74
+ timeout=timeout,
75
+ )
76
+ return self._client.request("GET", _path, cast_to=StreamSessionThreadEventsUnion, options=options, stream=True)
77
+
78
+
79
+ class AsyncEvents(AsyncAPIResource):
80
+ def list(
81
+ self,
82
+ thread_id: str,
83
+ *,
84
+ session_id: str,
85
+ before_id: Union[str, None, NotGiven] = NOT_GIVEN,
86
+ after_id: Union[str, None, NotGiven] = NOT_GIVEN,
87
+ limit: Union[int, None, NotGiven] = NOT_GIVEN,
88
+ page: Union[str, None, NotGiven] = NOT_GIVEN,
89
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
90
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
91
+ extra_headers: Dict[str, str] | None = None,
92
+ extra_query: Dict[str, Any] | None = None,
93
+ extra_body: Dict[str, Any] | None = None,
94
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
95
+ ) -> AsyncPaginator[SessionEvent]:
96
+ """GET /sessions/{session_id}/threads/{thread_id}/events."""
97
+ _path = path_template(
98
+ "/sessions/{session_id}/threads/{thread_id}/events", thread_id=thread_id, session_id=session_id
99
+ )
100
+ options = make_request_options(
101
+ body={},
102
+ query={"before_id": before_id, "after_id": after_id, "limit": limit, "page": page},
103
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
104
+ extra_headers=extra_headers,
105
+ extra_query=extra_query,
106
+ extra_body=extra_body,
107
+ timeout=timeout,
108
+ )
109
+ return AsyncPaginator(
110
+ lambda: self._client.request("GET", _path, cast_to=SessionEvent, options=options, page_style="PageCursor")
111
+ )
112
+
113
+ async def stream(
114
+ self,
115
+ thread_id: str,
116
+ *,
117
+ session_id: str,
118
+ workspace_id: Union[str, None, NotGiven] = NOT_GIVEN,
119
+ event_deltas: Union[List[Literal["agent.message", "agent.thinking"]], None, NotGiven] = NOT_GIVEN,
120
+ betas: Union[List[str], None, NotGiven] = NOT_GIVEN,
121
+ extra_headers: Dict[str, str] | None = None,
122
+ extra_query: Dict[str, Any] | None = None,
123
+ extra_body: Dict[str, Any] | None = None,
124
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
125
+ ) -> AsyncStream[StreamSessionThreadEventsUnion]:
126
+ """GET /sessions/{session_id}/threads/{thread_id}/stream."""
127
+ _path = path_template(
128
+ "/sessions/{session_id}/threads/{thread_id}/stream", thread_id=thread_id, session_id=session_id
129
+ )
130
+ options = make_request_options(
131
+ body={},
132
+ query={"event_deltas[]": event_deltas},
133
+ headers={"qoder-workspace-id": workspace_id, "x-qoder-beta": betas},
134
+ extra_headers=extra_headers,
135
+ extra_query=extra_query,
136
+ extra_body=extra_body,
137
+ timeout=timeout,
138
+ )
139
+ return await self._client.request(
140
+ "GET", _path, cast_to=StreamSessionThreadEventsUnion, options=options, stream=True
141
+ )