parallel-web 0.5.0__tar.gz → 0.5.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. parallel_web-0.5.1/.release-please-manifest.json +3 -0
  2. {parallel_web-0.5.0 → parallel_web-0.5.1}/CHANGELOG.md +10 -0
  3. {parallel_web-0.5.0 → parallel_web-0.5.1}/PKG-INFO +1 -1
  4. {parallel_web-0.5.0 → parallel_web-0.5.1}/pyproject.toml +1 -1
  5. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_client.py +16 -8
  6. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_version.py +1 -1
  7. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/beta.py +65 -16
  8. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/beta_extract_params.py +6 -0
  9. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/beta_search_params.py +6 -0
  10. parallel_web-0.5.1/tests/api_resources/test_beta.py +261 -0
  11. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/test_client.py +4 -4
  12. parallel_web-0.5.0/.release-please-manifest.json +0 -3
  13. parallel_web-0.5.0/tests/api_resources/test_beta.py +0 -231
  14. {parallel_web-0.5.0 → parallel_web-0.5.1}/.gitignore +0 -0
  15. {parallel_web-0.5.0 → parallel_web-0.5.1}/CONTRIBUTING.md +0 -0
  16. {parallel_web-0.5.0 → parallel_web-0.5.1}/LICENSE +0 -0
  17. {parallel_web-0.5.0 → parallel_web-0.5.1}/README.md +0 -0
  18. {parallel_web-0.5.0 → parallel_web-0.5.1}/SECURITY.md +0 -0
  19. {parallel_web-0.5.0 → parallel_web-0.5.1}/api.md +0 -0
  20. {parallel_web-0.5.0 → parallel_web-0.5.1}/bin/check-release-environment +0 -0
  21. {parallel_web-0.5.0 → parallel_web-0.5.1}/bin/publish-pypi +0 -0
  22. {parallel_web-0.5.0 → parallel_web-0.5.1}/examples/.keep +0 -0
  23. {parallel_web-0.5.0 → parallel_web-0.5.1}/noxfile.py +0 -0
  24. {parallel_web-0.5.0 → parallel_web-0.5.1}/release-please-config.json +0 -0
  25. {parallel_web-0.5.0 → parallel_web-0.5.1}/requirements-dev.lock +0 -0
  26. {parallel_web-0.5.0 → parallel_web-0.5.1}/requirements.lock +0 -0
  27. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/__init__.py +0 -0
  28. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_base_client.py +0 -0
  29. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_compat.py +0 -0
  30. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_constants.py +0 -0
  31. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_exceptions.py +0 -0
  32. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_files.py +0 -0
  33. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_models.py +0 -0
  34. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_qs.py +0 -0
  35. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_resource.py +0 -0
  36. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_response.py +0 -0
  37. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_streaming.py +0 -0
  38. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_types.py +0 -0
  39. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/__init__.py +0 -0
  40. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_compat.py +0 -0
  41. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_datetime_parse.py +0 -0
  42. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_json.py +0 -0
  43. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_logs.py +0 -0
  44. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_path.py +0 -0
  45. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_proxy.py +0 -0
  46. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_reflection.py +0 -0
  47. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_resources_proxy.py +0 -0
  48. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_streams.py +0 -0
  49. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_sync.py +0 -0
  50. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_transform.py +0 -0
  51. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_typing.py +0 -0
  52. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/_utils/_utils.py +0 -0
  53. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/.keep +0 -0
  54. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/__init__.py +0 -0
  55. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/_parsing/__init__.py +0 -0
  56. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/_parsing/_task_run_result.py +0 -0
  57. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/_parsing/_task_spec.py +0 -0
  58. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/_pydantic.py +0 -0
  59. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/lib/_time.py +0 -0
  60. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/py.typed +0 -0
  61. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/__init__.py +0 -0
  62. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/__init__.py +0 -0
  63. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/api.md +0 -0
  64. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/findall.py +0 -0
  65. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/task_group.py +0 -0
  66. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/beta/task_run.py +0 -0
  67. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/resources/task_run.py +0 -0
  68. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/__init__.py +0 -0
  69. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/advanced_extract_settings_param.py +0 -0
  70. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/advanced_search_settings_param.py +0 -0
  71. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/auto_schema.py +0 -0
  72. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/auto_schema_param.py +0 -0
  73. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/__init__.py +0 -0
  74. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/beta_run_input.py +0 -0
  75. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/beta_run_input_param.py +0 -0
  76. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/beta_task_run_result.py +0 -0
  77. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/error_event.py +0 -0
  78. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/excerpt_settings_param.py +0 -0
  79. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/extract_error.py +0 -0
  80. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/extract_response.py +0 -0
  81. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/extract_result.py +0 -0
  82. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/fetch_policy_param.py +0 -0
  83. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_candidate_match_status_event.py +0 -0
  84. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_candidates_params.py +0 -0
  85. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_candidates_response.py +0 -0
  86. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_create_params.py +0 -0
  87. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_enrich_input.py +0 -0
  88. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_enrich_params.py +0 -0
  89. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_events_params.py +0 -0
  90. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_events_response.py +0 -0
  91. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_extend_params.py +0 -0
  92. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_ingest_params.py +0 -0
  93. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_run.py +0 -0
  94. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_run_result.py +0 -0
  95. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_run_status_event.py +0 -0
  96. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_schema.py +0 -0
  97. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/findall_schema_updated_event.py +0 -0
  98. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/mcp_server.py +0 -0
  99. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/mcp_server_param.py +0 -0
  100. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/mcp_tool_call.py +0 -0
  101. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/parallel_beta_param.py +0 -0
  102. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/search_result.py +0 -0
  103. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group.py +0 -0
  104. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_add_runs_params.py +0 -0
  105. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_create_params.py +0 -0
  106. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_events_params.py +0 -0
  107. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_events_response.py +0 -0
  108. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_get_runs_params.py +0 -0
  109. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_get_runs_response.py +0 -0
  110. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_run_response.py +0 -0
  111. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_group_status.py +0 -0
  112. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_run_create_params.py +0 -0
  113. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_run_event.py +0 -0
  114. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_run_events_response.py +0 -0
  115. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/task_run_result_params.py +0 -0
  116. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/usage_item.py +0 -0
  117. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/web_search_result.py +0 -0
  118. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/webhook.py +0 -0
  119. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/beta/webhook_param.py +0 -0
  120. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/citation.py +0 -0
  121. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/client_extract_params.py +0 -0
  122. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/client_search_params.py +0 -0
  123. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/error_event.py +0 -0
  124. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/excerpt_settings_param.py +0 -0
  125. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/extract_error.py +0 -0
  126. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/extract_response.py +0 -0
  127. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/extract_result.py +0 -0
  128. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/fetch_policy_param.py +0 -0
  129. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/field_basis.py +0 -0
  130. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/json_schema.py +0 -0
  131. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/json_schema_param.py +0 -0
  132. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/mcp_server.py +0 -0
  133. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/mcp_server_param.py +0 -0
  134. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/mcp_tool_call.py +0 -0
  135. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/parsed_task_run_result.py +0 -0
  136. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/run_input.py +0 -0
  137. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/run_input_param.py +0 -0
  138. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/search_result.py +0 -0
  139. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared/__init__.py +0 -0
  140. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared/error_object.py +0 -0
  141. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared/error_response.py +0 -0
  142. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared/source_policy.py +0 -0
  143. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared/warning.py +0 -0
  144. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared_params/__init__.py +0 -0
  145. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/shared_params/source_policy.py +0 -0
  146. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run.py +0 -0
  147. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_create_params.py +0 -0
  148. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_event.py +0 -0
  149. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_events_response.py +0 -0
  150. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_json_output.py +0 -0
  151. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_result.py +0 -0
  152. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_result_params.py +0 -0
  153. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_run_text_output.py +0 -0
  154. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_spec.py +0 -0
  155. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/task_spec_param.py +0 -0
  156. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/text_schema.py +0 -0
  157. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/text_schema_param.py +0 -0
  158. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/usage_item.py +0 -0
  159. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/web_search_result.py +0 -0
  160. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/webhook.py +0 -0
  161. {parallel_web-0.5.0 → parallel_web-0.5.1}/src/parallel/types/webhook_param.py +0 -0
  162. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/__init__.py +0 -0
  163. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/__init__.py +0 -0
  164. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/beta/__init__.py +0 -0
  165. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/beta/test_findall.py +0 -0
  166. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/beta/test_task_group.py +0 -0
  167. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/beta/test_task_run.py +0 -0
  168. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/api_resources/test_task_run.py +0 -0
  169. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/conftest.py +0 -0
  170. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/sample_file.txt +0 -0
  171. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_client.py +0 -0
  172. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_extract_files.py +0 -0
  173. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_files.py +0 -0
  174. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_models.py +0 -0
  175. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_qs.py +0 -0
  176. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_required_args.py +0 -0
  177. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_response.py +0 -0
  178. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_streaming.py +0 -0
  179. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_transform.py +0 -0
  180. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_utils/test_datetime_parse.py +0 -0
  181. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_utils/test_json.py +0 -0
  182. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_utils/test_path.py +0 -0
  183. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_utils/test_proxy.py +0 -0
  184. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/test_utils/test_typing.py +0 -0
  185. {parallel_web-0.5.0 → parallel_web-0.5.1}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.5.1"
3
+ }
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.5.1 (2026-04-22)
4
+
5
+ Full Changelog: [v0.5.0...v0.5.1](https://github.com/parallel-web/parallel-sdk-python/compare/v0.5.0...v0.5.1)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([86c7d33](https://github.com/parallel-web/parallel-sdk-python/commit/86c7d334df7c2018d0277fe3efa93fb7029f6a41))
10
+ * **api:** Mark search and extract as deprecated ([cfdea3b](https://github.com/parallel-web/parallel-sdk-python/commit/cfdea3b19622911e65c9359f0acdbd4b201d2d08))
11
+ * **api:** OpenAPI changes ([cfc5fb3](https://github.com/parallel-web/parallel-sdk-python/commit/cfc5fb373a46c73c2f79057b593712d7b847ee33))
12
+
3
13
  ## 0.5.0 (2026-04-21)
4
14
 
5
15
  Full Changelog: [v0.4.2...v0.5.0](https://github.com/parallel-web/parallel-sdk-python/compare/v0.4.2...v0.5.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: parallel-web
3
- Version: 0.5.0
3
+ Version: 0.5.1
4
4
  Summary: The official Python library for the Parallel API
5
5
  Project-URL: Homepage, https://github.com/parallel-web/parallel-sdk-python
6
6
  Project-URL: Repository, https://github.com/parallel-web/parallel-sdk-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "parallel-web"
3
- version = "0.5.0"
3
+ version = "0.5.1"
4
4
  description = "The official Python library for the Parallel API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -247,8 +247,10 @@ class Parallel(SyncAPIClient):
247
247
  """
248
248
  Extracts relevant content from specific web URLs.
249
249
 
250
- The legacy Extract API reference is available
251
- [here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract).
250
+ The legacy Extract API reference (`/v1beta/extract` endpoint) is available
251
+ [here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract), and
252
+ migration guide is
253
+ [here](https://docs.parallel.ai/extract/extract-migration-guide).
252
254
 
253
255
  Args:
254
256
  urls: URLs to extract content from. Up to 20 URLs.
@@ -322,8 +324,10 @@ class Parallel(SyncAPIClient):
322
324
  """
323
325
  Searches the web.
324
326
 
325
- The legacy Search API reference is available
326
- [here](https://docs.parallel.ai/api-reference/legacy/search-beta/search).
327
+ The legacy Search API reference (`/v1beta/search` endpoint) is available
328
+ [here](https://docs.parallel.ai/api-reference/legacy/search-beta/search), and
329
+ migration guide is
330
+ [here](https://docs.parallel.ai/search/search-migration-guide).
327
331
 
328
332
  Args:
329
333
  search_queries: Concise keyword search queries, 3-6 words each. At least one query is required,
@@ -594,8 +598,10 @@ class AsyncParallel(AsyncAPIClient):
594
598
  """
595
599
  Extracts relevant content from specific web URLs.
596
600
 
597
- The legacy Extract API reference is available
598
- [here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract).
601
+ The legacy Extract API reference (`/v1beta/extract` endpoint) is available
602
+ [here](https://docs.parallel.ai/api-reference/legacy/extract-beta/extract), and
603
+ migration guide is
604
+ [here](https://docs.parallel.ai/extract/extract-migration-guide).
599
605
 
600
606
  Args:
601
607
  urls: URLs to extract content from. Up to 20 URLs.
@@ -669,8 +675,10 @@ class AsyncParallel(AsyncAPIClient):
669
675
  """
670
676
  Searches the web.
671
677
 
672
- The legacy Search API reference is available
673
- [here](https://docs.parallel.ai/api-reference/legacy/search-beta/search).
678
+ The legacy Search API reference (`/v1beta/search` endpoint) is available
679
+ [here](https://docs.parallel.ai/api-reference/legacy/search-beta/search), and
680
+ migration guide is
681
+ [here](https://docs.parallel.ai/search/search-migration-guide).
674
682
 
675
683
  Args:
676
684
  search_queries: Concise keyword search queries, 3-6 words each. At least one query is required,
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "parallel"
4
- __version__ = "0.5.0" # x-release-please-version
4
+ __version__ = "0.5.1" # x-release-please-version
@@ -2,6 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ import typing_extensions
5
6
  from typing import List, Optional
6
7
  from itertools import chain
7
8
  from typing_extensions import Literal
@@ -113,10 +114,14 @@ class BetaResource(SyncAPIResource):
113
114
  """
114
115
  return BetaResourceWithStreamingResponse(self)
115
116
 
117
+ @typing_extensions.deprecated(
118
+ "Use client.extract instead. For more info, see https://docs.parallel.ai/extract/extract-migration-guide"
119
+ )
116
120
  def extract(
117
121
  self,
118
122
  *,
119
123
  urls: SequenceNotStr[str],
124
+ client_model: Optional[str] | Omit = omit,
120
125
  excerpts: beta_extract_params.Excerpts | Omit = omit,
121
126
  fetch_policy: Optional[FetchPolicyParam] | Omit = omit,
122
127
  full_content: beta_extract_params.FullContent | Omit = omit,
@@ -138,6 +143,9 @@ class BetaResource(SyncAPIResource):
138
143
  `search-extract-2025-10-10`.
139
144
 
140
145
  Args:
146
+ client_model: The model generating this request and consuming the results. Enables
147
+ optimizations and tailors default settings for the model's capabilities.
148
+
141
149
  excerpts: Include excerpts from each URL relevant to the search objective and queries.
142
150
  Note that if neither objective nor search_queries is provided, excerpts are
143
151
  redundant with full content.
@@ -181,6 +189,7 @@ class BetaResource(SyncAPIResource):
181
189
  body=maybe_transform(
182
190
  {
183
191
  "urls": urls,
192
+ "client_model": client_model,
184
193
  "excerpts": excerpts,
185
194
  "fetch_policy": fetch_policy,
186
195
  "full_content": full_content,
@@ -196,9 +205,13 @@ class BetaResource(SyncAPIResource):
196
205
  cast_to=ExtractResponse,
197
206
  )
198
207
 
208
+ @typing_extensions.deprecated(
209
+ "Use client.search instead. For more info, see https://docs.parallel.ai/search/search-migration-guide"
210
+ )
199
211
  def search(
200
212
  self,
201
213
  *,
214
+ client_model: Optional[str] | Omit = omit,
202
215
  excerpts: ExcerptSettingsParam | Omit = omit,
203
216
  fetch_policy: Optional[FetchPolicyParam] | Omit = omit,
204
217
  location: Optional[str] | Omit = omit,
@@ -222,6 +235,9 @@ class BetaResource(SyncAPIResource):
222
235
  Searches the web.
223
236
 
224
237
  Args:
238
+ client_model: The model generating this request and consuming the results. Enables
239
+ optimizations and tailors default settings for the model's capabilities.
240
+
225
241
  excerpts: Optional settings to configure excerpt generation.
226
242
 
227
243
  fetch_policy: Policy for live fetching web results.
@@ -284,6 +300,7 @@ class BetaResource(SyncAPIResource):
284
300
  "/v1beta/search",
285
301
  body=maybe_transform(
286
302
  {
303
+ "client_model": client_model,
287
304
  "excerpts": excerpts,
288
305
  "fetch_policy": fetch_policy,
289
306
  "location": location,
@@ -364,10 +381,14 @@ class AsyncBetaResource(AsyncAPIResource):
364
381
  """
365
382
  return AsyncBetaResourceWithStreamingResponse(self)
366
383
 
384
+ @typing_extensions.deprecated(
385
+ "Use client.extract instead. For more info, see https://docs.parallel.ai/extract/extract-migration-guide"
386
+ )
367
387
  async def extract(
368
388
  self,
369
389
  *,
370
390
  urls: SequenceNotStr[str],
391
+ client_model: Optional[str] | Omit = omit,
371
392
  excerpts: beta_extract_params.Excerpts | Omit = omit,
372
393
  fetch_policy: Optional[FetchPolicyParam] | Omit = omit,
373
394
  full_content: beta_extract_params.FullContent | Omit = omit,
@@ -389,6 +410,9 @@ class AsyncBetaResource(AsyncAPIResource):
389
410
  `search-extract-2025-10-10`.
390
411
 
391
412
  Args:
413
+ client_model: The model generating this request and consuming the results. Enables
414
+ optimizations and tailors default settings for the model's capabilities.
415
+
392
416
  excerpts: Include excerpts from each URL relevant to the search objective and queries.
393
417
  Note that if neither objective nor search_queries is provided, excerpts are
394
418
  redundant with full content.
@@ -432,6 +456,7 @@ class AsyncBetaResource(AsyncAPIResource):
432
456
  body=await async_maybe_transform(
433
457
  {
434
458
  "urls": urls,
459
+ "client_model": client_model,
435
460
  "excerpts": excerpts,
436
461
  "fetch_policy": fetch_policy,
437
462
  "full_content": full_content,
@@ -447,9 +472,13 @@ class AsyncBetaResource(AsyncAPIResource):
447
472
  cast_to=ExtractResponse,
448
473
  )
449
474
 
475
+ @typing_extensions.deprecated(
476
+ "Use client.search instead. For more info, see https://docs.parallel.ai/search/search-migration-guide"
477
+ )
450
478
  async def search(
451
479
  self,
452
480
  *,
481
+ client_model: Optional[str] | Omit = omit,
453
482
  excerpts: ExcerptSettingsParam | Omit = omit,
454
483
  fetch_policy: Optional[FetchPolicyParam] | Omit = omit,
455
484
  location: Optional[str] | Omit = omit,
@@ -473,6 +502,9 @@ class AsyncBetaResource(AsyncAPIResource):
473
502
  Searches the web.
474
503
 
475
504
  Args:
505
+ client_model: The model generating this request and consuming the results. Enables
506
+ optimizations and tailors default settings for the model's capabilities.
507
+
476
508
  excerpts: Optional settings to configure excerpt generation.
477
509
 
478
510
  fetch_policy: Policy for live fetching web results.
@@ -535,6 +567,7 @@ class AsyncBetaResource(AsyncAPIResource):
535
567
  "/v1beta/search",
536
568
  body=await async_maybe_transform(
537
569
  {
570
+ "client_model": client_model,
538
571
  "excerpts": excerpts,
539
572
  "fetch_policy": fetch_policy,
540
573
  "location": location,
@@ -560,11 +593,15 @@ class BetaResourceWithRawResponse:
560
593
  def __init__(self, beta: BetaResource) -> None:
561
594
  self._beta = beta
562
595
 
563
- self.extract = to_raw_response_wrapper(
564
- beta.extract,
596
+ self.extract = ( # pyright: ignore[reportDeprecated]
597
+ to_raw_response_wrapper(
598
+ beta.extract, # pyright: ignore[reportDeprecated],
599
+ )
565
600
  )
566
- self.search = to_raw_response_wrapper(
567
- beta.search,
601
+ self.search = ( # pyright: ignore[reportDeprecated]
602
+ to_raw_response_wrapper(
603
+ beta.search, # pyright: ignore[reportDeprecated],
604
+ )
568
605
  )
569
606
 
570
607
  @cached_property
@@ -611,11 +648,15 @@ class AsyncBetaResourceWithRawResponse:
611
648
  def __init__(self, beta: AsyncBetaResource) -> None:
612
649
  self._beta = beta
613
650
 
614
- self.extract = async_to_raw_response_wrapper(
615
- beta.extract,
651
+ self.extract = ( # pyright: ignore[reportDeprecated]
652
+ async_to_raw_response_wrapper(
653
+ beta.extract, # pyright: ignore[reportDeprecated],
654
+ )
616
655
  )
617
- self.search = async_to_raw_response_wrapper(
618
- beta.search,
656
+ self.search = ( # pyright: ignore[reportDeprecated]
657
+ async_to_raw_response_wrapper(
658
+ beta.search, # pyright: ignore[reportDeprecated],
659
+ )
619
660
  )
620
661
 
621
662
  @cached_property
@@ -662,11 +703,15 @@ class BetaResourceWithStreamingResponse:
662
703
  def __init__(self, beta: BetaResource) -> None:
663
704
  self._beta = beta
664
705
 
665
- self.extract = to_streamed_response_wrapper(
666
- beta.extract,
706
+ self.extract = ( # pyright: ignore[reportDeprecated]
707
+ to_streamed_response_wrapper(
708
+ beta.extract, # pyright: ignore[reportDeprecated],
709
+ )
667
710
  )
668
- self.search = to_streamed_response_wrapper(
669
- beta.search,
711
+ self.search = ( # pyright: ignore[reportDeprecated]
712
+ to_streamed_response_wrapper(
713
+ beta.search, # pyright: ignore[reportDeprecated],
714
+ )
670
715
  )
671
716
 
672
717
  @cached_property
@@ -713,11 +758,15 @@ class AsyncBetaResourceWithStreamingResponse:
713
758
  def __init__(self, beta: AsyncBetaResource) -> None:
714
759
  self._beta = beta
715
760
 
716
- self.extract = async_to_streamed_response_wrapper(
717
- beta.extract,
761
+ self.extract = ( # pyright: ignore[reportDeprecated]
762
+ async_to_streamed_response_wrapper(
763
+ beta.extract, # pyright: ignore[reportDeprecated],
764
+ )
718
765
  )
719
- self.search = async_to_streamed_response_wrapper(
720
- beta.search,
766
+ self.search = ( # pyright: ignore[reportDeprecated]
767
+ async_to_streamed_response_wrapper(
768
+ beta.search, # pyright: ignore[reportDeprecated],
769
+ )
721
770
  )
722
771
 
723
772
  @cached_property
@@ -17,6 +17,12 @@ __all__ = ["BetaExtractParams", "Excerpts", "FullContent", "FullContentFullConte
17
17
  class BetaExtractParams(TypedDict, total=False):
18
18
  urls: Required[SequenceNotStr[str]]
19
19
 
20
+ client_model: Optional[str]
21
+ """The model generating this request and consuming the results.
22
+
23
+ Enables optimizations and tailors default settings for the model's capabilities.
24
+ """
25
+
20
26
  excerpts: Excerpts
21
27
  """Include excerpts from each URL relevant to the search objective and queries.
22
28
 
@@ -16,6 +16,12 @@ __all__ = ["BetaSearchParams"]
16
16
 
17
17
 
18
18
  class BetaSearchParams(TypedDict, total=False):
19
+ client_model: Optional[str]
20
+ """The model generating this request and consuming the results.
21
+
22
+ Enables optimizations and tailors default settings for the model's capabilities.
23
+ """
24
+
19
25
  excerpts: ExcerptSettingsParam
20
26
  """Optional settings to configure excerpt generation."""
21
27
 
@@ -0,0 +1,261 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import os
6
+ from typing import Any, cast
7
+
8
+ import pytest
9
+
10
+ from parallel import Parallel, AsyncParallel
11
+ from tests.utils import assert_matches_type
12
+ from parallel._utils import parse_date
13
+ from parallel.types.beta import SearchResult, ExtractResponse
14
+
15
+ # pyright: reportDeprecated=false
16
+
17
+ base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
18
+
19
+
20
+ class TestBeta:
21
+ parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
22
+
23
+ @parametrize
24
+ def test_method_extract(self, client: Parallel) -> None:
25
+ with pytest.warns(DeprecationWarning):
26
+ beta = client.beta.extract(
27
+ urls=["string"],
28
+ )
29
+
30
+ assert_matches_type(ExtractResponse, beta, path=["response"])
31
+
32
+ @parametrize
33
+ def test_method_extract_with_all_params(self, client: Parallel) -> None:
34
+ with pytest.warns(DeprecationWarning):
35
+ beta = client.beta.extract(
36
+ urls=["string"],
37
+ client_model="claude-opus-4-7",
38
+ excerpts=True,
39
+ fetch_policy={
40
+ "disable_cache_fallback": True,
41
+ "max_age_seconds": 86400,
42
+ "timeout_seconds": 60,
43
+ },
44
+ full_content=True,
45
+ objective="objective",
46
+ search_queries=["string"],
47
+ session_id="session_id",
48
+ betas=["mcp-server-2025-07-17"],
49
+ )
50
+
51
+ assert_matches_type(ExtractResponse, beta, path=["response"])
52
+
53
+ @parametrize
54
+ def test_raw_response_extract(self, client: Parallel) -> None:
55
+ with pytest.warns(DeprecationWarning):
56
+ response = client.beta.with_raw_response.extract(
57
+ urls=["string"],
58
+ )
59
+
60
+ assert response.is_closed is True
61
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
62
+ beta = response.parse()
63
+ assert_matches_type(ExtractResponse, beta, path=["response"])
64
+
65
+ @parametrize
66
+ def test_streaming_response_extract(self, client: Parallel) -> None:
67
+ with pytest.warns(DeprecationWarning):
68
+ with client.beta.with_streaming_response.extract(
69
+ urls=["string"],
70
+ ) as response:
71
+ assert not response.is_closed
72
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
73
+
74
+ beta = response.parse()
75
+ assert_matches_type(ExtractResponse, beta, path=["response"])
76
+
77
+ assert cast(Any, response.is_closed) is True
78
+
79
+ @parametrize
80
+ def test_method_search(self, client: Parallel) -> None:
81
+ with pytest.warns(DeprecationWarning):
82
+ beta = client.beta.search()
83
+
84
+ assert_matches_type(SearchResult, beta, path=["response"])
85
+
86
+ @parametrize
87
+ def test_method_search_with_all_params(self, client: Parallel) -> None:
88
+ with pytest.warns(DeprecationWarning):
89
+ beta = client.beta.search(
90
+ client_model="claude-opus-4-7",
91
+ excerpts={
92
+ "max_chars_per_result": 0,
93
+ "max_chars_total": 0,
94
+ },
95
+ fetch_policy={
96
+ "disable_cache_fallback": True,
97
+ "max_age_seconds": 86400,
98
+ "timeout_seconds": 60,
99
+ },
100
+ location="us",
101
+ max_chars_per_result=0,
102
+ max_results=0,
103
+ mode="one-shot",
104
+ objective="objective",
105
+ processor="base",
106
+ search_queries=["string"],
107
+ session_id="session_id",
108
+ source_policy={
109
+ "after_date": parse_date("2024-01-01"),
110
+ "exclude_domains": ["reddit.com", "x.com", ".ai"],
111
+ "include_domains": ["wikipedia.org", "usa.gov", ".edu"],
112
+ },
113
+ betas=["mcp-server-2025-07-17"],
114
+ )
115
+
116
+ assert_matches_type(SearchResult, beta, path=["response"])
117
+
118
+ @parametrize
119
+ def test_raw_response_search(self, client: Parallel) -> None:
120
+ with pytest.warns(DeprecationWarning):
121
+ response = client.beta.with_raw_response.search()
122
+
123
+ assert response.is_closed is True
124
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
125
+ beta = response.parse()
126
+ assert_matches_type(SearchResult, beta, path=["response"])
127
+
128
+ @parametrize
129
+ def test_streaming_response_search(self, client: Parallel) -> None:
130
+ with pytest.warns(DeprecationWarning):
131
+ with client.beta.with_streaming_response.search() as response:
132
+ assert not response.is_closed
133
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
134
+
135
+ beta = response.parse()
136
+ assert_matches_type(SearchResult, beta, path=["response"])
137
+
138
+ assert cast(Any, response.is_closed) is True
139
+
140
+
141
+ class TestAsyncBeta:
142
+ parametrize = pytest.mark.parametrize(
143
+ "async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
144
+ )
145
+
146
+ @parametrize
147
+ async def test_method_extract(self, async_client: AsyncParallel) -> None:
148
+ with pytest.warns(DeprecationWarning):
149
+ beta = await async_client.beta.extract(
150
+ urls=["string"],
151
+ )
152
+
153
+ assert_matches_type(ExtractResponse, beta, path=["response"])
154
+
155
+ @parametrize
156
+ async def test_method_extract_with_all_params(self, async_client: AsyncParallel) -> None:
157
+ with pytest.warns(DeprecationWarning):
158
+ beta = await async_client.beta.extract(
159
+ urls=["string"],
160
+ client_model="claude-opus-4-7",
161
+ excerpts=True,
162
+ fetch_policy={
163
+ "disable_cache_fallback": True,
164
+ "max_age_seconds": 86400,
165
+ "timeout_seconds": 60,
166
+ },
167
+ full_content=True,
168
+ objective="objective",
169
+ search_queries=["string"],
170
+ session_id="session_id",
171
+ betas=["mcp-server-2025-07-17"],
172
+ )
173
+
174
+ assert_matches_type(ExtractResponse, beta, path=["response"])
175
+
176
+ @parametrize
177
+ async def test_raw_response_extract(self, async_client: AsyncParallel) -> None:
178
+ with pytest.warns(DeprecationWarning):
179
+ response = await async_client.beta.with_raw_response.extract(
180
+ urls=["string"],
181
+ )
182
+
183
+ assert response.is_closed is True
184
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
185
+ beta = await response.parse()
186
+ assert_matches_type(ExtractResponse, beta, path=["response"])
187
+
188
+ @parametrize
189
+ async def test_streaming_response_extract(self, async_client: AsyncParallel) -> None:
190
+ with pytest.warns(DeprecationWarning):
191
+ async with async_client.beta.with_streaming_response.extract(
192
+ urls=["string"],
193
+ ) as response:
194
+ assert not response.is_closed
195
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
196
+
197
+ beta = await response.parse()
198
+ assert_matches_type(ExtractResponse, beta, path=["response"])
199
+
200
+ assert cast(Any, response.is_closed) is True
201
+
202
+ @parametrize
203
+ async def test_method_search(self, async_client: AsyncParallel) -> None:
204
+ with pytest.warns(DeprecationWarning):
205
+ beta = await async_client.beta.search()
206
+
207
+ assert_matches_type(SearchResult, beta, path=["response"])
208
+
209
+ @parametrize
210
+ async def test_method_search_with_all_params(self, async_client: AsyncParallel) -> None:
211
+ with pytest.warns(DeprecationWarning):
212
+ beta = await async_client.beta.search(
213
+ client_model="claude-opus-4-7",
214
+ excerpts={
215
+ "max_chars_per_result": 0,
216
+ "max_chars_total": 0,
217
+ },
218
+ fetch_policy={
219
+ "disable_cache_fallback": True,
220
+ "max_age_seconds": 86400,
221
+ "timeout_seconds": 60,
222
+ },
223
+ location="us",
224
+ max_chars_per_result=0,
225
+ max_results=0,
226
+ mode="one-shot",
227
+ objective="objective",
228
+ processor="base",
229
+ search_queries=["string"],
230
+ session_id="session_id",
231
+ source_policy={
232
+ "after_date": parse_date("2024-01-01"),
233
+ "exclude_domains": ["reddit.com", "x.com", ".ai"],
234
+ "include_domains": ["wikipedia.org", "usa.gov", ".edu"],
235
+ },
236
+ betas=["mcp-server-2025-07-17"],
237
+ )
238
+
239
+ assert_matches_type(SearchResult, beta, path=["response"])
240
+
241
+ @parametrize
242
+ async def test_raw_response_search(self, async_client: AsyncParallel) -> None:
243
+ with pytest.warns(DeprecationWarning):
244
+ response = await async_client.beta.with_raw_response.search()
245
+
246
+ assert response.is_closed is True
247
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
248
+ beta = await response.parse()
249
+ assert_matches_type(SearchResult, beta, path=["response"])
250
+
251
+ @parametrize
252
+ async def test_streaming_response_search(self, async_client: AsyncParallel) -> None:
253
+ with pytest.warns(DeprecationWarning):
254
+ async with async_client.beta.with_streaming_response.search() as response:
255
+ assert not response.is_closed
256
+ assert response.http_request.headers.get("X-Stainless-Lang") == "python"
257
+
258
+ beta = await response.parse()
259
+ assert_matches_type(SearchResult, beta, path=["response"])
260
+
261
+ assert cast(Any, response.is_closed) is True
@@ -41,7 +41,7 @@ class TestClient:
41
41
  },
42
42
  "full_content": {"max_chars_per_result": 0},
43
43
  },
44
- client_model="claude-sonnet-4-6-20260401",
44
+ client_model="claude-opus-4-7",
45
45
  max_chars_total=0,
46
46
  objective="objective",
47
47
  search_queries=["string"],
@@ -99,7 +99,7 @@ class TestClient:
99
99
  "include_domains": ["wikipedia.org", "usa.gov", ".edu"],
100
100
  },
101
101
  },
102
- client_model="claude-sonnet-4-6-20260401",
102
+ client_model="claude-opus-4-7",
103
103
  max_chars_total=0,
104
104
  mode="basic",
105
105
  objective="objective",
@@ -157,7 +157,7 @@ class TestAsyncClient:
157
157
  },
158
158
  "full_content": {"max_chars_per_result": 0},
159
159
  },
160
- client_model="claude-sonnet-4-6-20260401",
160
+ client_model="claude-opus-4-7",
161
161
  max_chars_total=0,
162
162
  objective="objective",
163
163
  search_queries=["string"],
@@ -215,7 +215,7 @@ class TestAsyncClient:
215
215
  "include_domains": ["wikipedia.org", "usa.gov", ".edu"],
216
216
  },
217
217
  },
218
- client_model="claude-sonnet-4-6-20260401",
218
+ client_model="claude-opus-4-7",
219
219
  max_chars_total=0,
220
220
  mode="basic",
221
221
  objective="objective",
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.5.0"
3
- }