nimble_python 0.19.0__tar.gz → 0.21.0__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 (216) hide show
  1. nimble_python-0.21.0/.release-please-manifest.json +3 -0
  2. {nimble_python-0.19.0 → nimble_python-0.21.0}/CHANGELOG.md +17 -0
  3. {nimble_python-0.19.0 → nimble_python-0.21.0}/PKG-INFO +1 -1
  4. {nimble_python-0.19.0 → nimble_python-0.21.0}/api.md +69 -0
  5. {nimble_python-0.19.0 → nimble_python-0.21.0}/pyproject.toml +1 -1
  6. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_client.py +79 -5
  7. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_version.py +1 -1
  8. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/__init__.py +28 -0
  9. nimble_python-0.21.0/src/nimble_python/resources/fast_serp.py +293 -0
  10. nimble_python-0.21.0/src/nimble_python/resources/jobs/__init__.py +33 -0
  11. nimble_python-0.21.0/src/nimble_python/resources/jobs/jobs.py +691 -0
  12. nimble_python-0.21.0/src/nimble_python/resources/jobs/runs/__init__.py +33 -0
  13. nimble_python-0.21.0/src/nimble_python/resources/jobs/runs/artifacts.py +427 -0
  14. nimble_python-0.21.0/src/nimble_python/resources/jobs/runs/runs.py +389 -0
  15. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/task_agent/task_agent.py +6 -2
  16. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/__init__.py +10 -0
  17. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/client_extract_async_params.py +1 -1
  18. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/client_extract_batch_params.py +10 -4
  19. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/client_extract_params.py +1 -1
  20. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_run_params.py +1 -1
  21. nimble_python-0.21.0/src/nimble_python/types/fast_serp_run_params.py +64 -0
  22. nimble_python-0.21.0/src/nimble_python/types/fast_serp_run_response.py +339 -0
  23. nimble_python-0.21.0/src/nimble_python/types/job_create_params.py +46 -0
  24. nimble_python-0.21.0/src/nimble_python/types/job_create_response.py +59 -0
  25. nimble_python-0.21.0/src/nimble_python/types/job_get_response.py +59 -0
  26. nimble_python-0.21.0/src/nimble_python/types/job_list_params.py +20 -0
  27. nimble_python-0.21.0/src/nimble_python/types/job_list_response.py +69 -0
  28. nimble_python-0.21.0/src/nimble_python/types/job_run_response.py +29 -0
  29. nimble_python-0.21.0/src/nimble_python/types/job_update_params.py +42 -0
  30. nimble_python-0.21.0/src/nimble_python/types/job_update_response.py +59 -0
  31. nimble_python-0.21.0/src/nimble_python/types/jobs/__init__.py +8 -0
  32. nimble_python-0.21.0/src/nimble_python/types/jobs/run_cancel_response.py +13 -0
  33. nimble_python-0.21.0/src/nimble_python/types/jobs/run_get_response.py +65 -0
  34. nimble_python-0.21.0/src/nimble_python/types/jobs/run_list_params.py +17 -0
  35. nimble_python-0.21.0/src/nimble_python/types/jobs/run_list_response.py +39 -0
  36. nimble_python-0.21.0/src/nimble_python/types/jobs/runs/__init__.py +8 -0
  37. nimble_python-0.21.0/src/nimble_python/types/jobs/runs/artifact_download_url_response.py +13 -0
  38. nimble_python-0.21.0/src/nimble_python/types/jobs/runs/artifact_get_response.py +17 -0
  39. nimble_python-0.21.0/src/nimble_python/types/jobs/runs/artifact_list_response.py +22 -0
  40. nimble_python-0.21.0/src/nimble_python/types/jobs/runs/artifact_preview_response.py +15 -0
  41. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_create_params.py +21 -3
  42. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_create_response.py +21 -3
  43. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_get_response.py +21 -3
  44. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_list_response.py +23 -3
  45. nimble_python-0.21.0/src/nimble_python/types/task_agent_run_params.py +46 -0
  46. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_update_response.py +21 -3
  47. nimble_python-0.21.0/tests/api_resources/jobs/runs/__init__.py +1 -0
  48. nimble_python-0.21.0/tests/api_resources/jobs/runs/test_artifacts.py +425 -0
  49. nimble_python-0.21.0/tests/api_resources/jobs/test_runs.py +298 -0
  50. nimble_python-0.21.0/tests/api_resources/task_agent/__init__.py +1 -0
  51. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_client.py +4 -4
  52. nimble_python-0.21.0/tests/api_resources/test_fast_serp.py +130 -0
  53. nimble_python-0.21.0/tests/api_resources/test_jobs.py +616 -0
  54. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_task_agent.py +72 -14
  55. nimble_python-0.19.0/.release-please-manifest.json +0 -3
  56. nimble_python-0.19.0/src/nimble_python/types/task_agent_run_params.py +0 -16
  57. {nimble_python-0.19.0 → nimble_python-0.21.0}/.gitignore +0 -0
  58. {nimble_python-0.19.0 → nimble_python-0.21.0}/CONTRIBUTING.md +0 -0
  59. {nimble_python-0.19.0 → nimble_python-0.21.0}/LICENSE +0 -0
  60. {nimble_python-0.19.0 → nimble_python-0.21.0}/README.md +0 -0
  61. {nimble_python-0.19.0 → nimble_python-0.21.0}/SECURITY.md +0 -0
  62. {nimble_python-0.19.0 → nimble_python-0.21.0}/bin/check-release-environment +0 -0
  63. {nimble_python-0.19.0 → nimble_python-0.21.0}/bin/publish-pypi +0 -0
  64. {nimble_python-0.19.0 → nimble_python-0.21.0}/examples/.keep +0 -0
  65. {nimble_python-0.19.0 → nimble_python-0.21.0}/release-please-config.json +0 -0
  66. {nimble_python-0.19.0 → nimble_python-0.21.0}/requirements-dev.lock +0 -0
  67. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/__init__.py +0 -0
  68. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_base_client.py +0 -0
  69. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_compat.py +0 -0
  70. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_constants.py +0 -0
  71. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_exceptions.py +0 -0
  72. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_files.py +0 -0
  73. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_models.py +0 -0
  74. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_qs.py +0 -0
  75. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_resource.py +0 -0
  76. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_response.py +0 -0
  77. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_streaming.py +0 -0
  78. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_types.py +0 -0
  79. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/__init__.py +0 -0
  80. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_compat.py +0 -0
  81. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_datetime_parse.py +0 -0
  82. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_json.py +0 -0
  83. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_logs.py +0 -0
  84. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_path.py +0 -0
  85. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_proxy.py +0 -0
  86. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_reflection.py +0 -0
  87. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_resources_proxy.py +0 -0
  88. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_streams.py +0 -0
  89. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_sync.py +0 -0
  90. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_transform.py +0 -0
  91. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_typing.py +0 -0
  92. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/_utils/_utils.py +0 -0
  93. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/lib/.keep +0 -0
  94. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/py.typed +0 -0
  95. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/agent.py +0 -0
  96. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/batches.py +0 -0
  97. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/crawl.py +0 -0
  98. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/domain_knowledge.py +0 -0
  99. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/media.py +0 -0
  100. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/serp.py +0 -0
  101. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/task_agent/__init__.py +0 -0
  102. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/task_agent/runs.py +0 -0
  103. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/task_agent/templates.py +0 -0
  104. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/resources/tasks.py +0 -0
  105. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_generate_params.py +0 -0
  106. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_generate_response.py +0 -0
  107. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_get_generation_response.py +0 -0
  108. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_get_response.py +0 -0
  109. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_list_params.py +0 -0
  110. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_list_response.py +0 -0
  111. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_async_params.py +0 -0
  112. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_async_response.py +0 -0
  113. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_batch_params.py +0 -0
  114. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_batch_response.py +0 -0
  115. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_params.py +0 -0
  116. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/agent_run_response.py +0 -0
  117. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/batch_get_response.py +0 -0
  118. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/batch_progress_response.py +0 -0
  119. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/client_map_params.py +0 -0
  120. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/client_search_params.py +0 -0
  121. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_list_params.py +0 -0
  122. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_list_response.py +0 -0
  123. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_run_response.py +0 -0
  124. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_status_response.py +0 -0
  125. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/crawl_terminate_response.py +0 -0
  126. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/domain_knowledge_get_driver_params.py +0 -0
  127. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/domain_knowledge_get_driver_response.py +0 -0
  128. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/extract_async_response.py +0 -0
  129. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/extract_batch_response.py +0 -0
  130. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/extract_response.py +0 -0
  131. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/map_response.py +0 -0
  132. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/media_run_async_params.py +0 -0
  133. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/media_run_async_response.py +0 -0
  134. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/media_run_params.py +0 -0
  135. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/media_run_response.py +0 -0
  136. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/search_response.py +0 -0
  137. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_async_params.py +0 -0
  138. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_async_response.py +0 -0
  139. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_batch_params.py +0 -0
  140. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_batch_response.py +0 -0
  141. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_params.py +0 -0
  142. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/serp_run_response.py +0 -0
  143. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/__init__.py +0 -0
  144. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/auto_scroll_action.py +0 -0
  145. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/click_action.py +0 -0
  146. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/eval_action.py +0 -0
  147. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/fetch_action.py +0 -0
  148. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/fill_action.py +0 -0
  149. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/get_cookies_action.py +0 -0
  150. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/goto_action.py +0 -0
  151. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/press_action.py +0 -0
  152. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/screenshot_action.py +0 -0
  153. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/scroll_action.py +0 -0
  154. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/wait_action.py +0 -0
  155. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/wait_for_element_action.py +0 -0
  156. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared/wait_for_navigation_action.py +0 -0
  157. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/__init__.py +0 -0
  158. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/auto_scroll_action.py +0 -0
  159. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/click_action.py +0 -0
  160. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/eval_action.py +0 -0
  161. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/fetch_action.py +0 -0
  162. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/fill_action.py +0 -0
  163. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/get_cookies_action.py +0 -0
  164. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/goto_action.py +0 -0
  165. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/press_action.py +0 -0
  166. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/screenshot_action.py +0 -0
  167. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/scroll_action.py +0 -0
  168. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/wait_action.py +0 -0
  169. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/wait_for_element_action.py +0 -0
  170. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/shared_params/wait_for_navigation_action.py +0 -0
  171. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/__init__.py +0 -0
  172. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/run_get_response.py +0 -0
  173. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/run_get_result_response.py +0 -0
  174. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/run_list_params.py +0 -0
  175. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/run_list_response.py +0 -0
  176. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/template_get_response.py +0 -0
  177. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/template_list_params.py +0 -0
  178. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent/template_list_response.py +0 -0
  179. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_list_params.py +0 -0
  180. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_run_response.py +0 -0
  181. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_agent_update_params.py +0 -0
  182. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_get_response.py +0 -0
  183. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_list_params.py +0 -0
  184. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_list_response.py +0 -0
  185. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimble_python/types/task_results_response.py +0 -0
  186. {nimble_python-0.19.0 → nimble_python-0.21.0}/src/nimbleway/lib/.keep +0 -0
  187. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/__init__.py +0 -0
  188. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/__init__.py +0 -0
  189. {nimble_python-0.19.0/tests/api_resources/task_agent → nimble_python-0.21.0/tests/api_resources/jobs}/__init__.py +0 -0
  190. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/task_agent/test_runs.py +0 -0
  191. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/task_agent/test_templates.py +0 -0
  192. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_agent.py +0 -0
  193. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_batches.py +0 -0
  194. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_crawl.py +0 -0
  195. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_domain_knowledge.py +0 -0
  196. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_media.py +0 -0
  197. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_serp.py +0 -0
  198. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/api_resources/test_tasks.py +0 -0
  199. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/conftest.py +0 -0
  200. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/sample_file.txt +0 -0
  201. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_client.py +0 -0
  202. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_extract_files.py +0 -0
  203. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_files.py +0 -0
  204. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_models.py +0 -0
  205. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_qs.py +0 -0
  206. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_required_args.py +0 -0
  207. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_response.py +0 -0
  208. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_streaming.py +0 -0
  209. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_transform.py +0 -0
  210. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_utils/test_datetime_parse.py +0 -0
  211. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_utils/test_json.py +0 -0
  212. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_utils/test_path.py +0 -0
  213. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_utils/test_proxy.py +0 -0
  214. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/test_utils/test_typing.py +0 -0
  215. {nimble_python-0.19.0 → nimble_python-0.21.0}/tests/utils.py +0 -0
  216. {nimble_python-0.19.0 → nimble_python-0.21.0}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.21.0"
3
+ }
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.21.0 (2026-06-22)
4
+
5
+ Full Changelog: [v0.20.0...v0.21.0](https://github.com/Nimbleway/nimble-python/compare/v0.20.0...v0.21.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([9bade2f](https://github.com/Nimbleway/nimble-python/commit/9bade2fd7b7618e15200f4143c16cddf5b6b992c))
10
+
11
+ ## 0.20.0 (2026-06-18)
12
+
13
+ Full Changelog: [v0.19.0...v0.20.0](https://github.com/Nimbleway/nimble-python/compare/v0.19.0...v0.20.0)
14
+
15
+ ### Features
16
+
17
+ * **api:** Add jobs api ([9065317](https://github.com/Nimbleway/nimble-python/commit/90653176f426f3566d6b596ab46573dfa5d6bf23))
18
+ * **api:** api update ([0dd31cd](https://github.com/Nimbleway/nimble-python/commit/0dd31cd413a4f9803d95d087a17db47c7fd2cac1))
19
+
3
20
  ## 0.19.0 (2026-06-11)
4
21
 
5
22
  Full Changelog: [v0.18.0...v0.19.0](https://github.com/Nimbleway/nimble-python/compare/v0.18.0...v0.19.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: nimble_python
3
- Version: 0.19.0
3
+ Version: 0.21.0
4
4
  Summary: The official Python library for the nimble API
5
5
  Project-URL: Homepage, https://github.com/Nimbleway/nimble-python
6
6
  Project-URL: Repository, https://github.com/Nimbleway/nimble-python
@@ -153,6 +153,18 @@ Methods:
153
153
  - <code title="post /v1/serp/async">client.serp.<a href="./src/nimble_python/resources/serp.py">run_async</a>(\*\*<a href="src/nimble_python/types/serp_run_async_params.py">params</a>) -> <a href="./src/nimble_python/types/serp_run_async_response.py">SerpRunAsyncResponse</a></code>
154
154
  - <code title="post /v1/serp/batch">client.serp.<a href="./src/nimble_python/resources/serp.py">run_batch</a>(\*\*<a href="src/nimble_python/types/serp_run_batch_params.py">params</a>) -> <a href="./src/nimble_python/types/serp_run_batch_response.py">SerpRunBatchResponse</a></code>
155
155
 
156
+ # FastSerp
157
+
158
+ Types:
159
+
160
+ ```python
161
+ from nimble_python.types import FastSerpRunResponse
162
+ ```
163
+
164
+ Methods:
165
+
166
+ - <code title="post /v1/fast-serp">client.fast_serp.<a href="./src/nimble_python/resources/fast_serp.py">run</a>(\*\*<a href="src/nimble_python/types/fast_serp_run_params.py">params</a>) -> <a href="./src/nimble_python/types/fast_serp_run_response.py">FastSerpRunResponse</a></code>
167
+
156
168
  # TaskAgent
157
169
 
158
170
  Types:
@@ -204,3 +216,60 @@ Methods:
204
216
  - <code title="get /v1/task-agents/{agent_id}/runs/{run_id}">client.task_agent.runs.<a href="./src/nimble_python/resources/task_agent/runs.py">get</a>(run_id, \*, agent_id) -> <a href="./src/nimble_python/types/task_agent/run_get_response.py">RunGetResponse</a></code>
205
217
  - <code title="get /v1/task-agents/{agent_id}/runs/{run_id}/result">client.task_agent.runs.<a href="./src/nimble_python/resources/task_agent/runs.py">get_result</a>(run_id, \*, agent_id) -> <a href="./src/nimble_python/types/task_agent/run_get_result_response.py">RunGetResultResponse</a></code>
206
218
  - <code title="get /v1/task-agents/{agent_id}/runs/{run_id}/events">client.task_agent.runs.<a href="./src/nimble_python/resources/task_agent/runs.py">stream_events</a>(run_id, \*, agent_id) -> object</code>
219
+
220
+ # Jobs
221
+
222
+ Types:
223
+
224
+ ```python
225
+ from nimble_python.types import (
226
+ JobCreateResponse,
227
+ JobUpdateResponse,
228
+ JobListResponse,
229
+ JobGetResponse,
230
+ JobRunResponse,
231
+ )
232
+ ```
233
+
234
+ Methods:
235
+
236
+ - <code title="post /v1/jobs">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">create</a>(\*\*<a href="src/nimble_python/types/job_create_params.py">params</a>) -> <a href="./src/nimble_python/types/job_create_response.py">JobCreateResponse</a></code>
237
+ - <code title="patch /v1/jobs/{job_id}">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">update</a>(job_id, \*\*<a href="src/nimble_python/types/job_update_params.py">params</a>) -> <a href="./src/nimble_python/types/job_update_response.py">JobUpdateResponse</a></code>
238
+ - <code title="get /v1/jobs">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">list</a>(\*\*<a href="src/nimble_python/types/job_list_params.py">params</a>) -> <a href="./src/nimble_python/types/job_list_response.py">JobListResponse</a></code>
239
+ - <code title="delete /v1/jobs/{job_id}">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">delete</a>(job_id) -> None</code>
240
+ - <code title="get /v1/jobs/{job_id}">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">get</a>(job_id) -> <a href="./src/nimble_python/types/job_get_response.py">JobGetResponse</a></code>
241
+ - <code title="post /v1/jobs/{job_id}/runs">client.jobs.<a href="./src/nimble_python/resources/jobs/jobs.py">run</a>(job_id) -> <a href="./src/nimble_python/types/job_run_response.py">JobRunResponse</a></code>
242
+
243
+ ## Runs
244
+
245
+ Types:
246
+
247
+ ```python
248
+ from nimble_python.types.jobs import RunListResponse, RunCancelResponse, RunGetResponse
249
+ ```
250
+
251
+ Methods:
252
+
253
+ - <code title="get /v1/jobs/{job_id}/runs">client.jobs.runs.<a href="./src/nimble_python/resources/jobs/runs/runs.py">list</a>(job_id, \*\*<a href="src/nimble_python/types/jobs/run_list_params.py">params</a>) -> <a href="./src/nimble_python/types/jobs/run_list_response.py">RunListResponse</a></code>
254
+ - <code title="post /v1/jobs/runs/{run_id}/cancel">client.jobs.runs.<a href="./src/nimble_python/resources/jobs/runs/runs.py">cancel</a>(run_id) -> <a href="./src/nimble_python/types/jobs/run_cancel_response.py">RunCancelResponse</a></code>
255
+ - <code title="get /v1/jobs/runs/{run_id}">client.jobs.runs.<a href="./src/nimble_python/resources/jobs/runs/runs.py">get</a>(run_id) -> <a href="./src/nimble_python/types/jobs/run_get_response.py">RunGetResponse</a></code>
256
+
257
+ ### Artifacts
258
+
259
+ Types:
260
+
261
+ ```python
262
+ from nimble_python.types.jobs.runs import (
263
+ ArtifactListResponse,
264
+ ArtifactDownloadURLResponse,
265
+ ArtifactGetResponse,
266
+ ArtifactPreviewResponse,
267
+ )
268
+ ```
269
+
270
+ Methods:
271
+
272
+ - <code title="get /v1/jobs/runs/{run_id}/artifacts">client.jobs.runs.artifacts.<a href="./src/nimble_python/resources/jobs/runs/artifacts.py">list</a>(run_id) -> <a href="./src/nimble_python/types/jobs/runs/artifact_list_response.py">ArtifactListResponse</a></code>
273
+ - <code title="get /v1/jobs/runs/{run_id}/artifacts/{artifact_id}/download-url">client.jobs.runs.artifacts.<a href="./src/nimble_python/resources/jobs/runs/artifacts.py">download_url</a>(artifact_id, \*, run_id) -> <a href="./src/nimble_python/types/jobs/runs/artifact_download_url_response.py">ArtifactDownloadURLResponse</a></code>
274
+ - <code title="get /v1/jobs/runs/{run_id}/artifacts/{artifact_id}">client.jobs.runs.artifacts.<a href="./src/nimble_python/resources/jobs/runs/artifacts.py">get</a>(artifact_id, \*, run_id) -> <a href="./src/nimble_python/types/jobs/runs/artifact_get_response.py">ArtifactGetResponse</a></code>
275
+ - <code title="get /v1/jobs/runs/{run_id}/artifacts/{artifact_id}/preview">client.jobs.runs.artifacts.<a href="./src/nimble_python/resources/jobs/runs/artifacts.py">preview</a>(artifact_id, \*, run_id) -> <a href="./src/nimble_python/types/jobs/runs/artifact_preview_response.py">ArtifactPreviewResponse</a></code>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "nimble_python"
3
- version = "0.19.0"
3
+ version = "0.21.0"
4
4
  description = "The official Python library for the nimble API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -61,13 +61,15 @@ from .types.extract_async_response import ExtractAsyncResponse
61
61
  from .types.extract_batch_response import ExtractBatchResponse
62
62
 
63
63
  if TYPE_CHECKING:
64
- from .resources import serp, agent, crawl, media, tasks, batches, task_agent, domain_knowledge
64
+ from .resources import jobs, serp, agent, crawl, media, tasks, batches, fast_serp, task_agent, domain_knowledge
65
65
  from .resources.serp import SerpResource, AsyncSerpResource
66
66
  from .resources.agent import AgentResource, AsyncAgentResource
67
67
  from .resources.crawl import CrawlResource, AsyncCrawlResource
68
68
  from .resources.media import MediaResource, AsyncMediaResource
69
69
  from .resources.tasks import TasksResource, AsyncTasksResource
70
70
  from .resources.batches import BatchesResource, AsyncBatchesResource
71
+ from .resources.fast_serp import FastSerpResource, AsyncFastSerpResource
72
+ from .resources.jobs.jobs import JobsResource, AsyncJobsResource
71
73
  from .resources.domain_knowledge import DomainKnowledgeResource, AsyncDomainKnowledgeResource
72
74
  from .resources.task_agent.task_agent import TaskAgentResource, AsyncTaskAgentResource
73
75
 
@@ -184,12 +186,24 @@ class Nimble(SyncAPIClient):
184
186
 
185
187
  return SerpResource(self)
186
188
 
189
+ @cached_property
190
+ def fast_serp(self) -> FastSerpResource:
191
+ from .resources.fast_serp import FastSerpResource
192
+
193
+ return FastSerpResource(self)
194
+
187
195
  @cached_property
188
196
  def task_agent(self) -> TaskAgentResource:
189
197
  from .resources.task_agent import TaskAgentResource
190
198
 
191
199
  return TaskAgentResource(self)
192
200
 
201
+ @cached_property
202
+ def jobs(self) -> JobsResource:
203
+ from .resources.jobs import JobsResource
204
+
205
+ return JobsResource(self)
206
+
193
207
  @cached_property
194
208
  def with_raw_response(self) -> NimbleWithRawResponse:
195
209
  return NimbleWithRawResponse(self)
@@ -1100,7 +1114,7 @@ class Nimble(SyncAPIClient):
1100
1114
  "random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
1101
1115
  ]
1102
1116
  | Omit = omit,
1103
- render: bool | Omit = omit,
1117
+ render: Union[bool, Literal["auto"]] | Omit = omit,
1104
1118
  request_timeout: float | Omit = omit,
1105
1119
  session: client_extract_params.Session | Omit = omit,
1106
1120
  skill: Union[str, SequenceNotStr[str]] | Omit = omit,
@@ -2101,7 +2115,7 @@ class Nimble(SyncAPIClient):
2101
2115
  "random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
2102
2116
  ]
2103
2117
  | Omit = omit,
2104
- render: bool | Omit = omit,
2118
+ render: Union[bool, Literal["auto"]] | Omit = omit,
2105
2119
  request_timeout: float | Omit = omit,
2106
2120
  session: client_extract_async_params.Session | Omit = omit,
2107
2121
  skill: Union[str, SequenceNotStr[str]] | Omit = omit,
@@ -3452,12 +3466,24 @@ class AsyncNimble(AsyncAPIClient):
3452
3466
 
3453
3467
  return AsyncSerpResource(self)
3454
3468
 
3469
+ @cached_property
3470
+ def fast_serp(self) -> AsyncFastSerpResource:
3471
+ from .resources.fast_serp import AsyncFastSerpResource
3472
+
3473
+ return AsyncFastSerpResource(self)
3474
+
3455
3475
  @cached_property
3456
3476
  def task_agent(self) -> AsyncTaskAgentResource:
3457
3477
  from .resources.task_agent import AsyncTaskAgentResource
3458
3478
 
3459
3479
  return AsyncTaskAgentResource(self)
3460
3480
 
3481
+ @cached_property
3482
+ def jobs(self) -> AsyncJobsResource:
3483
+ from .resources.jobs import AsyncJobsResource
3484
+
3485
+ return AsyncJobsResource(self)
3486
+
3461
3487
  @cached_property
3462
3488
  def with_raw_response(self) -> AsyncNimbleWithRawResponse:
3463
3489
  return AsyncNimbleWithRawResponse(self)
@@ -4368,7 +4394,7 @@ class AsyncNimble(AsyncAPIClient):
4368
4394
  "random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
4369
4395
  ]
4370
4396
  | Omit = omit,
4371
- render: bool | Omit = omit,
4397
+ render: Union[bool, Literal["auto"]] | Omit = omit,
4372
4398
  request_timeout: float | Omit = omit,
4373
4399
  session: client_extract_params.Session | Omit = omit,
4374
4400
  skill: Union[str, SequenceNotStr[str]] | Omit = omit,
@@ -5369,7 +5395,7 @@ class AsyncNimble(AsyncAPIClient):
5369
5395
  "random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
5370
5396
  ]
5371
5397
  | Omit = omit,
5372
- render: bool | Omit = omit,
5398
+ render: Union[bool, Literal["auto"]] | Omit = omit,
5373
5399
  request_timeout: float | Omit = omit,
5374
5400
  session: client_extract_async_params.Session | Omit = omit,
5375
5401
  skill: Union[str, SequenceNotStr[str]] | Omit = omit,
@@ -6674,12 +6700,24 @@ class NimbleWithRawResponse:
6674
6700
 
6675
6701
  return SerpResourceWithRawResponse(self._client.serp)
6676
6702
 
6703
+ @cached_property
6704
+ def fast_serp(self) -> fast_serp.FastSerpResourceWithRawResponse:
6705
+ from .resources.fast_serp import FastSerpResourceWithRawResponse
6706
+
6707
+ return FastSerpResourceWithRawResponse(self._client.fast_serp)
6708
+
6677
6709
  @cached_property
6678
6710
  def task_agent(self) -> task_agent.TaskAgentResourceWithRawResponse:
6679
6711
  from .resources.task_agent import TaskAgentResourceWithRawResponse
6680
6712
 
6681
6713
  return TaskAgentResourceWithRawResponse(self._client.task_agent)
6682
6714
 
6715
+ @cached_property
6716
+ def jobs(self) -> jobs.JobsResourceWithRawResponse:
6717
+ from .resources.jobs import JobsResourceWithRawResponse
6718
+
6719
+ return JobsResourceWithRawResponse(self._client.jobs)
6720
+
6683
6721
 
6684
6722
  class AsyncNimbleWithRawResponse:
6685
6723
  _client: AsyncNimble
@@ -6745,12 +6783,24 @@ class AsyncNimbleWithRawResponse:
6745
6783
 
6746
6784
  return AsyncSerpResourceWithRawResponse(self._client.serp)
6747
6785
 
6786
+ @cached_property
6787
+ def fast_serp(self) -> fast_serp.AsyncFastSerpResourceWithRawResponse:
6788
+ from .resources.fast_serp import AsyncFastSerpResourceWithRawResponse
6789
+
6790
+ return AsyncFastSerpResourceWithRawResponse(self._client.fast_serp)
6791
+
6748
6792
  @cached_property
6749
6793
  def task_agent(self) -> task_agent.AsyncTaskAgentResourceWithRawResponse:
6750
6794
  from .resources.task_agent import AsyncTaskAgentResourceWithRawResponse
6751
6795
 
6752
6796
  return AsyncTaskAgentResourceWithRawResponse(self._client.task_agent)
6753
6797
 
6798
+ @cached_property
6799
+ def jobs(self) -> jobs.AsyncJobsResourceWithRawResponse:
6800
+ from .resources.jobs import AsyncJobsResourceWithRawResponse
6801
+
6802
+ return AsyncJobsResourceWithRawResponse(self._client.jobs)
6803
+
6754
6804
 
6755
6805
  class NimbleWithStreamedResponse:
6756
6806
  _client: Nimble
@@ -6816,12 +6866,24 @@ class NimbleWithStreamedResponse:
6816
6866
 
6817
6867
  return SerpResourceWithStreamingResponse(self._client.serp)
6818
6868
 
6869
+ @cached_property
6870
+ def fast_serp(self) -> fast_serp.FastSerpResourceWithStreamingResponse:
6871
+ from .resources.fast_serp import FastSerpResourceWithStreamingResponse
6872
+
6873
+ return FastSerpResourceWithStreamingResponse(self._client.fast_serp)
6874
+
6819
6875
  @cached_property
6820
6876
  def task_agent(self) -> task_agent.TaskAgentResourceWithStreamingResponse:
6821
6877
  from .resources.task_agent import TaskAgentResourceWithStreamingResponse
6822
6878
 
6823
6879
  return TaskAgentResourceWithStreamingResponse(self._client.task_agent)
6824
6880
 
6881
+ @cached_property
6882
+ def jobs(self) -> jobs.JobsResourceWithStreamingResponse:
6883
+ from .resources.jobs import JobsResourceWithStreamingResponse
6884
+
6885
+ return JobsResourceWithStreamingResponse(self._client.jobs)
6886
+
6825
6887
 
6826
6888
  class AsyncNimbleWithStreamedResponse:
6827
6889
  _client: AsyncNimble
@@ -6887,12 +6949,24 @@ class AsyncNimbleWithStreamedResponse:
6887
6949
 
6888
6950
  return AsyncSerpResourceWithStreamingResponse(self._client.serp)
6889
6951
 
6952
+ @cached_property
6953
+ def fast_serp(self) -> fast_serp.AsyncFastSerpResourceWithStreamingResponse:
6954
+ from .resources.fast_serp import AsyncFastSerpResourceWithStreamingResponse
6955
+
6956
+ return AsyncFastSerpResourceWithStreamingResponse(self._client.fast_serp)
6957
+
6890
6958
  @cached_property
6891
6959
  def task_agent(self) -> task_agent.AsyncTaskAgentResourceWithStreamingResponse:
6892
6960
  from .resources.task_agent import AsyncTaskAgentResourceWithStreamingResponse
6893
6961
 
6894
6962
  return AsyncTaskAgentResourceWithStreamingResponse(self._client.task_agent)
6895
6963
 
6964
+ @cached_property
6965
+ def jobs(self) -> jobs.AsyncJobsResourceWithStreamingResponse:
6966
+ from .resources.jobs import AsyncJobsResourceWithStreamingResponse
6967
+
6968
+ return AsyncJobsResourceWithStreamingResponse(self._client.jobs)
6969
+
6896
6970
 
6897
6971
  Client = Nimble
6898
6972
 
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "nimble_python"
4
- __version__ = "0.19.0" # x-release-please-version
4
+ __version__ = "0.21.0" # x-release-please-version
@@ -1,5 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from .jobs import (
4
+ JobsResource,
5
+ AsyncJobsResource,
6
+ JobsResourceWithRawResponse,
7
+ AsyncJobsResourceWithRawResponse,
8
+ JobsResourceWithStreamingResponse,
9
+ AsyncJobsResourceWithStreamingResponse,
10
+ )
3
11
  from .serp import (
4
12
  SerpResource,
5
13
  AsyncSerpResource,
@@ -48,6 +56,14 @@ from .batches import (
48
56
  BatchesResourceWithStreamingResponse,
49
57
  AsyncBatchesResourceWithStreamingResponse,
50
58
  )
59
+ from .fast_serp import (
60
+ FastSerpResource,
61
+ AsyncFastSerpResource,
62
+ FastSerpResourceWithRawResponse,
63
+ AsyncFastSerpResourceWithRawResponse,
64
+ FastSerpResourceWithStreamingResponse,
65
+ AsyncFastSerpResourceWithStreamingResponse,
66
+ )
51
67
  from .task_agent import (
52
68
  TaskAgentResource,
53
69
  AsyncTaskAgentResource,
@@ -108,10 +124,22 @@ __all__ = [
108
124
  "AsyncSerpResourceWithRawResponse",
109
125
  "SerpResourceWithStreamingResponse",
110
126
  "AsyncSerpResourceWithStreamingResponse",
127
+ "FastSerpResource",
128
+ "AsyncFastSerpResource",
129
+ "FastSerpResourceWithRawResponse",
130
+ "AsyncFastSerpResourceWithRawResponse",
131
+ "FastSerpResourceWithStreamingResponse",
132
+ "AsyncFastSerpResourceWithStreamingResponse",
111
133
  "TaskAgentResource",
112
134
  "AsyncTaskAgentResource",
113
135
  "TaskAgentResourceWithRawResponse",
114
136
  "AsyncTaskAgentResourceWithRawResponse",
115
137
  "TaskAgentResourceWithStreamingResponse",
116
138
  "AsyncTaskAgentResourceWithStreamingResponse",
139
+ "JobsResource",
140
+ "AsyncJobsResource",
141
+ "JobsResourceWithRawResponse",
142
+ "AsyncJobsResourceWithRawResponse",
143
+ "JobsResourceWithStreamingResponse",
144
+ "AsyncJobsResourceWithStreamingResponse",
117
145
  ]
@@ -0,0 +1,293 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal
6
+
7
+ import httpx
8
+
9
+ from ..types import fast_serp_run_params
10
+ from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
11
+ from .._utils import maybe_transform, async_maybe_transform
12
+ from .._compat import cached_property
13
+ from .._resource import SyncAPIResource, AsyncAPIResource
14
+ from .._response import (
15
+ to_raw_response_wrapper,
16
+ to_streamed_response_wrapper,
17
+ async_to_raw_response_wrapper,
18
+ async_to_streamed_response_wrapper,
19
+ )
20
+ from .._base_client import make_request_options
21
+ from ..types.fast_serp_run_response import FastSerpRunResponse
22
+
23
+ __all__ = ["FastSerpResource", "AsyncFastSerpResource"]
24
+
25
+
26
+ class FastSerpResource(SyncAPIResource):
27
+ @cached_property
28
+ def with_raw_response(self) -> FastSerpResourceWithRawResponse:
29
+ """
30
+ This property can be used as a prefix for any HTTP method call to return
31
+ the raw response object instead of the parsed content.
32
+
33
+ For more information, see https://www.github.com/Nimbleway/nimble-python#accessing-raw-response-data-eg-headers
34
+ """
35
+ return FastSerpResourceWithRawResponse(self)
36
+
37
+ @cached_property
38
+ def with_streaming_response(self) -> FastSerpResourceWithStreamingResponse:
39
+ """
40
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
41
+
42
+ For more information, see https://www.github.com/Nimbleway/nimble-python#with_streaming_response
43
+ """
44
+ return FastSerpResourceWithStreamingResponse(self)
45
+
46
+ def run(
47
+ self,
48
+ *,
49
+ search_engine: Literal[
50
+ "google_search",
51
+ "google_sge",
52
+ "google_aio",
53
+ "google_maps_search",
54
+ "google_maps_reviews",
55
+ "google_maps_place",
56
+ "google_news",
57
+ "google_images",
58
+ "bing_search",
59
+ "yandex_search",
60
+ ],
61
+ country: str | Omit = omit,
62
+ device: Literal["desktop", "mobile"] | Omit = omit,
63
+ domain: str | Omit = omit,
64
+ locale: str | Omit = omit,
65
+ location: str | Omit = omit,
66
+ num_results: int | Omit = omit,
67
+ page: int | Omit = omit,
68
+ parse: bool | Omit = omit,
69
+ query: str | Omit = omit,
70
+ render: bool | Omit = omit,
71
+ show_hidden_results: bool | Omit = omit,
72
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
73
+ # The extra values given here take precedence over values defined on the client or passed to this method.
74
+ extra_headers: Headers | None = None,
75
+ extra_query: Query | None = None,
76
+ extra_body: Body | None = None,
77
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
78
+ ) -> FastSerpRunResponse:
79
+ """
80
+ Fast SERP
81
+
82
+ Args:
83
+ search_engine: The search engine to query.
84
+
85
+ country: ISO Alpha-2 country code used to access the target search engine (e.g. US, DE,
86
+ GB).
87
+
88
+ device: Device type used for the search request.
89
+
90
+ domain: Top-level domain for the search engine (e.g. "com", "co.uk", "de").
91
+
92
+ locale: Locale used for the search request.
93
+
94
+ location: Geo-location for the search (canonical Google location name).
95
+
96
+ num_results: Number of results to return (1–100).
97
+
98
+ page: The result page number for pagination.
99
+
100
+ parse: When true, the SERP response is parsed into structured JSON.
101
+
102
+ query: The search keyword or phrase to query.
103
+
104
+ render: Whether to render the page in a browser before extracting.
105
+
106
+ show_hidden_results: When true, disables Google result filtering (filter=0) so omitted/duplicate and
107
+ highly similar pages are also returned. Applies to Google search engines.
108
+
109
+ extra_headers: Send extra headers
110
+
111
+ extra_query: Add additional query parameters to the request
112
+
113
+ extra_body: Add additional JSON properties to the request
114
+
115
+ timeout: Override the client-level default timeout for this request, in seconds
116
+ """
117
+ return self._post(
118
+ "/v1/fast-serp",
119
+ body=maybe_transform(
120
+ {
121
+ "search_engine": search_engine,
122
+ "country": country,
123
+ "device": device,
124
+ "domain": domain,
125
+ "locale": locale,
126
+ "location": location,
127
+ "num_results": num_results,
128
+ "page": page,
129
+ "parse": parse,
130
+ "query": query,
131
+ "render": render,
132
+ "show_hidden_results": show_hidden_results,
133
+ },
134
+ fast_serp_run_params.FastSerpRunParams,
135
+ ),
136
+ options=make_request_options(
137
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
138
+ ),
139
+ cast_to=FastSerpRunResponse,
140
+ )
141
+
142
+
143
+ class AsyncFastSerpResource(AsyncAPIResource):
144
+ @cached_property
145
+ def with_raw_response(self) -> AsyncFastSerpResourceWithRawResponse:
146
+ """
147
+ This property can be used as a prefix for any HTTP method call to return
148
+ the raw response object instead of the parsed content.
149
+
150
+ For more information, see https://www.github.com/Nimbleway/nimble-python#accessing-raw-response-data-eg-headers
151
+ """
152
+ return AsyncFastSerpResourceWithRawResponse(self)
153
+
154
+ @cached_property
155
+ def with_streaming_response(self) -> AsyncFastSerpResourceWithStreamingResponse:
156
+ """
157
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
158
+
159
+ For more information, see https://www.github.com/Nimbleway/nimble-python#with_streaming_response
160
+ """
161
+ return AsyncFastSerpResourceWithStreamingResponse(self)
162
+
163
+ async def run(
164
+ self,
165
+ *,
166
+ search_engine: Literal[
167
+ "google_search",
168
+ "google_sge",
169
+ "google_aio",
170
+ "google_maps_search",
171
+ "google_maps_reviews",
172
+ "google_maps_place",
173
+ "google_news",
174
+ "google_images",
175
+ "bing_search",
176
+ "yandex_search",
177
+ ],
178
+ country: str | Omit = omit,
179
+ device: Literal["desktop", "mobile"] | Omit = omit,
180
+ domain: str | Omit = omit,
181
+ locale: str | Omit = omit,
182
+ location: str | Omit = omit,
183
+ num_results: int | Omit = omit,
184
+ page: int | Omit = omit,
185
+ parse: bool | Omit = omit,
186
+ query: str | Omit = omit,
187
+ render: bool | Omit = omit,
188
+ show_hidden_results: bool | Omit = omit,
189
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
190
+ # The extra values given here take precedence over values defined on the client or passed to this method.
191
+ extra_headers: Headers | None = None,
192
+ extra_query: Query | None = None,
193
+ extra_body: Body | None = None,
194
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
195
+ ) -> FastSerpRunResponse:
196
+ """
197
+ Fast SERP
198
+
199
+ Args:
200
+ search_engine: The search engine to query.
201
+
202
+ country: ISO Alpha-2 country code used to access the target search engine (e.g. US, DE,
203
+ GB).
204
+
205
+ device: Device type used for the search request.
206
+
207
+ domain: Top-level domain for the search engine (e.g. "com", "co.uk", "de").
208
+
209
+ locale: Locale used for the search request.
210
+
211
+ location: Geo-location for the search (canonical Google location name).
212
+
213
+ num_results: Number of results to return (1–100).
214
+
215
+ page: The result page number for pagination.
216
+
217
+ parse: When true, the SERP response is parsed into structured JSON.
218
+
219
+ query: The search keyword or phrase to query.
220
+
221
+ render: Whether to render the page in a browser before extracting.
222
+
223
+ show_hidden_results: When true, disables Google result filtering (filter=0) so omitted/duplicate and
224
+ highly similar pages are also returned. Applies to Google search engines.
225
+
226
+ extra_headers: Send extra headers
227
+
228
+ extra_query: Add additional query parameters to the request
229
+
230
+ extra_body: Add additional JSON properties to the request
231
+
232
+ timeout: Override the client-level default timeout for this request, in seconds
233
+ """
234
+ return await self._post(
235
+ "/v1/fast-serp",
236
+ body=await async_maybe_transform(
237
+ {
238
+ "search_engine": search_engine,
239
+ "country": country,
240
+ "device": device,
241
+ "domain": domain,
242
+ "locale": locale,
243
+ "location": location,
244
+ "num_results": num_results,
245
+ "page": page,
246
+ "parse": parse,
247
+ "query": query,
248
+ "render": render,
249
+ "show_hidden_results": show_hidden_results,
250
+ },
251
+ fast_serp_run_params.FastSerpRunParams,
252
+ ),
253
+ options=make_request_options(
254
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
255
+ ),
256
+ cast_to=FastSerpRunResponse,
257
+ )
258
+
259
+
260
+ class FastSerpResourceWithRawResponse:
261
+ def __init__(self, fast_serp: FastSerpResource) -> None:
262
+ self._fast_serp = fast_serp
263
+
264
+ self.run = to_raw_response_wrapper(
265
+ fast_serp.run,
266
+ )
267
+
268
+
269
+ class AsyncFastSerpResourceWithRawResponse:
270
+ def __init__(self, fast_serp: AsyncFastSerpResource) -> None:
271
+ self._fast_serp = fast_serp
272
+
273
+ self.run = async_to_raw_response_wrapper(
274
+ fast_serp.run,
275
+ )
276
+
277
+
278
+ class FastSerpResourceWithStreamingResponse:
279
+ def __init__(self, fast_serp: FastSerpResource) -> None:
280
+ self._fast_serp = fast_serp
281
+
282
+ self.run = to_streamed_response_wrapper(
283
+ fast_serp.run,
284
+ )
285
+
286
+
287
+ class AsyncFastSerpResourceWithStreamingResponse:
288
+ def __init__(self, fast_serp: AsyncFastSerpResource) -> None:
289
+ self._fast_serp = fast_serp
290
+
291
+ self.run = async_to_streamed_response_wrapper(
292
+ fast_serp.run,
293
+ )