kernel 0.62.0__tar.gz → 0.63.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 (321) hide show
  1. kernel-0.63.0/.release-please-manifest.json +3 -0
  2. {kernel-0.62.0 → kernel-0.63.0}/CHANGELOG.md +14 -0
  3. {kernel-0.62.0 → kernel-0.63.0}/PKG-INFO +1 -1
  4. {kernel-0.62.0 → kernel-0.63.0}/api.md +1 -0
  5. {kernel-0.62.0 → kernel-0.63.0}/pyproject.toml +1 -1
  6. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_version.py +1 -1
  7. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/browsers.py +37 -2
  8. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/__init__.py +2 -0
  9. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_create_params.py +14 -0
  10. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_create_response.py +10 -0
  11. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_list_params.py +9 -1
  12. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_list_response.py +10 -0
  13. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_acquire_response.py +10 -0
  14. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_retrieve_response.py +10 -0
  15. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_update_response.py +10 -0
  16. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_list_browsers_response.py +10 -0
  17. kernel-0.63.0/src/kernel/types/tags.py +8 -0
  18. kernel-0.63.0/src/kernel/types/tags_param.py +10 -0
  19. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_browsers.py +12 -0
  20. kernel-0.62.0/.release-please-manifest.json +0 -3
  21. {kernel-0.62.0 → kernel-0.63.0}/.gitignore +0 -0
  22. {kernel-0.62.0 → kernel-0.63.0}/CONTRIBUTING.md +0 -0
  23. {kernel-0.62.0 → kernel-0.63.0}/LICENSE +0 -0
  24. {kernel-0.62.0 → kernel-0.63.0}/README.md +0 -0
  25. {kernel-0.62.0 → kernel-0.63.0}/SECURITY.md +0 -0
  26. {kernel-0.62.0 → kernel-0.63.0}/bin/check-release-environment +0 -0
  27. {kernel-0.62.0 → kernel-0.63.0}/bin/publish-pypi +0 -0
  28. {kernel-0.62.0 → kernel-0.63.0}/examples/.keep +0 -0
  29. {kernel-0.62.0 → kernel-0.63.0}/examples/browser_routing.py +0 -0
  30. {kernel-0.62.0 → kernel-0.63.0}/examples/browser_telemetry.py +0 -0
  31. {kernel-0.62.0 → kernel-0.63.0}/noxfile.py +0 -0
  32. {kernel-0.62.0 → kernel-0.63.0}/release-please-config.json +0 -0
  33. {kernel-0.62.0 → kernel-0.63.0}/requirements-dev.lock +0 -0
  34. {kernel-0.62.0 → kernel-0.63.0}/requirements.lock +0 -0
  35. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/__init__.py +0 -0
  36. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_base_client.py +0 -0
  37. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_client.py +0 -0
  38. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_compat.py +0 -0
  39. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_constants.py +0 -0
  40. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_exceptions.py +0 -0
  41. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_files.py +0 -0
  42. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_models.py +0 -0
  43. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_qs.py +0 -0
  44. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_resource.py +0 -0
  45. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_response.py +0 -0
  46. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_streaming.py +0 -0
  47. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_types.py +0 -0
  48. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/__init__.py +0 -0
  49. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_compat.py +0 -0
  50. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_datetime_parse.py +0 -0
  51. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_json.py +0 -0
  52. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_logs.py +0 -0
  53. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_path.py +0 -0
  54. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_proxy.py +0 -0
  55. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_reflection.py +0 -0
  56. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_resources_proxy.py +0 -0
  57. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_streams.py +0 -0
  58. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_sync.py +0 -0
  59. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_transform.py +0 -0
  60. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_typing.py +0 -0
  61. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/_utils/_utils.py +0 -0
  62. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/app_framework.py +0 -0
  63. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/lib/.keep +0 -0
  64. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
  65. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
  66. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/lib/browser_routing/routing.py +0 -0
  67. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/lib/browser_routing/util.py +0 -0
  68. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/pagination.py +0 -0
  69. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/py.typed +0 -0
  70. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/__init__.py +0 -0
  71. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/api_keys.py +0 -0
  72. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/apps.py +0 -0
  73. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/auth/__init__.py +0 -0
  74. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/auth/auth.py +0 -0
  75. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/auth/connections.py +0 -0
  76. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browser_pools.py +0 -0
  77. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/__init__.py +0 -0
  78. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/computer.py +0 -0
  79. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
  80. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
  81. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
  82. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/logs.py +0 -0
  83. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/playwright.py +0 -0
  84. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/process.py +0 -0
  85. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/replays.py +0 -0
  86. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/browsers/telemetry.py +0 -0
  87. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/credential_providers.py +0 -0
  88. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/credentials.py +0 -0
  89. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/deployments.py +0 -0
  90. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/extensions.py +0 -0
  91. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/invocations.py +0 -0
  92. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/profiles.py +0 -0
  93. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/projects/__init__.py +0 -0
  94. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/projects/limits.py +0 -0
  95. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/projects/projects.py +0 -0
  96. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/resources/proxies.py +0 -0
  97. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/api_key.py +0 -0
  98. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/api_key_create_params.py +0 -0
  99. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/api_key_list_params.py +0 -0
  100. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/api_key_update_params.py +0 -0
  101. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/app_list_params.py +0 -0
  102. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/app_list_response.py +0 -0
  103. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/__init__.py +0 -0
  104. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_create_params.py +0 -0
  105. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
  106. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_list_params.py +0 -0
  107. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_login_params.py +0 -0
  108. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
  109. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/connection_update_params.py +0 -0
  110. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/login_response.py +0 -0
  111. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/managed_auth.py +0 -0
  112. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
  113. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_curl_params.py +0 -0
  114. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_curl_response.py +0 -0
  115. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
  116. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool.py +0 -0
  117. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
  118. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_create_params.py +0 -0
  119. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
  120. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_list_params.py +0 -0
  121. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_ref.py +0 -0
  122. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_release_params.py +0 -0
  123. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_pool_update_params.py +0 -0
  124. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_retrieve_params.py +0 -0
  125. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_update_params.py +0 -0
  126. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browser_usage.py +0 -0
  127. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/__init__.py +0 -0
  128. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
  129. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
  130. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
  131. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
  132. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
  133. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
  134. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
  135. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
  136. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
  137. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
  138. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
  139. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
  140. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
  141. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
  142. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
  143. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
  144. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
  145. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
  146. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
  147. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
  148. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
  149. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
  150. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
  151. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
  152. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
  153. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
  154. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
  155. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
  156. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
  157. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
  158. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
  159. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
  160. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
  161. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
  162. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
  163. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
  164. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
  165. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
  166. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
  167. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
  168. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
  169. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
  170. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
  171. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
  172. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
  173. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
  174. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
  175. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
  176. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
  177. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
  178. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
  179. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
  180. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
  181. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_move_params.py +0 -0
  182. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
  183. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
  184. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
  185. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
  186. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
  187. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
  188. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
  189. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
  190. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
  191. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
  192. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
  193. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
  194. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
  195. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
  196. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
  197. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
  198. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
  199. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
  200. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
  201. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
  202. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_status_response.py +0 -0
  203. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
  204. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
  205. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
  206. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
  207. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
  208. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
  209. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
  210. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/created_api_key.py +0 -0
  211. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential.py +0 -0
  212. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_create_params.py +0 -0
  213. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_list_params.py +0 -0
  214. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider.py +0 -0
  215. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_create_params.py +0 -0
  216. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_item.py +0 -0
  217. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
  218. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_list_params.py +0 -0
  219. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_test_result.py +0 -0
  220. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_provider_update_params.py +0 -0
  221. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_totp_code_response.py +0 -0
  222. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/credential_update_params.py +0 -0
  223. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_create_params.py +0 -0
  224. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_create_response.py +0 -0
  225. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_follow_params.py +0 -0
  226. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_follow_response.py +0 -0
  227. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_list_params.py +0 -0
  228. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_list_response.py +0 -0
  229. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_retrieve_response.py +0 -0
  230. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/deployment_state_event.py +0 -0
  231. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
  232. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/extension_list_params.py +0 -0
  233. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/extension_list_response.py +0 -0
  234. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/extension_upload_params.py +0 -0
  235. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/extension_upload_response.py +0 -0
  236. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_create_params.py +0 -0
  237. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_create_response.py +0 -0
  238. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_follow_params.py +0 -0
  239. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_follow_response.py +0 -0
  240. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_list_params.py +0 -0
  241. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_list_response.py +0 -0
  242. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
  243. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_state_event.py +0 -0
  244. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_update_params.py +0 -0
  245. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/invocation_update_response.py +0 -0
  246. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/profile.py +0 -0
  247. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/profile_create_params.py +0 -0
  248. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/profile_list_params.py +0 -0
  249. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/project.py +0 -0
  250. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/project_create_params.py +0 -0
  251. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/project_list_params.py +0 -0
  252. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/project_update_params.py +0 -0
  253. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/projects/__init__.py +0 -0
  254. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/projects/limit_update_params.py +0 -0
  255. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/projects/project_limits.py +0 -0
  256. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_check_params.py +0 -0
  257. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_check_response.py +0 -0
  258. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_create_params.py +0 -0
  259. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_create_response.py +0 -0
  260. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_list_params.py +0 -0
  261. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_list_response.py +0 -0
  262. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
  263. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/__init__.py +0 -0
  264. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/app_action.py +0 -0
  265. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/browser_extension.py +0 -0
  266. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/browser_profile.py +0 -0
  267. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/browser_viewport.py +0 -0
  268. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/error_detail.py +0 -0
  269. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/error_event.py +0 -0
  270. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/error_model.py +0 -0
  271. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
  272. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared/log_event.py +0 -0
  273. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared_params/__init__.py +0 -0
  274. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
  275. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
  276. {kernel-0.62.0 → kernel-0.63.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
  277. {kernel-0.62.0 → kernel-0.63.0}/tests/__init__.py +0 -0
  278. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/__init__.py +0 -0
  279. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/auth/__init__.py +0 -0
  280. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/auth/test_connections.py +0 -0
  281. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/__init__.py +0 -0
  282. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
  283. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
  284. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_computer.py +0 -0
  285. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_fs.py +0 -0
  286. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_logs.py +0 -0
  287. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_playwright.py +0 -0
  288. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_process.py +0 -0
  289. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_replays.py +0 -0
  290. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
  291. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/projects/__init__.py +0 -0
  292. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/projects/test_limits.py +0 -0
  293. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_api_keys.py +0 -0
  294. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_apps.py +0 -0
  295. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_browser_pools.py +0 -0
  296. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_credential_providers.py +0 -0
  297. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_credentials.py +0 -0
  298. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_deployments.py +0 -0
  299. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_extensions.py +0 -0
  300. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_invocations.py +0 -0
  301. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_profiles.py +0 -0
  302. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_projects.py +0 -0
  303. {kernel-0.62.0 → kernel-0.63.0}/tests/api_resources/test_proxies.py +0 -0
  304. {kernel-0.62.0 → kernel-0.63.0}/tests/conftest.py +0 -0
  305. {kernel-0.62.0 → kernel-0.63.0}/tests/sample_file.txt +0 -0
  306. {kernel-0.62.0 → kernel-0.63.0}/tests/test_browser_routing.py +0 -0
  307. {kernel-0.62.0 → kernel-0.63.0}/tests/test_client.py +0 -0
  308. {kernel-0.62.0 → kernel-0.63.0}/tests/test_extract_files.py +0 -0
  309. {kernel-0.62.0 → kernel-0.63.0}/tests/test_files.py +0 -0
  310. {kernel-0.62.0 → kernel-0.63.0}/tests/test_models.py +0 -0
  311. {kernel-0.62.0 → kernel-0.63.0}/tests/test_qs.py +0 -0
  312. {kernel-0.62.0 → kernel-0.63.0}/tests/test_required_args.py +0 -0
  313. {kernel-0.62.0 → kernel-0.63.0}/tests/test_response.py +0 -0
  314. {kernel-0.62.0 → kernel-0.63.0}/tests/test_streaming.py +0 -0
  315. {kernel-0.62.0 → kernel-0.63.0}/tests/test_transform.py +0 -0
  316. {kernel-0.62.0 → kernel-0.63.0}/tests/test_utils/test_datetime_parse.py +0 -0
  317. {kernel-0.62.0 → kernel-0.63.0}/tests/test_utils/test_json.py +0 -0
  318. {kernel-0.62.0 → kernel-0.63.0}/tests/test_utils/test_path.py +0 -0
  319. {kernel-0.62.0 → kernel-0.63.0}/tests/test_utils/test_proxy.py +0 -0
  320. {kernel-0.62.0 → kernel-0.63.0}/tests/test_utils/test_typing.py +0 -0
  321. {kernel-0.62.0 → kernel-0.63.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.63.0"
3
+ }
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.63.0 (2026-06-05)
4
+
5
+ Full Changelog: [v0.62.0...v0.63.0](https://github.com/kernel/kernel-python-sdk/compare/v0.62.0...v0.63.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** allow setting a custom name on a browser session at create time ([0dea358](https://github.com/kernel/kernel-python-sdk/commit/0dea35847a9559c86038774966bae28911c0a044))
10
+ * **api:** allow setting key-value tags on a browser session at create time ([f9ca7c1](https://github.com/kernel/kernel-python-sdk/commit/f9ca7c19aa71326c97b14d723dfd79840e3e8dd7))
11
+
12
+
13
+ ### Documentation
14
+
15
+ * **api:** use neutral example for browser session name field ([01b15f6](https://github.com/kernel/kernel-python-sdk/commit/01b15f602a4c21ab4e757bf46ed2d4c1481c14ce))
16
+
3
17
  ## 0.62.0 (2026-06-04)
4
18
 
5
19
  Full Changelog: [v0.61.0...v0.62.0](https://github.com/kernel/kernel-python-sdk/compare/v0.61.0...v0.62.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: kernel
3
- Version: 0.62.0
3
+ Version: 0.63.0
4
4
  Summary: The official Python library for the kernel API
5
5
  Project-URL: Homepage, https://github.com/kernel/kernel-python-sdk
6
6
  Project-URL: Repository, https://github.com/kernel/kernel-python-sdk
@@ -83,6 +83,7 @@ from kernel.types import (
83
83
  BrowserPoolRef,
84
84
  BrowserUsage,
85
85
  Profile,
86
+ Tags,
86
87
  BrowserCreateResponse,
87
88
  BrowserRetrieveResponse,
88
89
  BrowserUpdateResponse,
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "kernel"
3
- version = "0.62.0"
3
+ version = "0.63.0"
4
4
  description = "The official Python library for the kernel API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "kernel"
4
- __version__ = "0.62.0" # x-release-please-version
4
+ __version__ = "0.63.0" # x-release-please-version
@@ -85,6 +85,7 @@ from ..._response import (
85
85
  )
86
86
  from ...pagination import SyncOffsetPagination, AsyncOffsetPagination
87
87
  from ..._base_client import AsyncPaginator, make_request_options
88
+ from ...types.tags_param import TagsParam
88
89
  from ...types.browser_curl_response import BrowserCurlResponse
89
90
  from ...types.browser_list_response import BrowserListResponse
90
91
  from ...lib.browser_routing.raw_http import (
@@ -169,10 +170,12 @@ class BrowsersResource(SyncAPIResource):
169
170
  headless: bool | Omit = omit,
170
171
  invocation_id: str | Omit = omit,
171
172
  kiosk_mode: bool | Omit = omit,
173
+ name: str | Omit = omit,
172
174
  profile: BrowserProfile | Omit = omit,
173
175
  proxy_id: str | Omit = omit,
174
176
  start_url: str | Omit = omit,
175
177
  stealth: bool | Omit = omit,
178
+ tags: TagsParam | Omit = omit,
176
179
  telemetry: Optional[browser_create_params.Telemetry] | Omit = omit,
177
180
  timeout_seconds: int | Omit = omit,
178
181
  viewport: BrowserViewport | Omit = omit,
@@ -205,6 +208,10 @@ class BrowsersResource(SyncAPIResource):
205
208
  kiosk_mode: If true, launches the browser in kiosk mode to hide address bar and tabs in live
206
209
  view.
207
210
 
211
+ name: Optional human-readable name for the browser session, used to find it later in
212
+ the dashboard. Must be unique among active sessions within the project. Set at
213
+ creation time only.
214
+
208
215
  profile: Profile selection for the browser session. Provide either id or name. If
209
216
  specified, the matching profile will be loaded into the browser session.
210
217
  Profiles must be created beforehand.
@@ -219,6 +226,9 @@ class BrowsersResource(SyncAPIResource):
219
226
  stealth: If true, launches the browser in stealth mode to reduce detection by anti-bot
220
227
  mechanisms.
221
228
 
229
+ tags: Optional user-defined key-value tags for the browser session, used to find and
230
+ group sessions later. Set at creation time only. Up to 50 pairs.
231
+
222
232
  telemetry: Telemetry configuration for the browser session. Set enabled to true to start
223
233
  capture using VM defaults, or provide browser category settings. If omitted,
224
234
  null, set to an empty object ({}), set to enabled: false without browser
@@ -262,10 +272,12 @@ class BrowsersResource(SyncAPIResource):
262
272
  "headless": headless,
263
273
  "invocation_id": invocation_id,
264
274
  "kiosk_mode": kiosk_mode,
275
+ "name": name,
265
276
  "profile": profile,
266
277
  "proxy_id": proxy_id,
267
278
  "start_url": start_url,
268
279
  "stealth": stealth,
280
+ "tags": tags,
269
281
  "telemetry": telemetry,
270
282
  "timeout_seconds": timeout_seconds,
271
283
  "viewport": viewport,
@@ -393,6 +405,7 @@ class BrowsersResource(SyncAPIResource):
393
405
  offset: int | Omit = omit,
394
406
  query: str | Omit = omit,
395
407
  status: Literal["active", "deleted", "all"] | Omit = omit,
408
+ tags: Dict[str, str] | Omit = omit,
396
409
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
397
410
  # The extra values given here take precedence over values defined on the client or passed to this method.
398
411
  extra_headers: Headers | None = None,
@@ -413,11 +426,15 @@ class BrowsersResource(SyncAPIResource):
413
426
 
414
427
  offset: Number of results to skip. Defaults to 0.
415
428
 
416
- query: Search browsers by session ID, profile ID, proxy ID, or pool name.
429
+ query: Search browsers by name, session ID, profile ID, proxy ID, or pool name.
417
430
 
418
431
  status: Filter sessions by status. "active" returns only active sessions (default),
419
432
  "deleted" returns only soft-deleted sessions, "all" returns both.
420
433
 
434
+ tags: Filter sessions by tag key-value pairs using deepObject style, e.g.
435
+ ?tags[team]=backend&tags[env]=staging. Multiple pairs are ANDed: a session must
436
+ match every supplied pair exactly.
437
+
421
438
  extra_headers: Send extra headers
422
439
 
423
440
  extra_query: Add additional query parameters to the request
@@ -441,6 +458,7 @@ class BrowsersResource(SyncAPIResource):
441
458
  "offset": offset,
442
459
  "query": query,
443
460
  "status": status,
461
+ "tags": tags,
444
462
  },
445
463
  browser_list_params.BrowserListParams,
446
464
  ),
@@ -717,10 +735,12 @@ class AsyncBrowsersResource(AsyncAPIResource):
717
735
  headless: bool | Omit = omit,
718
736
  invocation_id: str | Omit = omit,
719
737
  kiosk_mode: bool | Omit = omit,
738
+ name: str | Omit = omit,
720
739
  profile: BrowserProfile | Omit = omit,
721
740
  proxy_id: str | Omit = omit,
722
741
  start_url: str | Omit = omit,
723
742
  stealth: bool | Omit = omit,
743
+ tags: TagsParam | Omit = omit,
724
744
  telemetry: Optional[browser_create_params.Telemetry] | Omit = omit,
725
745
  timeout_seconds: int | Omit = omit,
726
746
  viewport: BrowserViewport | Omit = omit,
@@ -753,6 +773,10 @@ class AsyncBrowsersResource(AsyncAPIResource):
753
773
  kiosk_mode: If true, launches the browser in kiosk mode to hide address bar and tabs in live
754
774
  view.
755
775
 
776
+ name: Optional human-readable name for the browser session, used to find it later in
777
+ the dashboard. Must be unique among active sessions within the project. Set at
778
+ creation time only.
779
+
756
780
  profile: Profile selection for the browser session. Provide either id or name. If
757
781
  specified, the matching profile will be loaded into the browser session.
758
782
  Profiles must be created beforehand.
@@ -767,6 +791,9 @@ class AsyncBrowsersResource(AsyncAPIResource):
767
791
  stealth: If true, launches the browser in stealth mode to reduce detection by anti-bot
768
792
  mechanisms.
769
793
 
794
+ tags: Optional user-defined key-value tags for the browser session, used to find and
795
+ group sessions later. Set at creation time only. Up to 50 pairs.
796
+
770
797
  telemetry: Telemetry configuration for the browser session. Set enabled to true to start
771
798
  capture using VM defaults, or provide browser category settings. If omitted,
772
799
  null, set to an empty object ({}), set to enabled: false without browser
@@ -810,10 +837,12 @@ class AsyncBrowsersResource(AsyncAPIResource):
810
837
  "headless": headless,
811
838
  "invocation_id": invocation_id,
812
839
  "kiosk_mode": kiosk_mode,
840
+ "name": name,
813
841
  "profile": profile,
814
842
  "proxy_id": proxy_id,
815
843
  "start_url": start_url,
816
844
  "stealth": stealth,
845
+ "tags": tags,
817
846
  "telemetry": telemetry,
818
847
  "timeout_seconds": timeout_seconds,
819
848
  "viewport": viewport,
@@ -941,6 +970,7 @@ class AsyncBrowsersResource(AsyncAPIResource):
941
970
  offset: int | Omit = omit,
942
971
  query: str | Omit = omit,
943
972
  status: Literal["active", "deleted", "all"] | Omit = omit,
973
+ tags: Dict[str, str] | Omit = omit,
944
974
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
945
975
  # The extra values given here take precedence over values defined on the client or passed to this method.
946
976
  extra_headers: Headers | None = None,
@@ -961,11 +991,15 @@ class AsyncBrowsersResource(AsyncAPIResource):
961
991
 
962
992
  offset: Number of results to skip. Defaults to 0.
963
993
 
964
- query: Search browsers by session ID, profile ID, proxy ID, or pool name.
994
+ query: Search browsers by name, session ID, profile ID, proxy ID, or pool name.
965
995
 
966
996
  status: Filter sessions by status. "active" returns only active sessions (default),
967
997
  "deleted" returns only soft-deleted sessions, "all" returns both.
968
998
 
999
+ tags: Filter sessions by tag key-value pairs using deepObject style, e.g.
1000
+ ?tags[team]=backend&tags[env]=staging. Multiple pairs are ANDed: a session must
1001
+ match every supplied pair exactly.
1002
+
969
1003
  extra_headers: Send extra headers
970
1004
 
971
1005
  extra_query: Add additional query parameters to the request
@@ -989,6 +1023,7 @@ class AsyncBrowsersResource(AsyncAPIResource):
989
1023
  "offset": offset,
990
1024
  "query": query,
991
1025
  "status": status,
1026
+ "tags": tags,
992
1027
  },
993
1028
  browser_list_params.BrowserListParams,
994
1029
  ),
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
 
5
5
  from . import browsers
6
6
  from .. import _compat
7
+ from .tags import Tags as Tags
7
8
  from .shared import (
8
9
  LogEvent as LogEvent,
9
10
  AppAction as AppAction,
@@ -19,6 +20,7 @@ from .api_key import APIKey as APIKey
19
20
  from .profile import Profile as Profile
20
21
  from .project import Project as Project
21
22
  from .credential import Credential as Credential
23
+ from .tags_param import TagsParam as TagsParam
22
24
  from .browser_pool import BrowserPool as BrowserPool
23
25
  from .browser_usage import BrowserUsage as BrowserUsage
24
26
  from .app_list_params import AppListParams as AppListParams
@@ -5,6 +5,7 @@ from __future__ import annotations
5
5
  from typing import Dict, Iterable, Optional
6
6
  from typing_extensions import TypedDict
7
7
 
8
+ from .tags_param import TagsParam
8
9
  from .shared_params.browser_profile import BrowserProfile
9
10
  from .shared_params.browser_viewport import BrowserViewport
10
11
  from .shared_params.browser_extension import BrowserExtension
@@ -49,6 +50,13 @@ class BrowserCreateParams(TypedDict, total=False):
49
50
  view.
50
51
  """
51
52
 
53
+ name: str
54
+ """
55
+ Optional human-readable name for the browser session, used to find it later in
56
+ the dashboard. Must be unique among active sessions within the project. Set at
57
+ creation time only.
58
+ """
59
+
52
60
  profile: BrowserProfile
53
61
  """Profile selection for the browser session.
54
62
 
@@ -75,6 +83,12 @@ class BrowserCreateParams(TypedDict, total=False):
75
83
  mechanisms.
76
84
  """
77
85
 
86
+ tags: TagsParam
87
+ """
88
+ Optional user-defined key-value tags for the browser session, used to find and
89
+ group sessions later. Set at creation time only. Up to 50 pairs.
90
+ """
91
+
78
92
  telemetry: Optional[Telemetry]
79
93
  """Telemetry configuration for the browser session.
80
94
 
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class BrowserCreateResponse(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class BrowserCreateResponse(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ from typing import Dict
5
6
  from typing_extensions import Literal, TypedDict
6
7
 
7
8
  __all__ = ["BrowserListParams"]
@@ -22,7 +23,7 @@ class BrowserListParams(TypedDict, total=False):
22
23
  """Number of results to skip. Defaults to 0."""
23
24
 
24
25
  query: str
25
- """Search browsers by session ID, profile ID, proxy ID, or pool name."""
26
+ """Search browsers by name, session ID, profile ID, proxy ID, or pool name."""
26
27
 
27
28
  status: Literal["active", "deleted", "all"]
28
29
  """Filter sessions by status.
@@ -30,3 +31,10 @@ class BrowserListParams(TypedDict, total=False):
30
31
  "active" returns only active sessions (default), "deleted" returns only
31
32
  soft-deleted sessions, "all" returns both.
32
33
  """
34
+
35
+ tags: Dict[str, str]
36
+ """Filter sessions by tag key-value pairs using deepObject style, e.g.
37
+
38
+ ?tags[team]=backend&tags[env]=staging. Multiple pairs are ANDed: a session must
39
+ match every supplied pair exactly.
40
+ """
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class BrowserListResponse(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class BrowserListResponse(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class BrowserPoolAcquireResponse(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class BrowserPoolAcquireResponse(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class BrowserRetrieveResponse(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class BrowserRetrieveResponse(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class BrowserUpdateResponse(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class BrowserUpdateResponse(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -3,6 +3,7 @@
3
3
  from typing import Dict, List, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from .tags import Tags
6
7
  from .profile import Profile
7
8
  from .._models import BaseModel
8
9
  from .browser_usage import BrowserUsage
@@ -63,6 +64,9 @@ class Browser(BaseModel):
63
64
  kiosk_mode: Optional[bool] = None
64
65
  """Whether the browser session is running in kiosk mode."""
65
66
 
67
+ name: Optional[str] = None
68
+ """Human-readable name of the browser session, if one was set at creation."""
69
+
66
70
  pool: Optional[BrowserPoolRef] = None
67
71
  """Browser pool this session was acquired from, if any."""
68
72
 
@@ -81,6 +85,12 @@ class Browser(BaseModel):
81
85
  browser actually loaded.
82
86
  """
83
87
 
88
+ tags: Optional[Tags] = None
89
+ """User-defined key-value tags that were set on this browser session, if any.
90
+
91
+ Echoed back when present.
92
+ """
93
+
84
94
  telemetry: Optional[BrowserTelemetryConfig] = None
85
95
  """Active telemetry configuration for the session, if any."""
86
96
 
@@ -0,0 +1,8 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict
4
+ from typing_extensions import TypeAlias
5
+
6
+ __all__ = ["Tags"]
7
+
8
+ Tags: TypeAlias = Dict[str, str]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+ from typing_extensions import TypeAlias
7
+
8
+ __all__ = ["TagsParam"]
9
+
10
+ TagsParam: TypeAlias = Dict[str, str]
@@ -45,6 +45,7 @@ class TestBrowsers:
45
45
  headless=False,
46
46
  invocation_id="rr33xuugxj9h0bkf1rdt2bet",
47
47
  kiosk_mode=True,
48
+ name="checkout-flow-1",
48
49
  profile={
49
50
  "id": "id",
50
51
  "name": "name",
@@ -53,6 +54,10 @@ class TestBrowsers:
53
54
  proxy_id="proxy_id",
54
55
  start_url="https://example.com",
55
56
  stealth=True,
57
+ tags={
58
+ "team": "backend",
59
+ "env": "staging",
60
+ },
56
61
  telemetry={
57
62
  "browser": {
58
63
  "console": {"enabled": True},
@@ -231,6 +236,7 @@ class TestBrowsers:
231
236
  offset=0,
232
237
  query="query",
233
238
  status="active",
239
+ tags={"foo": "string"},
234
240
  )
235
241
  assert_matches_type(SyncOffsetPagination[BrowserListResponse], browser, path=["response"])
236
242
 
@@ -451,6 +457,7 @@ class TestAsyncBrowsers:
451
457
  headless=False,
452
458
  invocation_id="rr33xuugxj9h0bkf1rdt2bet",
453
459
  kiosk_mode=True,
460
+ name="checkout-flow-1",
454
461
  profile={
455
462
  "id": "id",
456
463
  "name": "name",
@@ -459,6 +466,10 @@ class TestAsyncBrowsers:
459
466
  proxy_id="proxy_id",
460
467
  start_url="https://example.com",
461
468
  stealth=True,
469
+ tags={
470
+ "team": "backend",
471
+ "env": "staging",
472
+ },
462
473
  telemetry={
463
474
  "browser": {
464
475
  "console": {"enabled": True},
@@ -637,6 +648,7 @@ class TestAsyncBrowsers:
637
648
  offset=0,
638
649
  query="query",
639
650
  status="active",
651
+ tags={"foo": "string"},
640
652
  )
641
653
  assert_matches_type(AsyncOffsetPagination[BrowserListResponse], browser, path=["response"])
642
654
 
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.62.0"
3
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes