anchorbrowser 0.3.12__tar.gz → 0.4.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 (176) hide show
  1. anchorbrowser-0.4.0/.release-please-manifest.json +3 -0
  2. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/CHANGELOG.md +21 -0
  3. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/PKG-INFO +1 -1
  4. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/api.md +10 -11
  5. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/pyproject.toml +1 -1
  6. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_client.py +9 -9
  7. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_types.py +3 -2
  8. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_version.py +1 -1
  9. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/__init__.py +13 -13
  10. anchorbrowser-0.4.0/src/anchorbrowser/resources/identities.py +163 -0
  11. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/__init__.py +3 -3
  12. anchorbrowser-0.4.0/src/anchorbrowser/types/identity_retrieve_credentials_response.py +72 -0
  13. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_create_params.py +32 -0
  14. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_create_params.py +8 -0
  15. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_create_response.py +8 -0
  16. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_list_response.py +8 -0
  17. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_run_params.py +8 -0
  18. anchorbrowser-0.4.0/tests/api_resources/test_identities.py +108 -0
  19. anchorbrowser-0.3.12/.release-please-manifest.json +0 -3
  20. anchorbrowser-0.3.12/src/anchorbrowser/resources/batch_sessions.py +0 -288
  21. anchorbrowser-0.3.12/src/anchorbrowser/types/batch_session_create_params.py +0 -487
  22. anchorbrowser-0.3.12/src/anchorbrowser/types/batch_session_create_response.py +0 -27
  23. anchorbrowser-0.3.12/src/anchorbrowser/types/batch_session_retrieve_response.py +0 -90
  24. anchorbrowser-0.3.12/tests/api_resources/test_batch_sessions.py +0 -288
  25. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/.gitignore +0 -0
  26. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/CONTRIBUTING.md +0 -0
  27. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/LICENSE +0 -0
  28. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/README.md +0 -0
  29. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/SECURITY.md +0 -0
  30. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/bin/check-release-environment +0 -0
  31. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/bin/publish-pypi +0 -0
  32. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/examples/.keep +0 -0
  33. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/noxfile.py +0 -0
  34. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/release-please-config.json +0 -0
  35. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/requirements-dev.lock +0 -0
  36. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/requirements.lock +0 -0
  37. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/__init__.py +0 -0
  38. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_base_client.py +0 -0
  39. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_compat.py +0 -0
  40. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_constants.py +0 -0
  41. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_exceptions.py +0 -0
  42. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_files.py +0 -0
  43. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_models.py +0 -0
  44. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_qs.py +0 -0
  45. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_resource.py +0 -0
  46. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_response.py +0 -0
  47. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_streaming.py +0 -0
  48. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/__init__.py +0 -0
  49. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_compat.py +0 -0
  50. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_datetime_parse.py +0 -0
  51. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_logs.py +0 -0
  52. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_proxy.py +0 -0
  53. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_reflection.py +0 -0
  54. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_resources_proxy.py +0 -0
  55. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_streams.py +0 -0
  56. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_sync.py +0 -0
  57. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_transform.py +0 -0
  58. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_typing.py +0 -0
  59. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/_utils/_utils.py +0 -0
  60. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/lib/.keep +0 -0
  61. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/lib/agent.py +0 -0
  62. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/lib/browser.py +0 -0
  63. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/py.typed +0 -0
  64. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/agent.py +0 -0
  65. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/browser.py +0 -0
  66. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/events.py +0 -0
  67. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/extensions.py +0 -0
  68. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/profiles.py +0 -0
  69. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/__init__.py +0 -0
  70. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/agent/__init__.py +0 -0
  71. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/agent/agent.py +0 -0
  72. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/agent/files.py +0 -0
  73. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/all.py +0 -0
  74. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/clipboard.py +0 -0
  75. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/keyboard.py +0 -0
  76. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/mouse.py +0 -0
  77. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/recordings/__init__.py +0 -0
  78. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/recordings/primary.py +0 -0
  79. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/recordings/recordings.py +0 -0
  80. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/sessions/sessions.py +0 -0
  81. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/task/run.py +0 -0
  82. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/task.py +0 -0
  83. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/resources/tools.py +0 -0
  84. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/event_signal_params.py +0 -0
  85. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/event_wait_for_params.py +0 -0
  86. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/event_wait_for_response.py +0 -0
  87. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_delete_response.py +0 -0
  88. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_list_response.py +0 -0
  89. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_manifest.py +0 -0
  90. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_retrieve_response.py +0 -0
  91. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_upload_params.py +0 -0
  92. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/extension_upload_response.py +0 -0
  93. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/profile_create_params.py +0 -0
  94. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/profile_list_response.py +0 -0
  95. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/profile_retrieve_response.py +0 -0
  96. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_copy_response.py +0 -0
  97. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_create_response.py +0 -0
  98. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_drag_and_drop_params.py +0 -0
  99. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_drag_and_drop_response.py +0 -0
  100. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_goto_params.py +0 -0
  101. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_goto_response.py +0 -0
  102. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_list_pages_response.py +0 -0
  103. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_paste_params.py +0 -0
  104. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_paste_response.py +0 -0
  105. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_retrieve_downloads_response.py +0 -0
  106. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_retrieve_response.py +0 -0
  107. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_scroll_params.py +0 -0
  108. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_scroll_response.py +0 -0
  109. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_upload_file_params.py +0 -0
  110. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/session_upload_file_response.py +0 -0
  111. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/__init__.py +0 -0
  112. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/agent/__init__.py +0 -0
  113. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/agent/file_list_response.py +0 -0
  114. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/agent/file_upload_params.py +0 -0
  115. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/agent/file_upload_response.py +0 -0
  116. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/all_status_response.py +0 -0
  117. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/clipboard_get_response.py +0 -0
  118. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/clipboard_set_params.py +0 -0
  119. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/clipboard_set_response.py +0 -0
  120. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/keyboard_shortcut_params.py +0 -0
  121. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/keyboard_shortcut_response.py +0 -0
  122. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/keyboard_type_params.py +0 -0
  123. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/keyboard_type_response.py +0 -0
  124. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_click_params.py +0 -0
  125. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_click_response.py +0 -0
  126. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_double_click_params.py +0 -0
  127. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_double_click_response.py +0 -0
  128. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_move_params.py +0 -0
  129. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/mouse_move_response.py +0 -0
  130. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/recording_list_response.py +0 -0
  131. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/recording_pause_response.py +0 -0
  132. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/recording_resume_response.py +0 -0
  133. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/sessions/recordings/__init__.py +0 -0
  134. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/shared/__init__.py +0 -0
  135. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/shared/success_response.py +0 -0
  136. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_list_params.py +0 -0
  137. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/task_run_response.py +0 -0
  138. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/tool_fetch_webpage_params.py +0 -0
  139. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/tool_fetch_webpage_response.py +0 -0
  140. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/tool_perform_web_task_params.py +0 -0
  141. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/tool_perform_web_task_response.py +0 -0
  142. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/src/anchorbrowser/types/tool_screenshot_webpage_params.py +0 -0
  143. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/__init__.py +0 -0
  144. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/__init__.py +0 -0
  145. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/__init__.py +0 -0
  146. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/agent/test_files.py +0 -0
  147. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/recordings/__init__.py +0 -0
  148. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/recordings/test_primary.py +0 -0
  149. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_agent.py +0 -0
  150. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_all.py +0 -0
  151. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_clipboard.py +0 -0
  152. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_keyboard.py +0 -0
  153. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_mouse.py +0 -0
  154. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/sessions/test_recordings.py +0 -0
  155. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_events.py +0 -0
  156. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_extensions.py +0 -0
  157. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_profiles.py +0 -0
  158. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_sessions.py +0 -0
  159. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_task.py +0 -0
  160. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/api_resources/test_tools.py +0 -0
  161. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/conftest.py +0 -0
  162. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/sample_file.txt +0 -0
  163. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_client.py +0 -0
  164. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_deepcopy.py +0 -0
  165. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_extract_files.py +0 -0
  166. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_files.py +0 -0
  167. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_models.py +0 -0
  168. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_qs.py +0 -0
  169. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_required_args.py +0 -0
  170. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_response.py +0 -0
  171. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_streaming.py +0 -0
  172. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_transform.py +0 -0
  173. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_utils/test_datetime_parse.py +0 -0
  174. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_utils/test_proxy.py +0 -0
  175. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/test_utils/test_typing.py +0 -0
  176. {anchorbrowser-0.3.12 → anchorbrowser-0.4.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.4.0"
3
+ }
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.0 (2025-12-11)
4
+
5
+ Full Changelog: [v0.3.13...v0.4.0](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/compare/v0.3.13...v0.4.0)
6
+
7
+ ### Features
8
+
9
+ * BRO-1383 Add get identity credentials endpoint to SDK ([0548f2f](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/commit/0548f2fd39fb76b7e972154637aafe317a6ce17f))
10
+
11
+ ## 0.3.13 (2025-12-09)
12
+
13
+ Full Changelog: [v0.3.12...v0.3.13](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/compare/v0.3.12...v0.3.13)
14
+
15
+ ### Bug Fixes
16
+
17
+ * **types:** allow pyright to infer TypedDict types within SequenceNotStr ([cb35cbc](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/commit/cb35cbcfddccb5fee912b1cafe3dfab5b237209f))
18
+
19
+
20
+ ### Chores
21
+
22
+ * add missing docstrings ([6e46d9f](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/commit/6e46d9f28d01af030ea754883f0086cd80705999))
23
+
3
24
  ## 0.3.12 (2025-12-03)
4
25
 
5
26
  Full Changelog: [v0.3.11...v0.3.12](https://github.com/anchorbrowser/AnchorBrowser-SDK-Python/compare/v0.3.11...v0.3.12)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: anchorbrowser
3
- Version: 0.3.12
3
+ Version: 0.4.0
4
4
  Summary: The official Python library for the anchorbrowser API
5
5
  Project-URL: Homepage, https://github.com/anchorbrowser/AnchorBrowser-SDK-Python
6
6
  Project-URL: Repository, https://github.com/anchorbrowser/AnchorBrowser-SDK-Python
@@ -202,40 +202,39 @@ Methods:
202
202
  - <code title="post /v1/events/{event_name}">client.events.<a href="./src/anchorbrowser/resources/events.py">signal</a>(event_name, \*\*<a href="src/anchorbrowser/types/event_signal_params.py">params</a>) -> <a href="./src/anchorbrowser/types/shared/success_response.py">SuccessResponse</a></code>
203
203
  - <code title="post /v1/events/{event_name}/wait">client.events.<a href="./src/anchorbrowser/resources/events.py">wait_for</a>(event_name, \*\*<a href="src/anchorbrowser/types/event_wait_for_params.py">params</a>) -> <a href="./src/anchorbrowser/types/event_wait_for_response.py">EventWaitForResponse</a></code>
204
204
 
205
- # BatchSessions
205
+ # Task
206
206
 
207
207
  Types:
208
208
 
209
209
  ```python
210
- from anchorbrowser.types import BatchSessionCreateResponse, BatchSessionRetrieveResponse
210
+ from anchorbrowser.types import TaskCreateResponse, TaskListResponse
211
211
  ```
212
212
 
213
213
  Methods:
214
214
 
215
- - <code title="post /v1/batch-sessions">client.batch_sessions.<a href="./src/anchorbrowser/resources/batch_sessions.py">create</a>(\*\*<a href="src/anchorbrowser/types/batch_session_create_params.py">params</a>) -> <a href="./src/anchorbrowser/types/batch_session_create_response.py">BatchSessionCreateResponse</a></code>
216
- - <code title="get /v1/batch-sessions/{batch_id}">client.batch_sessions.<a href="./src/anchorbrowser/resources/batch_sessions.py">retrieve</a>(batch_id) -> <a href="./src/anchorbrowser/types/batch_session_retrieve_response.py">BatchSessionRetrieveResponse</a></code>
215
+ - <code title="post /v1/task">client.task.<a href="./src/anchorbrowser/resources/task/task.py">create</a>(\*\*<a href="src/anchorbrowser/types/task_create_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task_create_response.py">TaskCreateResponse</a></code>
216
+ - <code title="get /v1/task">client.task.<a href="./src/anchorbrowser/resources/task/task.py">list</a>(\*\*<a href="src/anchorbrowser/types/task_list_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task_list_response.py">TaskListResponse</a></code>
217
217
 
218
- # Task
218
+ ## Run
219
219
 
220
220
  Types:
221
221
 
222
222
  ```python
223
- from anchorbrowser.types import TaskCreateResponse, TaskListResponse
223
+ from anchorbrowser.types.task import RunExecuteResponse
224
224
  ```
225
225
 
226
226
  Methods:
227
227
 
228
- - <code title="post /v1/task">client.task.<a href="./src/anchorbrowser/resources/task/task.py">create</a>(\*\*<a href="src/anchorbrowser/types/task_create_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task_create_response.py">TaskCreateResponse</a></code>
229
- - <code title="get /v1/task">client.task.<a href="./src/anchorbrowser/resources/task/task.py">list</a>(\*\*<a href="src/anchorbrowser/types/task_list_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task_list_response.py">TaskListResponse</a></code>
228
+ - <code title="post /v1/task/run">client.task.run.<a href="./src/anchorbrowser/resources/task/run.py">execute</a>(\*\*<a href="src/anchorbrowser/types/task/run_execute_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task/run_execute_response.py">RunExecuteResponse</a></code>
230
229
 
231
- ## Run
230
+ # Identities
232
231
 
233
232
  Types:
234
233
 
235
234
  ```python
236
- from anchorbrowser.types.task import RunExecuteResponse
235
+ from anchorbrowser.types import IdentityRetrieveCredentialsResponse
237
236
  ```
238
237
 
239
238
  Methods:
240
239
 
241
- - <code title="post /v1/task/run">client.task.run.<a href="./src/anchorbrowser/resources/task/run.py">execute</a>(\*\*<a href="src/anchorbrowser/types/task/run_execute_params.py">params</a>) -> <a href="./src/anchorbrowser/types/task/run_execute_response.py">RunExecuteResponse</a></code>
240
+ - <code title="get /v1/identities/{identity_id}/credentials">client.identities.<a href="./src/anchorbrowser/resources/identities.py">retrieve_credentials</a>(identity_id) -> <a href="./src/anchorbrowser/types/identity_retrieve_credentials_response.py">IdentityRetrieveCredentialsResponse</a></code>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "anchorbrowser"
3
- version = "0.3.12"
3
+ version = "0.4.0"
4
4
  description = "The official Python library for the anchorbrowser API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -21,7 +21,7 @@ from ._types import (
21
21
  )
22
22
  from ._utils import is_given, get_async_library
23
23
  from ._version import __version__
24
- from .resources import task, agent, tools, events, browser, profiles, extensions, batch_sessions
24
+ from .resources import task, agent, tools, events, browser, profiles, extensions, identities
25
25
  from ._streaming import Stream as Stream, AsyncStream as AsyncStream
26
26
  from ._exceptions import APIStatusError, AnchorbrowserError
27
27
  from ._base_client import (
@@ -51,8 +51,8 @@ class Anchorbrowser(SyncAPIClient):
51
51
  browser: browser.BrowserResource
52
52
  agent: agent.AgentResource
53
53
  events: events.EventsResource
54
- batch_sessions: batch_sessions.BatchSessionsResource
55
54
  task: task.TaskResource
55
+ identities: identities.IdentitiesResource
56
56
  with_raw_response: AnchorbrowserWithRawResponse
57
57
  with_streaming_response: AnchorbrowserWithStreamedResponse
58
58
 
@@ -117,8 +117,8 @@ class Anchorbrowser(SyncAPIClient):
117
117
  self.browser = browser.BrowserResource(self)
118
118
  self.agent = agent.AgentResource(self)
119
119
  self.events = events.EventsResource(self)
120
- self.batch_sessions = batch_sessions.BatchSessionsResource(self)
121
120
  self.task = task.TaskResource(self)
121
+ self.identities = identities.IdentitiesResource(self)
122
122
  self.with_raw_response = AnchorbrowserWithRawResponse(self)
123
123
  self.with_streaming_response = AnchorbrowserWithStreamedResponse(self)
124
124
 
@@ -235,8 +235,8 @@ class AsyncAnchorbrowser(AsyncAPIClient):
235
235
  browser: browser.AsyncBrowserResource
236
236
  agent: agent.AsyncAgentResource
237
237
  events: events.AsyncEventsResource
238
- batch_sessions: batch_sessions.AsyncBatchSessionsResource
239
238
  task: task.AsyncTaskResource
239
+ identities: identities.AsyncIdentitiesResource
240
240
  with_raw_response: AsyncAnchorbrowserWithRawResponse
241
241
  with_streaming_response: AsyncAnchorbrowserWithStreamedResponse
242
242
 
@@ -301,8 +301,8 @@ class AsyncAnchorbrowser(AsyncAPIClient):
301
301
  self.browser = browser.AsyncBrowserResource(self)
302
302
  self.agent = agent.AsyncAgentResource(self)
303
303
  self.events = events.AsyncEventsResource(self)
304
- self.batch_sessions = batch_sessions.AsyncBatchSessionsResource(self)
305
304
  self.task = task.AsyncTaskResource(self)
305
+ self.identities = identities.AsyncIdentitiesResource(self)
306
306
  self.with_raw_response = AsyncAnchorbrowserWithRawResponse(self)
307
307
  self.with_streaming_response = AsyncAnchorbrowserWithStreamedResponse(self)
308
308
 
@@ -420,8 +420,8 @@ class AnchorbrowserWithRawResponse:
420
420
  self.browser = browser.BrowserResourceWithRawResponse(client.browser)
421
421
  self.agent = agent.AgentResourceWithRawResponse(client.agent)
422
422
  self.events = events.EventsResourceWithRawResponse(client.events)
423
- self.batch_sessions = batch_sessions.BatchSessionsResourceWithRawResponse(client.batch_sessions)
424
423
  self.task = task.TaskResourceWithRawResponse(client.task)
424
+ self.identities = identities.IdentitiesResourceWithRawResponse(client.identities)
425
425
 
426
426
 
427
427
  class AsyncAnchorbrowserWithRawResponse:
@@ -433,8 +433,8 @@ class AsyncAnchorbrowserWithRawResponse:
433
433
  self.browser = browser.AsyncBrowserResourceWithRawResponse(client.browser)
434
434
  self.agent = agent.AsyncAgentResourceWithRawResponse(client.agent)
435
435
  self.events = events.AsyncEventsResourceWithRawResponse(client.events)
436
- self.batch_sessions = batch_sessions.AsyncBatchSessionsResourceWithRawResponse(client.batch_sessions)
437
436
  self.task = task.AsyncTaskResourceWithRawResponse(client.task)
437
+ self.identities = identities.AsyncIdentitiesResourceWithRawResponse(client.identities)
438
438
 
439
439
 
440
440
  class AnchorbrowserWithStreamedResponse:
@@ -446,8 +446,8 @@ class AnchorbrowserWithStreamedResponse:
446
446
  self.browser = browser.BrowserResourceWithStreamingResponse(client.browser)
447
447
  self.agent = agent.AgentResourceWithStreamingResponse(client.agent)
448
448
  self.events = events.EventsResourceWithStreamingResponse(client.events)
449
- self.batch_sessions = batch_sessions.BatchSessionsResourceWithStreamingResponse(client.batch_sessions)
450
449
  self.task = task.TaskResourceWithStreamingResponse(client.task)
450
+ self.identities = identities.IdentitiesResourceWithStreamingResponse(client.identities)
451
451
 
452
452
 
453
453
  class AsyncAnchorbrowserWithStreamedResponse:
@@ -459,8 +459,8 @@ class AsyncAnchorbrowserWithStreamedResponse:
459
459
  self.browser = browser.AsyncBrowserResourceWithStreamingResponse(client.browser)
460
460
  self.agent = agent.AsyncAgentResourceWithStreamingResponse(client.agent)
461
461
  self.events = events.AsyncEventsResourceWithStreamingResponse(client.events)
462
- self.batch_sessions = batch_sessions.AsyncBatchSessionsResourceWithStreamingResponse(client.batch_sessions)
463
462
  self.task = task.AsyncTaskResourceWithStreamingResponse(client.task)
463
+ self.identities = identities.AsyncIdentitiesResourceWithStreamingResponse(client.identities)
464
464
 
465
465
 
466
466
  Client = Anchorbrowser
@@ -243,6 +243,9 @@ _T_co = TypeVar("_T_co", covariant=True)
243
243
  if TYPE_CHECKING:
244
244
  # This works because str.__contains__ does not accept object (either in typeshed or at runtime)
245
245
  # https://github.com/hauntsaninja/useful_types/blob/5e9710f3875107d068e7679fd7fec9cfab0eff3b/useful_types/__init__.py#L285
246
+ #
247
+ # Note: index() and count() methods are intentionally omitted to allow pyright to properly
248
+ # infer TypedDict types when dict literals are used in lists assigned to SequenceNotStr.
246
249
  class SequenceNotStr(Protocol[_T_co]):
247
250
  @overload
248
251
  def __getitem__(self, index: SupportsIndex, /) -> _T_co: ...
@@ -251,8 +254,6 @@ if TYPE_CHECKING:
251
254
  def __contains__(self, value: object, /) -> bool: ...
252
255
  def __len__(self) -> int: ...
253
256
  def __iter__(self) -> Iterator[_T_co]: ...
254
- def index(self, value: Any, start: int = 0, stop: int = ..., /) -> int: ...
255
- def count(self, value: Any, /) -> int: ...
256
257
  def __reversed__(self) -> Iterator[_T_co]: ...
257
258
  else:
258
259
  # just point this to a normal `Sequence` at runtime to avoid having to special case
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "anchorbrowser"
4
- __version__ = "0.3.12" # x-release-please-version
4
+ __version__ = "0.4.0" # x-release-please-version
@@ -48,13 +48,13 @@ from .extensions import (
48
48
  ExtensionsResourceWithStreamingResponse,
49
49
  AsyncExtensionsResourceWithStreamingResponse,
50
50
  )
51
- from .batch_sessions import (
52
- BatchSessionsResource,
53
- AsyncBatchSessionsResource,
54
- BatchSessionsResourceWithRawResponse,
55
- AsyncBatchSessionsResourceWithRawResponse,
56
- BatchSessionsResourceWithStreamingResponse,
57
- AsyncBatchSessionsResourceWithStreamingResponse,
51
+ from .identities import (
52
+ IdentitiesResource,
53
+ AsyncIdentitiesResource,
54
+ IdentitiesResourceWithRawResponse,
55
+ AsyncIdentitiesResourceWithRawResponse,
56
+ IdentitiesResourceWithStreamingResponse,
57
+ AsyncIdentitiesResourceWithStreamingResponse,
58
58
  )
59
59
 
60
60
  __all__ = [
@@ -88,16 +88,16 @@ __all__ = [
88
88
  "AsyncEventsResourceWithRawResponse",
89
89
  "EventsResourceWithStreamingResponse",
90
90
  "AsyncEventsResourceWithStreamingResponse",
91
- "BatchSessionsResource",
92
- "AsyncBatchSessionsResource",
93
- "BatchSessionsResourceWithRawResponse",
94
- "AsyncBatchSessionsResourceWithRawResponse",
95
- "BatchSessionsResourceWithStreamingResponse",
96
- "AsyncBatchSessionsResourceWithStreamingResponse",
97
91
  "TaskResource",
98
92
  "AsyncTaskResource",
99
93
  "TaskResourceWithRawResponse",
100
94
  "AsyncTaskResourceWithRawResponse",
101
95
  "TaskResourceWithStreamingResponse",
102
96
  "AsyncTaskResourceWithStreamingResponse",
97
+ "IdentitiesResource",
98
+ "AsyncIdentitiesResource",
99
+ "IdentitiesResourceWithRawResponse",
100
+ "AsyncIdentitiesResourceWithRawResponse",
101
+ "IdentitiesResourceWithStreamingResponse",
102
+ "AsyncIdentitiesResourceWithStreamingResponse",
103
103
  ]
@@ -0,0 +1,163 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from .._types import Body, Query, Headers, NotGiven, not_given
8
+ from .._compat import cached_property
9
+ from .._resource import SyncAPIResource, AsyncAPIResource
10
+ from .._response import (
11
+ to_raw_response_wrapper,
12
+ to_streamed_response_wrapper,
13
+ async_to_raw_response_wrapper,
14
+ async_to_streamed_response_wrapper,
15
+ )
16
+ from .._base_client import make_request_options
17
+ from ..types.identity_retrieve_credentials_response import IdentityRetrieveCredentialsResponse
18
+
19
+ __all__ = ["IdentitiesResource", "AsyncIdentitiesResource"]
20
+
21
+
22
+ class IdentitiesResource(SyncAPIResource):
23
+ @cached_property
24
+ def with_raw_response(self) -> IdentitiesResourceWithRawResponse:
25
+ """
26
+ This property can be used as a prefix for any HTTP method call to return
27
+ the raw response object instead of the parsed content.
28
+
29
+ For more information, see https://www.github.com/anchorbrowser/AnchorBrowser-SDK-Python#accessing-raw-response-data-eg-headers
30
+ """
31
+ return IdentitiesResourceWithRawResponse(self)
32
+
33
+ @cached_property
34
+ def with_streaming_response(self) -> IdentitiesResourceWithStreamingResponse:
35
+ """
36
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
37
+
38
+ For more information, see https://www.github.com/anchorbrowser/AnchorBrowser-SDK-Python#with_streaming_response
39
+ """
40
+ return IdentitiesResourceWithStreamingResponse(self)
41
+
42
+ def retrieve_credentials(
43
+ self,
44
+ identity_id: str,
45
+ *,
46
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
47
+ # The extra values given here take precedence over values defined on the client or passed to this method.
48
+ extra_headers: Headers | None = None,
49
+ extra_query: Query | None = None,
50
+ extra_body: Body | None = None,
51
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
52
+ ) -> IdentityRetrieveCredentialsResponse:
53
+ """
54
+ Retrieves the credentials for a specific identity.
55
+
56
+ Args:
57
+ extra_headers: Send extra headers
58
+
59
+ extra_query: Add additional query parameters to the request
60
+
61
+ extra_body: Add additional JSON properties to the request
62
+
63
+ timeout: Override the client-level default timeout for this request, in seconds
64
+ """
65
+ if not identity_id:
66
+ raise ValueError(f"Expected a non-empty value for `identity_id` but received {identity_id!r}")
67
+ return self._get(
68
+ f"/v1/identities/{identity_id}/credentials",
69
+ options=make_request_options(
70
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
71
+ ),
72
+ cast_to=IdentityRetrieveCredentialsResponse,
73
+ )
74
+
75
+
76
+ class AsyncIdentitiesResource(AsyncAPIResource):
77
+ @cached_property
78
+ def with_raw_response(self) -> AsyncIdentitiesResourceWithRawResponse:
79
+ """
80
+ This property can be used as a prefix for any HTTP method call to return
81
+ the raw response object instead of the parsed content.
82
+
83
+ For more information, see https://www.github.com/anchorbrowser/AnchorBrowser-SDK-Python#accessing-raw-response-data-eg-headers
84
+ """
85
+ return AsyncIdentitiesResourceWithRawResponse(self)
86
+
87
+ @cached_property
88
+ def with_streaming_response(self) -> AsyncIdentitiesResourceWithStreamingResponse:
89
+ """
90
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
91
+
92
+ For more information, see https://www.github.com/anchorbrowser/AnchorBrowser-SDK-Python#with_streaming_response
93
+ """
94
+ return AsyncIdentitiesResourceWithStreamingResponse(self)
95
+
96
+ async def retrieve_credentials(
97
+ self,
98
+ identity_id: str,
99
+ *,
100
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
101
+ # The extra values given here take precedence over values defined on the client or passed to this method.
102
+ extra_headers: Headers | None = None,
103
+ extra_query: Query | None = None,
104
+ extra_body: Body | None = None,
105
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
106
+ ) -> IdentityRetrieveCredentialsResponse:
107
+ """
108
+ Retrieves the credentials for a specific identity.
109
+
110
+ Args:
111
+ extra_headers: Send extra headers
112
+
113
+ extra_query: Add additional query parameters to the request
114
+
115
+ extra_body: Add additional JSON properties to the request
116
+
117
+ timeout: Override the client-level default timeout for this request, in seconds
118
+ """
119
+ if not identity_id:
120
+ raise ValueError(f"Expected a non-empty value for `identity_id` but received {identity_id!r}")
121
+ return await self._get(
122
+ f"/v1/identities/{identity_id}/credentials",
123
+ options=make_request_options(
124
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
125
+ ),
126
+ cast_to=IdentityRetrieveCredentialsResponse,
127
+ )
128
+
129
+
130
+ class IdentitiesResourceWithRawResponse:
131
+ def __init__(self, identities: IdentitiesResource) -> None:
132
+ self._identities = identities
133
+
134
+ self.retrieve_credentials = to_raw_response_wrapper(
135
+ identities.retrieve_credentials,
136
+ )
137
+
138
+
139
+ class AsyncIdentitiesResourceWithRawResponse:
140
+ def __init__(self, identities: AsyncIdentitiesResource) -> None:
141
+ self._identities = identities
142
+
143
+ self.retrieve_credentials = async_to_raw_response_wrapper(
144
+ identities.retrieve_credentials,
145
+ )
146
+
147
+
148
+ class IdentitiesResourceWithStreamingResponse:
149
+ def __init__(self, identities: IdentitiesResource) -> None:
150
+ self._identities = identities
151
+
152
+ self.retrieve_credentials = to_streamed_response_wrapper(
153
+ identities.retrieve_credentials,
154
+ )
155
+
156
+
157
+ class AsyncIdentitiesResourceWithStreamingResponse:
158
+ def __init__(self, identities: AsyncIdentitiesResource) -> None:
159
+ self._identities = identities
160
+
161
+ self.retrieve_credentials = async_to_streamed_response_wrapper(
162
+ identities.retrieve_credentials,
163
+ )
@@ -30,16 +30,16 @@ from .profile_retrieve_response import ProfileRetrieveResponse as ProfileRetriev
30
30
  from .session_retrieve_response import SessionRetrieveResponse as SessionRetrieveResponse
31
31
  from .tool_fetch_webpage_params import ToolFetchWebpageParams as ToolFetchWebpageParams
32
32
  from .session_upload_file_params import SessionUploadFileParams as SessionUploadFileParams
33
- from .batch_session_create_params import BatchSessionCreateParams as BatchSessionCreateParams
34
33
  from .extension_retrieve_response import ExtensionRetrieveResponse as ExtensionRetrieveResponse
35
34
  from .session_list_pages_response import SessionListPagesResponse as SessionListPagesResponse
36
35
  from .tool_fetch_webpage_response import ToolFetchWebpageResponse as ToolFetchWebpageResponse
37
36
  from .session_drag_and_drop_params import SessionDragAndDropParams as SessionDragAndDropParams
38
37
  from .session_upload_file_response import SessionUploadFileResponse as SessionUploadFileResponse
39
38
  from .tool_perform_web_task_params import ToolPerformWebTaskParams as ToolPerformWebTaskParams
40
- from .batch_session_create_response import BatchSessionCreateResponse as BatchSessionCreateResponse
41
39
  from .session_drag_and_drop_response import SessionDragAndDropResponse as SessionDragAndDropResponse
42
40
  from .tool_perform_web_task_response import ToolPerformWebTaskResponse as ToolPerformWebTaskResponse
43
41
  from .tool_screenshot_webpage_params import ToolScreenshotWebpageParams as ToolScreenshotWebpageParams
44
- from .batch_session_retrieve_response import BatchSessionRetrieveResponse as BatchSessionRetrieveResponse
45
42
  from .session_retrieve_downloads_response import SessionRetrieveDownloadsResponse as SessionRetrieveDownloadsResponse
43
+ from .identity_retrieve_credentials_response import (
44
+ IdentityRetrieveCredentialsResponse as IdentityRetrieveCredentialsResponse,
45
+ )
@@ -0,0 +1,72 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Union, Optional
4
+ from typing_extensions import Literal, TypeAlias
5
+
6
+ from .._models import BaseModel
7
+
8
+ __all__ = [
9
+ "IdentityRetrieveCredentialsResponse",
10
+ "Credential",
11
+ "CredentialUsernamePasswordCredentialSchema",
12
+ "CredentialAuthenticatorCredentialSchema",
13
+ "CredentialCustomCredentialSchema",
14
+ "CredentialCustomCredentialSchemaField",
15
+ ]
16
+
17
+
18
+ class CredentialUsernamePasswordCredentialSchema(BaseModel):
19
+ password: Optional[str] = None
20
+ """The password of the credential"""
21
+
22
+ type: Optional[Literal["username_password"]] = None
23
+ """The type of credential"""
24
+
25
+ username: Optional[str] = None
26
+ """The username of the credential"""
27
+
28
+
29
+ class CredentialAuthenticatorCredentialSchema(BaseModel):
30
+ otp: Optional[str] = None
31
+ """The OTP of the credential"""
32
+
33
+ secret: Optional[str] = None
34
+ """The secret of the credential"""
35
+
36
+ type: Optional[Literal["authenticator"]] = None
37
+ """The type of credential"""
38
+
39
+
40
+ class CredentialCustomCredentialSchemaField(BaseModel):
41
+ name: Optional[str] = None
42
+ """The name of the field"""
43
+
44
+ value: Optional[str] = None
45
+ """The value of the field"""
46
+
47
+
48
+ class CredentialCustomCredentialSchema(BaseModel):
49
+ fields: Optional[List[CredentialCustomCredentialSchemaField]] = None
50
+
51
+ type: Optional[Literal["custom"]] = None
52
+ """The type of credential"""
53
+
54
+
55
+ Credential: TypeAlias = Union[
56
+ CredentialUsernamePasswordCredentialSchema,
57
+ CredentialAuthenticatorCredentialSchema,
58
+ CredentialCustomCredentialSchema,
59
+ ]
60
+
61
+
62
+ class IdentityRetrieveCredentialsResponse(BaseModel):
63
+ id: Optional[str] = None
64
+ """The ID of the identity"""
65
+
66
+ credentials: Optional[List[Credential]] = None
67
+
68
+ name: Optional[str] = None
69
+ """The name of the identity"""
70
+
71
+ source: Optional[str] = None
72
+ """The url related to the identity"""
@@ -49,11 +49,15 @@ class SessionCreateParams(TypedDict, total=False):
49
49
 
50
50
 
51
51
  class BrowserAdblock(TypedDict, total=False):
52
+ """Configuration for ad-blocking."""
53
+
52
54
  active: bool
53
55
  """Enable or disable ad-blocking. Defaults to `true`."""
54
56
 
55
57
 
56
58
  class BrowserCaptchaSolver(TypedDict, total=False):
59
+ """Configuration for captcha-solving."""
60
+
57
61
  active: bool
58
62
  """Enable or disable captcha-solving.
59
63
 
@@ -62,6 +66,8 @@ class BrowserCaptchaSolver(TypedDict, total=False):
62
66
 
63
67
 
64
68
  class BrowserDisableWebSecurity(TypedDict, total=False):
69
+ """Configuration for disabling web security features."""
70
+
65
71
  active: bool
66
72
  """Whether to disable web security features (CORS, same-origin policy, etc.).
67
73
 
@@ -71,11 +77,17 @@ class BrowserDisableWebSecurity(TypedDict, total=False):
71
77
 
72
78
 
73
79
  class BrowserExtraStealth(TypedDict, total=False):
80
+ """
81
+ Configuration for extra stealth mode to enhance browser fingerprinting protection.
82
+ """
83
+
74
84
  active: bool
75
85
  """Enable or disable extra stealth mode."""
76
86
 
77
87
 
78
88
  class BrowserFullscreen(TypedDict, total=False):
89
+ """Configuration for fullscreen mode."""
90
+
79
91
  active: bool
80
92
  """Enable or disable fullscreen mode.
81
93
 
@@ -84,11 +96,15 @@ class BrowserFullscreen(TypedDict, total=False):
84
96
 
85
97
 
86
98
  class BrowserHeadless(TypedDict, total=False):
99
+ """Configuration for headless mode."""
100
+
87
101
  active: bool
88
102
  """Whether browser should be headless or headful. Defaults to `false`."""
89
103
 
90
104
 
91
105
  class BrowserP2pDownload(TypedDict, total=False):
106
+ """Configuration for peer-to-peer download capture functionality."""
107
+
92
108
  active: bool
93
109
  """Enable or disable P2P downloads.
94
110
 
@@ -98,6 +114,8 @@ class BrowserP2pDownload(TypedDict, total=False):
98
114
 
99
115
 
100
116
  class BrowserPopupBlocker(TypedDict, total=False):
117
+ """Configuration for popup blocking."""
118
+
101
119
  active: bool
102
120
  """Blocks popups, including ads and CAPTCHA consent banners.
103
121
 
@@ -106,6 +124,8 @@ class BrowserPopupBlocker(TypedDict, total=False):
106
124
 
107
125
 
108
126
  class BrowserProfile(TypedDict, total=False):
127
+ """Options for managing and persisting browser session profiles."""
128
+
109
129
  name: str
110
130
  """The name of the profile to be used during the browser session."""
111
131
 
@@ -117,6 +137,8 @@ class BrowserProfile(TypedDict, total=False):
117
137
 
118
138
 
119
139
  class BrowserViewport(TypedDict, total=False):
140
+ """Configuration for the browser's viewport size."""
141
+
120
142
  height: int
121
143
  """Height of the viewport in pixels. Defaults to `900`."""
122
144
 
@@ -125,6 +147,8 @@ class BrowserViewport(TypedDict, total=False):
125
147
 
126
148
 
127
149
  class Browser(TypedDict, total=False):
150
+ """Browser-specific configurations."""
151
+
128
152
  adblock: BrowserAdblock
129
153
  """Configuration for ad-blocking."""
130
154
 
@@ -194,6 +218,8 @@ class Integration(TypedDict, total=False):
194
218
 
195
219
 
196
220
  class SessionLiveView(TypedDict, total=False):
221
+ """Configuration for live viewing the browser session."""
222
+
197
223
  read_only: bool
198
224
  """Enable or disable read-only mode for live viewing. Defaults to `false`."""
199
225
 
@@ -437,11 +463,15 @@ SessionProxy: TypeAlias = Union[SessionProxyAnchorProxy, SessionProxyCustomProxy
437
463
 
438
464
 
439
465
  class SessionRecording(TypedDict, total=False):
466
+ """Configuration for session recording."""
467
+
440
468
  active: bool
441
469
  """Enable or disable video recording of the browser session. Defaults to `true`."""
442
470
 
443
471
 
444
472
  class SessionTimeout(TypedDict, total=False):
473
+ """Timeout configurations for the browser session."""
474
+
445
475
  idle_timeout: int
446
476
  """
447
477
  The amount of time (in minutes) the browser session waits for new connections
@@ -456,6 +486,8 @@ class SessionTimeout(TypedDict, total=False):
456
486
 
457
487
 
458
488
  class Session(TypedDict, total=False):
489
+ """Session-related configurations."""
490
+
459
491
  initial_url: str
460
492
  """The URL to navigate to when the browser session starts.
461
493