kernel 0.74.0__tar.gz → 0.75.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 (351) hide show
  1. kernel-0.75.0/.release-please-manifest.json +3 -0
  2. {kernel-0.74.0 → kernel-0.75.0}/CHANGELOG.md +19 -0
  3. {kernel-0.74.0 → kernel-0.75.0}/PKG-INFO +1 -1
  4. {kernel-0.74.0 → kernel-0.75.0}/pyproject.toml +1 -1
  5. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_version.py +1 -1
  6. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/api_keys.py +8 -4
  7. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browser_pools.py +70 -32
  8. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/app_list_response.py +6 -1
  9. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool.py +33 -13
  10. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_create_params.py +17 -13
  11. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_release_params.py +4 -1
  12. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_update_params.py +24 -16
  13. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_create_response.py +6 -1
  14. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_follow_response.py +4 -1
  15. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_list_response.py +6 -1
  16. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_retrieve_response.py +6 -1
  17. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_state_event.py +6 -1
  18. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_get_response.py +9 -0
  19. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_list_response.py +9 -0
  20. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_upload_response.py +9 -0
  21. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_browser_pools.py +4 -0
  22. kernel-0.74.0/.release-please-manifest.json +0 -3
  23. {kernel-0.74.0 → kernel-0.75.0}/.gitignore +0 -0
  24. {kernel-0.74.0 → kernel-0.75.0}/CONTRIBUTING.md +0 -0
  25. {kernel-0.74.0 → kernel-0.75.0}/LICENSE +0 -0
  26. {kernel-0.74.0 → kernel-0.75.0}/README.md +0 -0
  27. {kernel-0.74.0 → kernel-0.75.0}/SECURITY.md +0 -0
  28. {kernel-0.74.0 → kernel-0.75.0}/api.md +0 -0
  29. {kernel-0.74.0 → kernel-0.75.0}/bin/check-release-environment +0 -0
  30. {kernel-0.74.0 → kernel-0.75.0}/bin/publish-pypi +0 -0
  31. {kernel-0.74.0 → kernel-0.75.0}/examples/.keep +0 -0
  32. {kernel-0.74.0 → kernel-0.75.0}/examples/browser_routing.py +0 -0
  33. {kernel-0.74.0 → kernel-0.75.0}/examples/browser_telemetry.py +0 -0
  34. {kernel-0.74.0 → kernel-0.75.0}/noxfile.py +0 -0
  35. {kernel-0.74.0 → kernel-0.75.0}/release-please-config.json +0 -0
  36. {kernel-0.74.0 → kernel-0.75.0}/requirements-dev.lock +0 -0
  37. {kernel-0.74.0 → kernel-0.75.0}/requirements.lock +0 -0
  38. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/__init__.py +0 -0
  39. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_base_client.py +0 -0
  40. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_client.py +0 -0
  41. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_compat.py +0 -0
  42. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_constants.py +0 -0
  43. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_exceptions.py +0 -0
  44. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_files.py +0 -0
  45. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_models.py +0 -0
  46. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_qs.py +0 -0
  47. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_resource.py +0 -0
  48. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_response.py +0 -0
  49. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_streaming.py +0 -0
  50. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_types.py +0 -0
  51. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/__init__.py +0 -0
  52. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_compat.py +0 -0
  53. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_datetime_parse.py +0 -0
  54. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_json.py +0 -0
  55. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_logs.py +0 -0
  56. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_path.py +0 -0
  57. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_proxy.py +0 -0
  58. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_reflection.py +0 -0
  59. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_resources_proxy.py +0 -0
  60. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_streams.py +0 -0
  61. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_sync.py +0 -0
  62. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_transform.py +0 -0
  63. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_typing.py +0 -0
  64. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/_utils/_utils.py +0 -0
  65. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/app_framework.py +0 -0
  66. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/lib/.keep +0 -0
  67. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
  68. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
  69. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/lib/browser_routing/routing.py +0 -0
  70. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/lib/browser_routing/util.py +0 -0
  71. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/pagination.py +0 -0
  72. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/py.typed +0 -0
  73. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/__init__.py +0 -0
  74. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/apps.py +0 -0
  75. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/audit_logs.py +0 -0
  76. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/auth/__init__.py +0 -0
  77. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/auth/auth.py +0 -0
  78. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/auth/connections.py +0 -0
  79. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/__init__.py +0 -0
  80. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/browsers.py +0 -0
  81. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/computer.py +0 -0
  82. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
  83. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
  84. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
  85. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/logs.py +0 -0
  86. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/playwright.py +0 -0
  87. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/process.py +0 -0
  88. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/replays.py +0 -0
  89. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/browsers/telemetry.py +0 -0
  90. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/credential_providers.py +0 -0
  91. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/credentials.py +0 -0
  92. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/deployments.py +0 -0
  93. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/extensions.py +0 -0
  94. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/invocations.py +0 -0
  95. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/organization/__init__.py +0 -0
  96. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/organization/limits.py +0 -0
  97. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/organization/organization.py +0 -0
  98. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/profiles.py +0 -0
  99. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/projects/__init__.py +0 -0
  100. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/projects/limits.py +0 -0
  101. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/projects/projects.py +0 -0
  102. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/resources/proxies.py +0 -0
  103. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/__init__.py +0 -0
  104. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key.py +0 -0
  105. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key_create_params.py +0 -0
  106. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key_list_params.py +0 -0
  107. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key_retrieve_params.py +0 -0
  108. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key_rotate_params.py +0 -0
  109. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/api_key_update_params.py +0 -0
  110. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/app_list_params.py +0 -0
  111. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/audit_log_entry.py +0 -0
  112. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/audit_log_export_chunk_params.py +0 -0
  113. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/audit_log_list_params.py +0 -0
  114. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/__init__.py +0 -0
  115. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_create_params.py +0 -0
  116. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
  117. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_list_params.py +0 -0
  118. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_login_params.py +0 -0
  119. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
  120. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_timeline_params.py +0 -0
  121. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/connection_update_params.py +0 -0
  122. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/login_response.py +0 -0
  123. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/managed_auth.py +0 -0
  124. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/managed_auth_timeline_event.py +0 -0
  125. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
  126. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_create_params.py +0 -0
  127. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_create_response.py +0 -0
  128. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_curl_params.py +0 -0
  129. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_curl_response.py +0 -0
  130. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_list_params.py +0 -0
  131. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_list_response.py +0 -0
  132. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
  133. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
  134. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_acquire_response.py +0 -0
  135. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
  136. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_list_params.py +0 -0
  137. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_pool_ref.py +0 -0
  138. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_retrieve_params.py +0 -0
  139. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_retrieve_response.py +0 -0
  140. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_update_params.py +0 -0
  141. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_update_response.py +0 -0
  142. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browser_usage.py +0 -0
  143. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/__init__.py +0 -0
  144. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
  145. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
  146. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
  147. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
  148. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
  149. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
  150. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
  151. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
  152. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
  153. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
  154. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
  155. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
  156. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
  157. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
  158. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
  159. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
  160. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
  161. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
  162. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
  163. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
  164. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
  165. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
  166. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
  167. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
  168. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
  169. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
  170. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
  171. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
  172. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
  173. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
  174. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
  175. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
  176. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
  177. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
  178. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
  179. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
  180. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
  181. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
  182. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
  183. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
  184. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
  185. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
  186. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
  187. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
  188. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
  189. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
  190. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
  191. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
  192. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
  193. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
  194. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
  195. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
  196. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
  197. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
  198. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
  199. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
  200. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
  201. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
  202. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
  203. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
  204. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
  205. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_move_params.py +0 -0
  206. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
  207. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
  208. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
  209. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
  210. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
  211. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
  212. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
  213. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
  214. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
  215. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
  216. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
  217. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
  218. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
  219. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
  220. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
  221. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
  222. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
  223. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
  224. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
  225. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
  226. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_status_response.py +0 -0
  227. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
  228. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
  229. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
  230. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
  231. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
  232. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
  233. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/telemetry_events_params.py +0 -0
  234. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/telemetry_events_response.py +0 -0
  235. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/telemetry_stream_params.py +0 -0
  236. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
  237. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/created_api_key.py +0 -0
  238. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential.py +0 -0
  239. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_create_params.py +0 -0
  240. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_list_params.py +0 -0
  241. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider.py +0 -0
  242. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_create_params.py +0 -0
  243. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_item.py +0 -0
  244. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
  245. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_list_params.py +0 -0
  246. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_test_result.py +0 -0
  247. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_provider_update_params.py +0 -0
  248. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_totp_code_response.py +0 -0
  249. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/credential_update_params.py +0 -0
  250. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_create_params.py +0 -0
  251. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_follow_params.py +0 -0
  252. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/deployment_list_params.py +0 -0
  253. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
  254. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_list_params.py +0 -0
  255. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/extension_upload_params.py +0 -0
  256. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_create_params.py +0 -0
  257. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_create_response.py +0 -0
  258. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_follow_params.py +0 -0
  259. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_follow_response.py +0 -0
  260. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_list_browsers_response.py +0 -0
  261. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_list_params.py +0 -0
  262. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_list_response.py +0 -0
  263. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
  264. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_state_event.py +0 -0
  265. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_update_params.py +0 -0
  266. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/invocation_update_response.py +0 -0
  267. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/organization/__init__.py +0 -0
  268. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/organization/limit_update_params.py +0 -0
  269. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/organization/org_limits.py +0 -0
  270. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/profile.py +0 -0
  271. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/profile_create_params.py +0 -0
  272. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/profile_list_params.py +0 -0
  273. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/project.py +0 -0
  274. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/project_create_params.py +0 -0
  275. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/project_list_params.py +0 -0
  276. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/project_update_params.py +0 -0
  277. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/projects/__init__.py +0 -0
  278. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/projects/limit_update_params.py +0 -0
  279. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/projects/project_limits.py +0 -0
  280. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_check_params.py +0 -0
  281. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_check_response.py +0 -0
  282. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_create_params.py +0 -0
  283. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_create_response.py +0 -0
  284. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_list_params.py +0 -0
  285. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_list_response.py +0 -0
  286. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
  287. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/__init__.py +0 -0
  288. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/app_action.py +0 -0
  289. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/browser_extension.py +0 -0
  290. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/browser_profile.py +0 -0
  291. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/browser_viewport.py +0 -0
  292. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/error_detail.py +0 -0
  293. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/error_event.py +0 -0
  294. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/error_model.py +0 -0
  295. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
  296. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared/log_event.py +0 -0
  297. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared_params/__init__.py +0 -0
  298. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
  299. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
  300. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
  301. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/tags.py +0 -0
  302. {kernel-0.74.0 → kernel-0.75.0}/src/kernel/types/tags_param.py +0 -0
  303. {kernel-0.74.0 → kernel-0.75.0}/tests/__init__.py +0 -0
  304. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/__init__.py +0 -0
  305. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/auth/__init__.py +0 -0
  306. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/auth/test_connections.py +0 -0
  307. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/__init__.py +0 -0
  308. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
  309. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
  310. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_computer.py +0 -0
  311. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_fs.py +0 -0
  312. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_logs.py +0 -0
  313. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_playwright.py +0 -0
  314. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_process.py +0 -0
  315. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_replays.py +0 -0
  316. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
  317. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/organization/__init__.py +0 -0
  318. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/organization/test_limits.py +0 -0
  319. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/projects/__init__.py +0 -0
  320. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/projects/test_limits.py +0 -0
  321. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_api_keys.py +0 -0
  322. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_apps.py +0 -0
  323. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_audit_logs.py +0 -0
  324. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_browsers.py +0 -0
  325. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_credential_providers.py +0 -0
  326. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_credentials.py +0 -0
  327. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_deployments.py +0 -0
  328. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_extensions.py +0 -0
  329. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_invocations.py +0 -0
  330. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_profiles.py +0 -0
  331. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_projects.py +0 -0
  332. {kernel-0.74.0 → kernel-0.75.0}/tests/api_resources/test_proxies.py +0 -0
  333. {kernel-0.74.0 → kernel-0.75.0}/tests/conftest.py +0 -0
  334. {kernel-0.74.0 → kernel-0.75.0}/tests/sample_file.txt +0 -0
  335. {kernel-0.74.0 → kernel-0.75.0}/tests/test_browser_routing.py +0 -0
  336. {kernel-0.74.0 → kernel-0.75.0}/tests/test_client.py +0 -0
  337. {kernel-0.74.0 → kernel-0.75.0}/tests/test_extract_files.py +0 -0
  338. {kernel-0.74.0 → kernel-0.75.0}/tests/test_files.py +0 -0
  339. {kernel-0.74.0 → kernel-0.75.0}/tests/test_models.py +0 -0
  340. {kernel-0.74.0 → kernel-0.75.0}/tests/test_pagination.py +0 -0
  341. {kernel-0.74.0 → kernel-0.75.0}/tests/test_qs.py +0 -0
  342. {kernel-0.74.0 → kernel-0.75.0}/tests/test_required_args.py +0 -0
  343. {kernel-0.74.0 → kernel-0.75.0}/tests/test_response.py +0 -0
  344. {kernel-0.74.0 → kernel-0.75.0}/tests/test_streaming.py +0 -0
  345. {kernel-0.74.0 → kernel-0.75.0}/tests/test_transform.py +0 -0
  346. {kernel-0.74.0 → kernel-0.75.0}/tests/test_utils/test_datetime_parse.py +0 -0
  347. {kernel-0.74.0 → kernel-0.75.0}/tests/test_utils/test_json.py +0 -0
  348. {kernel-0.74.0 → kernel-0.75.0}/tests/test_utils/test_path.py +0 -0
  349. {kernel-0.74.0 → kernel-0.75.0}/tests/test_utils/test_proxy.py +0 -0
  350. {kernel-0.74.0 → kernel-0.75.0}/tests/test_utils/test_typing.py +0 -0
  351. {kernel-0.74.0 → kernel-0.75.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.75.0"
3
+ }
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.75.0 (2026-07-08)
4
+
5
+ Full Changelog: [v0.74.0...v0.75.0](https://github.com/kernel/kernel-python-sdk/compare/v0.74.0...v0.75.0)
6
+
7
+ ### Features
8
+
9
+ * Auto-flush pools when a managed auth profile re-authenticates ([430c07f](https://github.com/kernel/kernel-python-sdk/commit/430c07fc2bfd5ab80fe25cc4677b34729bf4b4ee))
10
+ * Document env var redaction on deployment and app reads ([51d713b](https://github.com/kernel/kernel-python-sdk/commit/51d713b92b4c0ed0c2420ea2e128568530a81a14))
11
+ * Expose resolved profile_id and extension_ids on browser pool reads ([56876e9](https://github.com/kernel/kernel-python-sdk/commit/56876e9a49fca34ec34b58ea8f5f85130c0c0315))
12
+ * Reject API key self-deletion ([482f920](https://github.com/kernel/kernel-python-sdk/commit/482f9209f956e5615bdbaa6ec9c58081df56587b))
13
+ * Revert "Store and return a sha256 checksum for uploaded extensions (#… ([74dbc54](https://github.com/kernel/kernel-python-sdk/commit/74dbc54d4d8d5b330f74985227fa09f7569457a7))
14
+ * Store and return a sha256 checksum for uploaded extensions ([b266775](https://github.com/kernel/kernel-python-sdk/commit/b266775497fec10224e965c787c146494eecdae8))
15
+ * Store and return a sha256 checksum for uploaded extensions (reland) ([98cfb28](https://github.com/kernel/kernel-python-sdk/commit/98cfb2835be3d321799bbfd0400e1bb59b39b218))
16
+
17
+
18
+ ### Documentation
19
+
20
+ * **api:** clarify reuse/discard_all_idle pool config staleness ([e8641eb](https://github.com/kernel/kernel-python-sdk/commit/e8641ebe96926b22f8874a8ff79498a4cbe7e4ed))
21
+
3
22
  ## 0.74.0 (2026-07-06)
4
23
 
5
24
  Full Changelog: [v0.73.0...v0.74.0](https://github.com/kernel/kernel-python-sdk/compare/v0.73.0...v0.74.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: kernel
3
- Version: 0.74.0
3
+ Version: 0.75.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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "kernel"
3
- version = "0.74.0"
3
+ version = "0.75.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.74.0" # x-release-please-version
4
+ __version__ = "0.75.0" # x-release-please-version
@@ -266,8 +266,10 @@ class APIKeysResource(SyncAPIResource):
266
266
  extra_body: Body | None = None,
267
267
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
268
268
  ) -> None:
269
- """
270
- Delete an API key.
269
+ """Delete an API key.
270
+
271
+ A key cannot delete itself; use a different key to delete
272
+ this one.
271
273
 
272
274
  Args:
273
275
  extra_headers: Send extra headers
@@ -575,8 +577,10 @@ class AsyncAPIKeysResource(AsyncAPIResource):
575
577
  extra_body: Body | None = None,
576
578
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
577
579
  ) -> None:
578
- """
579
- Delete an API key.
580
+ """Delete an API key.
581
+
582
+ A key cannot delete itself; use a different key to delete
583
+ this one.
580
584
 
581
585
  Args:
582
586
  extra_headers: Send extra headers
@@ -69,6 +69,7 @@ class BrowserPoolsResource(SyncAPIResource):
69
69
  name: str | Omit = omit,
70
70
  profile: browser_pool_create_params.Profile | Omit = omit,
71
71
  proxy_id: str | Omit = omit,
72
+ refresh_on_profile_update: bool | Omit = omit,
72
73
  start_url: str | Omit = omit,
73
74
  stealth: bool | Omit = omit,
74
75
  timeout_seconds: int | Omit = omit,
@@ -110,16 +111,19 @@ class BrowserPoolsResource(SyncAPIResource):
110
111
 
111
112
  name: Optional name for the browser pool. Must be unique within the project.
112
113
 
113
- profile: Profile selection for browsers in a pool. Provide either id or name. The
114
- matching profile is loaded into every browser in the pool. Profiles must be
115
- created beforehand. Unlike single browser sessions, pools load the profile
116
- read-only and never persist changes back to it, so save_changes is omitted here.
117
- Any save_changes value sent on a pool profile is silently ignored rather than
118
- rejected, so callers reusing a single-session profile object will not error.
114
+ profile: Profile configuration for browsers in a pool. Provide either id or name.
115
+ Profiles must be created beforehand. Unlike single browser sessions, pools load
116
+ the profile read-only and never persist changes back to it, so save_changes is
117
+ omitted here. Any save_changes value sent on a pool profile is silently ignored
118
+ rather than rejected.
119
119
 
120
120
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
121
121
  the same project as the browser session.
122
122
 
123
+ refresh_on_profile_update: When true, flush idle browsers when the profile the pool uses is updated, so
124
+ pool browsers pick up the latest profile data. Requires a profile to be set on
125
+ the pool.
126
+
123
127
  start_url: Optional URL to navigate to when a new browser is warmed into the pool.
124
128
  Best-effort: failures to navigate do not fail pool fill. Only applied to
125
129
  newly-warmed browsers; browsers reused via release/acquire keep whatever URL the
@@ -166,6 +170,7 @@ class BrowserPoolsResource(SyncAPIResource):
166
170
  "name": name,
167
171
  "profile": profile,
168
172
  "proxy_id": proxy_id,
173
+ "refresh_on_profile_update": refresh_on_profile_update,
169
174
  "start_url": start_url,
170
175
  "stealth": stealth,
171
176
  "timeout_seconds": timeout_seconds,
@@ -225,6 +230,7 @@ class BrowserPoolsResource(SyncAPIResource):
225
230
  name: str | Omit = omit,
226
231
  profile: browser_pool_update_params.Profile | Omit = omit,
227
232
  proxy_id: str | Omit = omit,
233
+ refresh_on_profile_update: bool | Omit = omit,
228
234
  size: int | Omit = omit,
229
235
  start_url: str | Omit = omit,
230
236
  stealth: bool | Omit = omit,
@@ -241,7 +247,9 @@ class BrowserPoolsResource(SyncAPIResource):
241
247
 
242
248
  As with creation,
243
249
  save_changes on the pool profile is ignored (not rejected); pooled browsers
244
- never persist changes back to the profile.
250
+ never persist changes back to the profile. To clear the profile reference, send
251
+ `profile: { "id": "" }`. Clearing the profile also disables
252
+ `refresh_on_profile_update`.
245
253
 
246
254
  Args:
247
255
  chrome_policy: Custom Chrome enterprise policy overrides applied to all browsers in this pool.
@@ -249,8 +257,12 @@ class BrowserPoolsResource(SyncAPIResource):
249
257
  Blocked: kernel-managed policies (extensions, proxy, CDP/automation). See
250
258
  https://chromeenterprise.google/policies/
251
259
 
252
- discard_all_idle: Whether to discard all idle browsers and rebuild the pool immediately. Defaults
253
- to false.
260
+ discard_all_idle: Whether to discard all idle browsers and rebuild them immediately with the new
261
+ configuration. Defaults to false. Only browsers that are idle when the update
262
+ runs are rebuilt. A browser that is in use during the update keeps its original
263
+ configuration, and if it is later released with `reuse: true` it returns to the
264
+ pool with that stale configuration until it is discarded (by this flag on a
265
+ later update, or by flushing the pool).
254
266
 
255
267
  extensions: List of browser extensions to load into the session. Provide each by id or name.
256
268
 
@@ -265,16 +277,19 @@ class BrowserPoolsResource(SyncAPIResource):
265
277
 
266
278
  name: Optional name for the browser pool. Must be unique within the project.
267
279
 
268
- profile: Profile selection for browsers in a pool. Provide either id or name. The
269
- matching profile is loaded into every browser in the pool. Profiles must be
270
- created beforehand. Unlike single browser sessions, pools load the profile
271
- read-only and never persist changes back to it, so save_changes is omitted here.
272
- Any save_changes value sent on a pool profile is silently ignored rather than
273
- rejected, so callers reusing a single-session profile object will not error.
280
+ profile: Profile configuration for browsers in a pool. Provide either id or name.
281
+ Profiles must be created beforehand. Unlike single browser sessions, pools load
282
+ the profile read-only and never persist changes back to it, so save_changes is
283
+ omitted here. Any save_changes value sent on a pool profile is silently ignored
284
+ rather than rejected.
274
285
 
275
286
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
276
287
  the same project as the browser session.
277
288
 
289
+ refresh_on_profile_update: When true, flush idle browsers when the profile the pool uses is updated, so
290
+ pool browsers pick up the latest profile data. Requires a profile to be set on
291
+ the pool.
292
+
278
293
  size: Number of browsers to maintain in the pool. The maximum size is determined by
279
294
  your organization's pooled sessions limit (the sum of all pool sizes cannot
280
295
  exceed your limit).
@@ -327,6 +342,7 @@ class BrowserPoolsResource(SyncAPIResource):
327
342
  "name": name,
328
343
  "profile": profile,
329
344
  "proxy_id": proxy_id,
345
+ "refresh_on_profile_update": refresh_on_profile_update,
330
346
  "size": size,
331
347
  "start_url": start_url,
332
348
  "stealth": stealth,
@@ -554,7 +570,10 @@ class BrowserPoolsResource(SyncAPIResource):
554
570
  session_id: Browser session ID to release back to the pool
555
571
 
556
572
  reuse: Whether to reuse the browser instance or destroy it and create a new one.
557
- Defaults to true.
573
+ Defaults to true. A reused browser keeps the configuration it was created with,
574
+ so it does not pick up pool configuration changes made while it was in use.
575
+ Release with `reuse: false`, or flush the pool afterward, to rebuild it with the
576
+ current configuration.
558
577
 
559
578
  extra_headers: Send extra headers
560
579
 
@@ -617,6 +636,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
617
636
  name: str | Omit = omit,
618
637
  profile: browser_pool_create_params.Profile | Omit = omit,
619
638
  proxy_id: str | Omit = omit,
639
+ refresh_on_profile_update: bool | Omit = omit,
620
640
  start_url: str | Omit = omit,
621
641
  stealth: bool | Omit = omit,
622
642
  timeout_seconds: int | Omit = omit,
@@ -658,16 +678,19 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
658
678
 
659
679
  name: Optional name for the browser pool. Must be unique within the project.
660
680
 
661
- profile: Profile selection for browsers in a pool. Provide either id or name. The
662
- matching profile is loaded into every browser in the pool. Profiles must be
663
- created beforehand. Unlike single browser sessions, pools load the profile
664
- read-only and never persist changes back to it, so save_changes is omitted here.
665
- Any save_changes value sent on a pool profile is silently ignored rather than
666
- rejected, so callers reusing a single-session profile object will not error.
681
+ profile: Profile configuration for browsers in a pool. Provide either id or name.
682
+ Profiles must be created beforehand. Unlike single browser sessions, pools load
683
+ the profile read-only and never persist changes back to it, so save_changes is
684
+ omitted here. Any save_changes value sent on a pool profile is silently ignored
685
+ rather than rejected.
667
686
 
668
687
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
669
688
  the same project as the browser session.
670
689
 
690
+ refresh_on_profile_update: When true, flush idle browsers when the profile the pool uses is updated, so
691
+ pool browsers pick up the latest profile data. Requires a profile to be set on
692
+ the pool.
693
+
671
694
  start_url: Optional URL to navigate to when a new browser is warmed into the pool.
672
695
  Best-effort: failures to navigate do not fail pool fill. Only applied to
673
696
  newly-warmed browsers; browsers reused via release/acquire keep whatever URL the
@@ -714,6 +737,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
714
737
  "name": name,
715
738
  "profile": profile,
716
739
  "proxy_id": proxy_id,
740
+ "refresh_on_profile_update": refresh_on_profile_update,
717
741
  "start_url": start_url,
718
742
  "stealth": stealth,
719
743
  "timeout_seconds": timeout_seconds,
@@ -773,6 +797,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
773
797
  name: str | Omit = omit,
774
798
  profile: browser_pool_update_params.Profile | Omit = omit,
775
799
  proxy_id: str | Omit = omit,
800
+ refresh_on_profile_update: bool | Omit = omit,
776
801
  size: int | Omit = omit,
777
802
  start_url: str | Omit = omit,
778
803
  stealth: bool | Omit = omit,
@@ -789,7 +814,9 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
789
814
 
790
815
  As with creation,
791
816
  save_changes on the pool profile is ignored (not rejected); pooled browsers
792
- never persist changes back to the profile.
817
+ never persist changes back to the profile. To clear the profile reference, send
818
+ `profile: { "id": "" }`. Clearing the profile also disables
819
+ `refresh_on_profile_update`.
793
820
 
794
821
  Args:
795
822
  chrome_policy: Custom Chrome enterprise policy overrides applied to all browsers in this pool.
@@ -797,8 +824,12 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
797
824
  Blocked: kernel-managed policies (extensions, proxy, CDP/automation). See
798
825
  https://chromeenterprise.google/policies/
799
826
 
800
- discard_all_idle: Whether to discard all idle browsers and rebuild the pool immediately. Defaults
801
- to false.
827
+ discard_all_idle: Whether to discard all idle browsers and rebuild them immediately with the new
828
+ configuration. Defaults to false. Only browsers that are idle when the update
829
+ runs are rebuilt. A browser that is in use during the update keeps its original
830
+ configuration, and if it is later released with `reuse: true` it returns to the
831
+ pool with that stale configuration until it is discarded (by this flag on a
832
+ later update, or by flushing the pool).
802
833
 
803
834
  extensions: List of browser extensions to load into the session. Provide each by id or name.
804
835
 
@@ -813,16 +844,19 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
813
844
 
814
845
  name: Optional name for the browser pool. Must be unique within the project.
815
846
 
816
- profile: Profile selection for browsers in a pool. Provide either id or name. The
817
- matching profile is loaded into every browser in the pool. Profiles must be
818
- created beforehand. Unlike single browser sessions, pools load the profile
819
- read-only and never persist changes back to it, so save_changes is omitted here.
820
- Any save_changes value sent on a pool profile is silently ignored rather than
821
- rejected, so callers reusing a single-session profile object will not error.
847
+ profile: Profile configuration for browsers in a pool. Provide either id or name.
848
+ Profiles must be created beforehand. Unlike single browser sessions, pools load
849
+ the profile read-only and never persist changes back to it, so save_changes is
850
+ omitted here. Any save_changes value sent on a pool profile is silently ignored
851
+ rather than rejected.
822
852
 
823
853
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
824
854
  the same project as the browser session.
825
855
 
856
+ refresh_on_profile_update: When true, flush idle browsers when the profile the pool uses is updated, so
857
+ pool browsers pick up the latest profile data. Requires a profile to be set on
858
+ the pool.
859
+
826
860
  size: Number of browsers to maintain in the pool. The maximum size is determined by
827
861
  your organization's pooled sessions limit (the sum of all pool sizes cannot
828
862
  exceed your limit).
@@ -875,6 +909,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
875
909
  "name": name,
876
910
  "profile": profile,
877
911
  "proxy_id": proxy_id,
912
+ "refresh_on_profile_update": refresh_on_profile_update,
878
913
  "size": size,
879
914
  "start_url": start_url,
880
915
  "stealth": stealth,
@@ -1102,7 +1137,10 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
1102
1137
  session_id: Browser session ID to release back to the pool
1103
1138
 
1104
1139
  reuse: Whether to reuse the browser instance or destroy it and create a new one.
1105
- Defaults to true.
1140
+ Defaults to true. A reused browser keeps the configuration it was created with,
1141
+ so it does not pick up pool configuration changes made while it was in use.
1142
+ Release with `reuse: false`, or flush the pool afterward, to rebuild it with the
1143
+ current configuration.
1106
1144
 
1107
1145
  extra_headers: Send extra headers
1108
1146
 
@@ -25,7 +25,12 @@ class AppListResponse(BaseModel):
25
25
  """Deployment ID"""
26
26
 
27
27
  env_vars: Dict[str, str]
28
- """Environment variables configured for this app version"""
28
+ """Environment variables configured for this app version.
29
+
30
+ Values are redacted for API key, OAuth, and managed-auth callers, which receive
31
+ every key with an empty string value. Only dashboard sessions receive the actual
32
+ values.
33
+ """
29
34
 
30
35
  region: Literal["aws.us-east-1a"]
31
36
  """Deployment region code"""
@@ -11,13 +11,12 @@ __all__ = ["BrowserPool", "BrowserPoolConfig", "BrowserPoolConfigProfile"]
11
11
 
12
12
 
13
13
  class BrowserPoolConfigProfile(BaseModel):
14
- """Profile selection for browsers in a pool.
14
+ """Profile configuration for browsers in a pool.
15
15
 
16
- Provide either id or name. The matching profile is
17
- loaded into every browser in the pool. Profiles must be created beforehand. Unlike single
18
- browser sessions, pools load the profile read-only and never persist changes back to it, so
19
- save_changes is omitted here. Any save_changes value sent on a pool profile is silently
20
- ignored rather than rejected, so callers reusing a single-session profile object will not error.
16
+ Provide either id or name. Profiles must
17
+ be created beforehand. Unlike single browser sessions, pools load the profile read-only
18
+ and never persist changes back to it, so save_changes is omitted here. Any save_changes
19
+ value sent on a pool profile is silently ignored rather than rejected.
21
20
  """
22
21
 
23
22
  id: Optional[str] = None
@@ -74,14 +73,12 @@ class BrowserPoolConfig(BaseModel):
74
73
  """Optional name for the browser pool. Must be unique within the project."""
75
74
 
76
75
  profile: Optional[BrowserPoolConfigProfile] = None
77
- """Profile selection for browsers in a pool.
76
+ """Profile configuration for browsers in a pool.
78
77
 
79
- Provide either id or name. The matching profile is loaded into every browser in
80
- the pool. Profiles must be created beforehand. Unlike single browser sessions,
81
- pools load the profile read-only and never persist changes back to it, so
82
- save_changes is omitted here. Any save_changes value sent on a pool profile is
83
- silently ignored rather than rejected, so callers reusing a single-session
84
- profile object will not error.
78
+ Provide either id or name. Profiles must be created beforehand. Unlike single
79
+ browser sessions, pools load the profile read-only and never persist changes
80
+ back to it, so save_changes is omitted here. Any save_changes value sent on a
81
+ pool profile is silently ignored rather than rejected.
85
82
  """
86
83
 
87
84
  proxy_id: Optional[str] = None
@@ -90,6 +87,13 @@ class BrowserPoolConfig(BaseModel):
90
87
  Must reference a proxy in the same project as the browser session.
91
88
  """
92
89
 
90
+ refresh_on_profile_update: Optional[bool] = None
91
+ """
92
+ When true, flush idle browsers when the profile the pool uses is updated, so
93
+ pool browsers pick up the latest profile data. Requires a profile to be set on
94
+ the pool.
95
+ """
96
+
93
97
  start_url: Optional[str] = None
94
98
  """Optional URL to navigate to when a new browser is warmed into the pool.
95
99
 
@@ -146,5 +150,21 @@ class BrowserPool(BaseModel):
146
150
  created_at: datetime
147
151
  """Timestamp when the browser pool was created"""
148
152
 
153
+ extension_ids: List[str]
154
+ """Resolved extension IDs attached to the pool, in configured load order.
155
+
156
+ Empty when no extensions are attached. Authoritative for programmatic consumers;
157
+ the extensions inside `browser_pool_config` reflect the configured selector
158
+ (echoed as sent on create).
159
+ """
160
+
149
161
  name: Optional[str] = None
150
162
  """Browser pool name, if set"""
163
+
164
+ profile_id: Optional[str] = None
165
+ """Resolved profile ID the pool is attached to.
166
+
167
+ Omitted when no profile is attached. Authoritative for programmatic consumers;
168
+ the profile inside `browser_pool_config` reflects the configured selector
169
+ (echoed as sent on create).
170
+ """
@@ -53,14 +53,12 @@ class BrowserPoolCreateParams(TypedDict, total=False):
53
53
  """Optional name for the browser pool. Must be unique within the project."""
54
54
 
55
55
  profile: Profile
56
- """Profile selection for browsers in a pool.
56
+ """Profile configuration for browsers in a pool.
57
57
 
58
- Provide either id or name. The matching profile is loaded into every browser in
59
- the pool. Profiles must be created beforehand. Unlike single browser sessions,
60
- pools load the profile read-only and never persist changes back to it, so
61
- save_changes is omitted here. Any save_changes value sent on a pool profile is
62
- silently ignored rather than rejected, so callers reusing a single-session
63
- profile object will not error.
58
+ Provide either id or name. Profiles must be created beforehand. Unlike single
59
+ browser sessions, pools load the profile read-only and never persist changes
60
+ back to it, so save_changes is omitted here. Any save_changes value sent on a
61
+ pool profile is silently ignored rather than rejected.
64
62
  """
65
63
 
66
64
  proxy_id: str
@@ -69,6 +67,13 @@ class BrowserPoolCreateParams(TypedDict, total=False):
69
67
  Must reference a proxy in the same project as the browser session.
70
68
  """
71
69
 
70
+ refresh_on_profile_update: bool
71
+ """
72
+ When true, flush idle browsers when the profile the pool uses is updated, so
73
+ pool browsers pick up the latest profile data. Requires a profile to be set on
74
+ the pool.
75
+ """
76
+
72
77
  start_url: str
73
78
  """Optional URL to navigate to when a new browser is warmed into the pool.
74
79
 
@@ -108,13 +113,12 @@ class BrowserPoolCreateParams(TypedDict, total=False):
108
113
 
109
114
 
110
115
  class Profile(TypedDict, total=False):
111
- """Profile selection for browsers in a pool.
116
+ """Profile configuration for browsers in a pool.
112
117
 
113
- Provide either id or name. The matching profile is
114
- loaded into every browser in the pool. Profiles must be created beforehand. Unlike single
115
- browser sessions, pools load the profile read-only and never persist changes back to it, so
116
- save_changes is omitted here. Any save_changes value sent on a pool profile is silently
117
- ignored rather than rejected, so callers reusing a single-session profile object will not error.
118
+ Provide either id or name. Profiles must
119
+ be created beforehand. Unlike single browser sessions, pools load the profile read-only
120
+ and never persist changes back to it, so save_changes is omitted here. Any save_changes
121
+ value sent on a pool profile is silently ignored rather than rejected.
118
122
  """
119
123
 
120
124
  id: str
@@ -14,5 +14,8 @@ class BrowserPoolReleaseParams(TypedDict, total=False):
14
14
  reuse: bool
15
15
  """Whether to reuse the browser instance or destroy it and create a new one.
16
16
 
17
- Defaults to true.
17
+ Defaults to true. A reused browser keeps the configuration it was created with,
18
+ so it does not pick up pool configuration changes made while it was in use.
19
+ Release with `reuse: false`, or flush the pool afterward, to rebuild it with the
20
+ current configuration.
18
21
  """
@@ -21,9 +21,13 @@ class BrowserPoolUpdateParams(TypedDict, total=False):
21
21
  """
22
22
 
23
23
  discard_all_idle: bool
24
- """Whether to discard all idle browsers and rebuild the pool immediately.
25
-
26
- Defaults to false.
24
+ """
25
+ Whether to discard all idle browsers and rebuild them immediately with the new
26
+ configuration. Defaults to false. Only browsers that are idle when the update
27
+ runs are rebuilt. A browser that is in use during the update keeps its original
28
+ configuration, and if it is later released with `reuse: true` it returns to the
29
+ pool with that stale configuration until it is discarded (by this flag on a
30
+ later update, or by flushing the pool).
27
31
  """
28
32
 
29
33
  extensions: Iterable[BrowserExtension]
@@ -52,14 +56,12 @@ class BrowserPoolUpdateParams(TypedDict, total=False):
52
56
  """Optional name for the browser pool. Must be unique within the project."""
53
57
 
54
58
  profile: Profile
55
- """Profile selection for browsers in a pool.
59
+ """Profile configuration for browsers in a pool.
56
60
 
57
- Provide either id or name. The matching profile is loaded into every browser in
58
- the pool. Profiles must be created beforehand. Unlike single browser sessions,
59
- pools load the profile read-only and never persist changes back to it, so
60
- save_changes is omitted here. Any save_changes value sent on a pool profile is
61
- silently ignored rather than rejected, so callers reusing a single-session
62
- profile object will not error.
61
+ Provide either id or name. Profiles must be created beforehand. Unlike single
62
+ browser sessions, pools load the profile read-only and never persist changes
63
+ back to it, so save_changes is omitted here. Any save_changes value sent on a
64
+ pool profile is silently ignored rather than rejected.
63
65
  """
64
66
 
65
67
  proxy_id: str
@@ -68,6 +70,13 @@ class BrowserPoolUpdateParams(TypedDict, total=False):
68
70
  Must reference a proxy in the same project as the browser session.
69
71
  """
70
72
 
73
+ refresh_on_profile_update: bool
74
+ """
75
+ When true, flush idle browsers when the profile the pool uses is updated, so
76
+ pool browsers pick up the latest profile data. Requires a profile to be set on
77
+ the pool.
78
+ """
79
+
71
80
  size: int
72
81
  """Number of browsers to maintain in the pool.
73
82
 
@@ -114,13 +123,12 @@ class BrowserPoolUpdateParams(TypedDict, total=False):
114
123
 
115
124
 
116
125
  class Profile(TypedDict, total=False):
117
- """Profile selection for browsers in a pool.
126
+ """Profile configuration for browsers in a pool.
118
127
 
119
- Provide either id or name. The matching profile is
120
- loaded into every browser in the pool. Profiles must be created beforehand. Unlike single
121
- browser sessions, pools load the profile read-only and never persist changes back to it, so
122
- save_changes is omitted here. Any save_changes value sent on a pool profile is silently
123
- ignored rather than rejected, so callers reusing a single-session profile object will not error.
128
+ Provide either id or name. Profiles must
129
+ be created beforehand. Unlike single browser sessions, pools load the profile read-only
130
+ and never persist changes back to it, so save_changes is omitted here. Any save_changes
131
+ value sent on a pool profile is silently ignored rather than rejected.
124
132
  """
125
133
 
126
134
  id: str
@@ -28,7 +28,12 @@ class DeploymentCreateResponse(BaseModel):
28
28
  """Relative path to the application entrypoint"""
29
29
 
30
30
  env_vars: Optional[Dict[str, str]] = None
31
- """Environment variables configured for this deployment"""
31
+ """Environment variables configured for this deployment.
32
+
33
+ Values are redacted for API key, OAuth, and managed-auth callers, which receive
34
+ every key with an empty string value. Only dashboard sessions receive the actual
35
+ values.
36
+ """
32
37
 
33
38
  status_reason: Optional[str] = None
34
39
  """Status reason"""
@@ -40,7 +40,10 @@ class AppVersionSummaryEvent(BaseModel):
40
40
  """Version label for the application"""
41
41
 
42
42
  env_vars: Optional[Dict[str, str]] = None
43
- """Environment variables configured for this app version"""
43
+ """Environment variables configured for this app version.
44
+
45
+ Not currently populated on streamed app_version_summary events.
46
+ """
44
47
 
45
48
 
46
49
  DeploymentFollowResponse: TypeAlias = Annotated[
@@ -28,7 +28,12 @@ class DeploymentListResponse(BaseModel):
28
28
  """Relative path to the application entrypoint"""
29
29
 
30
30
  env_vars: Optional[Dict[str, str]] = None
31
- """Environment variables configured for this deployment"""
31
+ """Environment variables configured for this deployment.
32
+
33
+ Values are redacted for API key, OAuth, and managed-auth callers, which receive
34
+ every key with an empty string value. Only dashboard sessions receive the actual
35
+ values.
36
+ """
32
37
 
33
38
  status_reason: Optional[str] = None
34
39
  """Status reason"""
@@ -28,7 +28,12 @@ class DeploymentRetrieveResponse(BaseModel):
28
28
  """Relative path to the application entrypoint"""
29
29
 
30
30
  env_vars: Optional[Dict[str, str]] = None
31
- """Environment variables configured for this deployment"""
31
+ """Environment variables configured for this deployment.
32
+
33
+ Values are redacted for API key, OAuth, and managed-auth callers, which receive
34
+ every key with an empty string value. Only dashboard sessions receive the actual
35
+ values.
36
+ """
32
37
 
33
38
  status_reason: Optional[str] = None
34
39
  """Status reason"""
@@ -28,7 +28,12 @@ class Deployment(BaseModel):
28
28
  """Relative path to the application entrypoint"""
29
29
 
30
30
  env_vars: Optional[Dict[str, str]] = None
31
- """Environment variables configured for this deployment"""
31
+ """Environment variables configured for this deployment.
32
+
33
+ Values are redacted for API key, OAuth, and managed-auth callers, which receive
34
+ every key with an empty string value. Only dashboard sessions receive the actual
35
+ values.
36
+ """
32
37
 
33
38
  status_reason: Optional[str] = None
34
39
  """Status reason"""
@@ -20,6 +20,15 @@ class ExtensionGetResponse(BaseModel):
20
20
  size_bytes: int
21
21
  """Size of the extension archive in bytes"""
22
22
 
23
+ checksum: Optional[str] = None
24
+ """
25
+ SHA-256 checksum, encoded as lowercase hexadecimal, of the exact uploaded
26
+ extension archive bytes. This is not a normalized checksum of the extension
27
+ contents; archive metadata, file ordering, and compression can change the
28
+ checksum for otherwise identical contents. Omitted for legacy rows and
29
+ server-repackaged Chrome Web Store extensions.
30
+ """
31
+
23
32
  last_used_at: Optional[datetime] = None
24
33
  """Timestamp when the extension was last used"""
25
34