kernel 0.74.0__tar.gz → 0.76.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.76.0/.release-please-manifest.json +3 -0
  2. {kernel-0.74.0 → kernel-0.76.0}/CHANGELOG.md +28 -0
  3. {kernel-0.74.0 → kernel-0.76.0}/PKG-INFO +1 -1
  4. {kernel-0.74.0 → kernel-0.76.0}/pyproject.toml +1 -1
  5. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_version.py +1 -1
  6. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/api_keys.py +8 -4
  7. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browser_pools.py +70 -32
  8. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/credentials.py +11 -1
  9. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/app_list_response.py +6 -1
  10. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_create_params.py +17 -7
  11. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool.py +33 -13
  12. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_create_params.py +17 -13
  13. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_release_params.py +4 -1
  14. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_update_params.py +24 -16
  15. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_update_params.py +17 -7
  16. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +2 -2
  17. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +2 -2
  18. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +3 -1
  19. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +3 -1
  20. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential.py +8 -1
  21. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_update_params.py +9 -0
  22. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_create_response.py +6 -1
  23. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_follow_response.py +4 -1
  24. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_list_response.py +6 -1
  25. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_retrieve_response.py +6 -1
  26. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_state_event.py +6 -1
  27. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_get_response.py +9 -0
  28. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_list_response.py +9 -0
  29. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_upload_response.py +9 -0
  30. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_browser_pools.py +4 -0
  31. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_credentials.py +2 -0
  32. kernel-0.74.0/.release-please-manifest.json +0 -3
  33. {kernel-0.74.0 → kernel-0.76.0}/.gitignore +0 -0
  34. {kernel-0.74.0 → kernel-0.76.0}/CONTRIBUTING.md +0 -0
  35. {kernel-0.74.0 → kernel-0.76.0}/LICENSE +0 -0
  36. {kernel-0.74.0 → kernel-0.76.0}/README.md +0 -0
  37. {kernel-0.74.0 → kernel-0.76.0}/SECURITY.md +0 -0
  38. {kernel-0.74.0 → kernel-0.76.0}/api.md +0 -0
  39. {kernel-0.74.0 → kernel-0.76.0}/bin/check-release-environment +0 -0
  40. {kernel-0.74.0 → kernel-0.76.0}/bin/publish-pypi +0 -0
  41. {kernel-0.74.0 → kernel-0.76.0}/examples/.keep +0 -0
  42. {kernel-0.74.0 → kernel-0.76.0}/examples/browser_routing.py +0 -0
  43. {kernel-0.74.0 → kernel-0.76.0}/examples/browser_telemetry.py +0 -0
  44. {kernel-0.74.0 → kernel-0.76.0}/noxfile.py +0 -0
  45. {kernel-0.74.0 → kernel-0.76.0}/release-please-config.json +0 -0
  46. {kernel-0.74.0 → kernel-0.76.0}/requirements-dev.lock +0 -0
  47. {kernel-0.74.0 → kernel-0.76.0}/requirements.lock +0 -0
  48. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/__init__.py +0 -0
  49. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_base_client.py +0 -0
  50. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_client.py +0 -0
  51. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_compat.py +0 -0
  52. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_constants.py +0 -0
  53. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_exceptions.py +0 -0
  54. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_files.py +0 -0
  55. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_models.py +0 -0
  56. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_qs.py +0 -0
  57. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_resource.py +0 -0
  58. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_response.py +0 -0
  59. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_streaming.py +0 -0
  60. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_types.py +0 -0
  61. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/__init__.py +0 -0
  62. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_compat.py +0 -0
  63. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_datetime_parse.py +0 -0
  64. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_json.py +0 -0
  65. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_logs.py +0 -0
  66. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_path.py +0 -0
  67. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_proxy.py +0 -0
  68. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_reflection.py +0 -0
  69. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_resources_proxy.py +0 -0
  70. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_streams.py +0 -0
  71. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_sync.py +0 -0
  72. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_transform.py +0 -0
  73. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_typing.py +0 -0
  74. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/_utils/_utils.py +0 -0
  75. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/app_framework.py +0 -0
  76. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/lib/.keep +0 -0
  77. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
  78. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
  79. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/lib/browser_routing/routing.py +0 -0
  80. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/lib/browser_routing/util.py +0 -0
  81. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/pagination.py +0 -0
  82. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/py.typed +0 -0
  83. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/__init__.py +0 -0
  84. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/apps.py +0 -0
  85. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/audit_logs.py +0 -0
  86. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/auth/__init__.py +0 -0
  87. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/auth/auth.py +0 -0
  88. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/auth/connections.py +0 -0
  89. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/__init__.py +0 -0
  90. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/browsers.py +0 -0
  91. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/computer.py +0 -0
  92. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
  93. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
  94. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
  95. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/logs.py +0 -0
  96. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/playwright.py +0 -0
  97. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/process.py +0 -0
  98. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/replays.py +0 -0
  99. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/browsers/telemetry.py +0 -0
  100. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/credential_providers.py +0 -0
  101. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/deployments.py +0 -0
  102. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/extensions.py +0 -0
  103. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/invocations.py +0 -0
  104. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/organization/__init__.py +0 -0
  105. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/organization/limits.py +0 -0
  106. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/organization/organization.py +0 -0
  107. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/profiles.py +0 -0
  108. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/projects/__init__.py +0 -0
  109. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/projects/limits.py +0 -0
  110. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/projects/projects.py +0 -0
  111. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/resources/proxies.py +0 -0
  112. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/__init__.py +0 -0
  113. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key.py +0 -0
  114. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key_create_params.py +0 -0
  115. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key_list_params.py +0 -0
  116. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key_retrieve_params.py +0 -0
  117. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key_rotate_params.py +0 -0
  118. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/api_key_update_params.py +0 -0
  119. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/app_list_params.py +0 -0
  120. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/audit_log_entry.py +0 -0
  121. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/audit_log_export_chunk_params.py +0 -0
  122. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/audit_log_list_params.py +0 -0
  123. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/__init__.py +0 -0
  124. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_create_params.py +0 -0
  125. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
  126. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_list_params.py +0 -0
  127. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_login_params.py +0 -0
  128. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
  129. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_timeline_params.py +0 -0
  130. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/connection_update_params.py +0 -0
  131. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/login_response.py +0 -0
  132. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/managed_auth.py +0 -0
  133. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/managed_auth_timeline_event.py +0 -0
  134. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
  135. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_create_response.py +0 -0
  136. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_curl_params.py +0 -0
  137. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_curl_response.py +0 -0
  138. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_list_params.py +0 -0
  139. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_list_response.py +0 -0
  140. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
  141. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
  142. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_acquire_response.py +0 -0
  143. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
  144. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_list_params.py +0 -0
  145. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_pool_ref.py +0 -0
  146. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_retrieve_params.py +0 -0
  147. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_retrieve_response.py +0 -0
  148. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_update_response.py +0 -0
  149. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browser_usage.py +0 -0
  150. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/__init__.py +0 -0
  151. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
  152. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
  153. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
  154. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
  155. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
  156. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
  157. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
  158. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
  159. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
  160. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
  161. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
  162. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
  163. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
  164. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
  165. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
  166. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
  167. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
  168. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
  169. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
  170. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
  171. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
  172. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
  173. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
  174. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
  175. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
  176. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
  177. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
  178. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
  179. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
  180. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
  181. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
  182. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
  183. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
  184. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
  185. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
  186. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
  187. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
  188. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
  189. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
  190. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
  191. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
  192. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
  193. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
  194. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
  195. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
  196. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
  197. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
  198. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
  199. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
  200. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
  201. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
  202. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
  203. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
  204. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
  205. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
  206. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
  207. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
  208. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_move_params.py +0 -0
  209. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
  210. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
  211. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
  212. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
  213. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
  214. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
  215. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
  216. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
  217. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
  218. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
  219. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
  220. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
  221. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
  222. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
  223. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
  224. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
  225. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
  226. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
  227. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
  228. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
  229. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_status_response.py +0 -0
  230. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
  231. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
  232. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
  233. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
  234. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
  235. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
  236. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/telemetry_events_params.py +0 -0
  237. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/telemetry_events_response.py +0 -0
  238. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/telemetry_stream_params.py +0 -0
  239. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
  240. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/created_api_key.py +0 -0
  241. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_create_params.py +0 -0
  242. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_list_params.py +0 -0
  243. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider.py +0 -0
  244. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_create_params.py +0 -0
  245. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_item.py +0 -0
  246. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
  247. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_list_params.py +0 -0
  248. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_test_result.py +0 -0
  249. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_provider_update_params.py +0 -0
  250. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/credential_totp_code_response.py +0 -0
  251. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_create_params.py +0 -0
  252. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_follow_params.py +0 -0
  253. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/deployment_list_params.py +0 -0
  254. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
  255. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_list_params.py +0 -0
  256. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/extension_upload_params.py +0 -0
  257. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_create_params.py +0 -0
  258. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_create_response.py +0 -0
  259. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_follow_params.py +0 -0
  260. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_follow_response.py +0 -0
  261. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_list_browsers_response.py +0 -0
  262. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_list_params.py +0 -0
  263. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_list_response.py +0 -0
  264. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
  265. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_state_event.py +0 -0
  266. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_update_params.py +0 -0
  267. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/invocation_update_response.py +0 -0
  268. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/organization/__init__.py +0 -0
  269. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/organization/limit_update_params.py +0 -0
  270. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/organization/org_limits.py +0 -0
  271. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/profile.py +0 -0
  272. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/profile_create_params.py +0 -0
  273. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/profile_list_params.py +0 -0
  274. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/project.py +0 -0
  275. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/project_create_params.py +0 -0
  276. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/project_list_params.py +0 -0
  277. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/project_update_params.py +0 -0
  278. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/projects/__init__.py +0 -0
  279. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/projects/limit_update_params.py +0 -0
  280. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/projects/project_limits.py +0 -0
  281. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_check_params.py +0 -0
  282. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_check_response.py +0 -0
  283. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_create_params.py +0 -0
  284. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_create_response.py +0 -0
  285. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_list_params.py +0 -0
  286. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_list_response.py +0 -0
  287. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
  288. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/__init__.py +0 -0
  289. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/app_action.py +0 -0
  290. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/browser_extension.py +0 -0
  291. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/browser_profile.py +0 -0
  292. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/browser_viewport.py +0 -0
  293. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/error_detail.py +0 -0
  294. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/error_event.py +0 -0
  295. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/error_model.py +0 -0
  296. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
  297. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared/log_event.py +0 -0
  298. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared_params/__init__.py +0 -0
  299. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
  300. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
  301. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
  302. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/tags.py +0 -0
  303. {kernel-0.74.0 → kernel-0.76.0}/src/kernel/types/tags_param.py +0 -0
  304. {kernel-0.74.0 → kernel-0.76.0}/tests/__init__.py +0 -0
  305. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/__init__.py +0 -0
  306. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/auth/__init__.py +0 -0
  307. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/auth/test_connections.py +0 -0
  308. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/__init__.py +0 -0
  309. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
  310. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
  311. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_computer.py +0 -0
  312. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_fs.py +0 -0
  313. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_logs.py +0 -0
  314. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_playwright.py +0 -0
  315. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_process.py +0 -0
  316. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_replays.py +0 -0
  317. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
  318. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/organization/__init__.py +0 -0
  319. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/organization/test_limits.py +0 -0
  320. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/projects/__init__.py +0 -0
  321. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/projects/test_limits.py +0 -0
  322. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_api_keys.py +0 -0
  323. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_apps.py +0 -0
  324. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_audit_logs.py +0 -0
  325. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_browsers.py +0 -0
  326. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_credential_providers.py +0 -0
  327. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_deployments.py +0 -0
  328. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_extensions.py +0 -0
  329. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_invocations.py +0 -0
  330. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_profiles.py +0 -0
  331. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_projects.py +0 -0
  332. {kernel-0.74.0 → kernel-0.76.0}/tests/api_resources/test_proxies.py +0 -0
  333. {kernel-0.74.0 → kernel-0.76.0}/tests/conftest.py +0 -0
  334. {kernel-0.74.0 → kernel-0.76.0}/tests/sample_file.txt +0 -0
  335. {kernel-0.74.0 → kernel-0.76.0}/tests/test_browser_routing.py +0 -0
  336. {kernel-0.74.0 → kernel-0.76.0}/tests/test_client.py +0 -0
  337. {kernel-0.74.0 → kernel-0.76.0}/tests/test_extract_files.py +0 -0
  338. {kernel-0.74.0 → kernel-0.76.0}/tests/test_files.py +0 -0
  339. {kernel-0.74.0 → kernel-0.76.0}/tests/test_models.py +0 -0
  340. {kernel-0.74.0 → kernel-0.76.0}/tests/test_pagination.py +0 -0
  341. {kernel-0.74.0 → kernel-0.76.0}/tests/test_qs.py +0 -0
  342. {kernel-0.74.0 → kernel-0.76.0}/tests/test_required_args.py +0 -0
  343. {kernel-0.74.0 → kernel-0.76.0}/tests/test_response.py +0 -0
  344. {kernel-0.74.0 → kernel-0.76.0}/tests/test_streaming.py +0 -0
  345. {kernel-0.74.0 → kernel-0.76.0}/tests/test_transform.py +0 -0
  346. {kernel-0.74.0 → kernel-0.76.0}/tests/test_utils/test_datetime_parse.py +0 -0
  347. {kernel-0.74.0 → kernel-0.76.0}/tests/test_utils/test_json.py +0 -0
  348. {kernel-0.74.0 → kernel-0.76.0}/tests/test_utils/test_path.py +0 -0
  349. {kernel-0.74.0 → kernel-0.76.0}/tests/test_utils/test_proxy.py +0 -0
  350. {kernel-0.74.0 → kernel-0.76.0}/tests/test_utils/test_typing.py +0 -0
  351. {kernel-0.74.0 → kernel-0.76.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.76.0"
3
+ }
@@ -1,5 +1,33 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.76.0 (2026-07-09)
4
+
5
+ Full Changelog: [v0.75.0...v0.76.0](https://github.com/kernel/kernel-python-sdk/compare/v0.75.0...v0.76.0)
6
+
7
+ ### Features
8
+
9
+ * Layer telemetry request config onto the default set ([c6d6b65](https://github.com/kernel/kernel-python-sdk/commit/c6d6b651a377d4283af20ab631f2adf25354954f))
10
+ * Return credential value keys and support removing values on update ([1c4af8e](https://github.com/kernel/kernel-python-sdk/commit/1c4af8ea100bd288182b38792ad87abab4136543))
11
+
12
+ ## 0.75.0 (2026-07-08)
13
+
14
+ Full Changelog: [v0.74.0...v0.75.0](https://github.com/kernel/kernel-python-sdk/compare/v0.74.0...v0.75.0)
15
+
16
+ ### Features
17
+
18
+ * Auto-flush pools when a managed auth profile re-authenticates ([430c07f](https://github.com/kernel/kernel-python-sdk/commit/430c07fc2bfd5ab80fe25cc4677b34729bf4b4ee))
19
+ * Document env var redaction on deployment and app reads ([51d713b](https://github.com/kernel/kernel-python-sdk/commit/51d713b92b4c0ed0c2420ea2e128568530a81a14))
20
+ * Expose resolved profile_id and extension_ids on browser pool reads ([56876e9](https://github.com/kernel/kernel-python-sdk/commit/56876e9a49fca34ec34b58ea8f5f85130c0c0315))
21
+ * Reject API key self-deletion ([482f920](https://github.com/kernel/kernel-python-sdk/commit/482f9209f956e5615bdbaa6ec9c58081df56587b))
22
+ * Revert "Store and return a sha256 checksum for uploaded extensions (#… ([74dbc54](https://github.com/kernel/kernel-python-sdk/commit/74dbc54d4d8d5b330f74985227fa09f7569457a7))
23
+ * Store and return a sha256 checksum for uploaded extensions ([b266775](https://github.com/kernel/kernel-python-sdk/commit/b266775497fec10224e965c787c146494eecdae8))
24
+ * Store and return a sha256 checksum for uploaded extensions (reland) ([98cfb28](https://github.com/kernel/kernel-python-sdk/commit/98cfb2835be3d321799bbfd0400e1bb59b39b218))
25
+
26
+
27
+ ### Documentation
28
+
29
+ * **api:** clarify reuse/discard_all_idle pool config staleness ([e8641eb](https://github.com/kernel/kernel-python-sdk/commit/e8641ebe96926b22f8874a8ff79498a4cbe7e4ed))
30
+
3
31
  ## 0.74.0 (2026-07-06)
4
32
 
5
33
  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.76.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.76.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.76.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
 
@@ -7,7 +7,7 @@ from typing import Dict, Optional
7
7
  import httpx
8
8
 
9
9
  from ..types import credential_list_params, credential_create_params, credential_update_params
10
- from .._types import Body, Omit, Query, Headers, NoneType, NotGiven, omit, not_given
10
+ from .._types import Body, Omit, Query, Headers, NoneType, NotGiven, SequenceNotStr, omit, not_given
11
11
  from .._utils import path_template, maybe_transform, async_maybe_transform
12
12
  from .._compat import cached_property
13
13
  from .._resource import SyncAPIResource, AsyncAPIResource
@@ -145,6 +145,7 @@ class CredentialsResource(SyncAPIResource):
145
145
  id_or_name: str,
146
146
  *,
147
147
  name: str | Omit = omit,
148
+ remove_value_keys: SequenceNotStr[str] | Omit = omit,
148
149
  sso_provider: Optional[str] | Omit = omit,
149
150
  totp_secret: str | Omit = omit,
150
151
  values: Dict[str, str] | Omit = omit,
@@ -163,6 +164,9 @@ class CredentialsResource(SyncAPIResource):
163
164
  Args:
164
165
  name: New name for the credential
165
166
 
167
+ remove_value_keys: Field names to remove from the credential's stored values. Removals are applied
168
+ before `values` are merged, so a key present in both is kept with its new value.
169
+
166
170
  sso_provider: If set, indicates this credential should be used with the specified SSO
167
171
  provider. Set to empty string or null to remove.
168
172
 
@@ -187,6 +191,7 @@ class CredentialsResource(SyncAPIResource):
187
191
  body=maybe_transform(
188
192
  {
189
193
  "name": name,
194
+ "remove_value_keys": remove_value_keys,
190
195
  "sso_provider": sso_provider,
191
196
  "totp_secret": totp_secret,
192
197
  "values": values,
@@ -445,6 +450,7 @@ class AsyncCredentialsResource(AsyncAPIResource):
445
450
  id_or_name: str,
446
451
  *,
447
452
  name: str | Omit = omit,
453
+ remove_value_keys: SequenceNotStr[str] | Omit = omit,
448
454
  sso_provider: Optional[str] | Omit = omit,
449
455
  totp_secret: str | Omit = omit,
450
456
  values: Dict[str, str] | Omit = omit,
@@ -463,6 +469,9 @@ class AsyncCredentialsResource(AsyncAPIResource):
463
469
  Args:
464
470
  name: New name for the credential
465
471
 
472
+ remove_value_keys: Field names to remove from the credential's stored values. Removals are applied
473
+ before `values` are merged, so a key present in both is kept with its new value.
474
+
466
475
  sso_provider: If set, indicates this credential should be used with the specified SSO
467
476
  provider. Set to empty string or null to remove.
468
477
 
@@ -487,6 +496,7 @@ class AsyncCredentialsResource(AsyncAPIResource):
487
496
  body=await async_maybe_transform(
488
497
  {
489
498
  "name": name,
499
+ "remove_value_keys": remove_value_keys,
490
500
  "sso_provider": sso_provider,
491
501
  "totp_secret": totp_secret,
492
502
  "values": values,
@@ -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"""
@@ -134,16 +134,26 @@ class Telemetry(TypedDict, total=False):
134
134
  browser: BrowserTelemetryCategoriesConfigParam
135
135
  """Per-category capture flags.
136
136
 
137
- Selection is opt-in: only the categories set to enabled=true are captured;
138
- anything omitted is off. If enabled is true and browser is omitted or empty, the
139
- default category set is used. A browser config that enables nothing stops
140
- capture on update and starts no capture on create.
137
+ The operational categories (control, connection, system, captcha) are captured
138
+ whenever telemetry is enabled; set one to enabled=false to opt out. The CDP
139
+ categories (console, network, page, interaction) and screenshot are off by
140
+ default; set enabled=true to opt in. On create, provided categories layer onto
141
+ the default set. On update, provided categories merge onto the session's current
142
+ config; when no telemetry is active this falls back to the default set (matching
143
+ create). If browser is omitted or empty, the default set is used. A browser
144
+ config that disables every category stops capture on update and starts no
145
+ capture on create.
141
146
  """
142
147
 
143
148
  enabled: bool
144
149
  """Request shortcut for browser telemetry capture.
145
150
 
146
- True enables capture using the default category set unless browser category
147
- settings are provided. False stops capture on update and starts no capture on
148
- create. enabled=false cannot be combined with browser category settings.
151
+ True enables capture; with no browser category settings it captures the default
152
+ set (control, connection, system, captcha), and any browser category settings
153
+ are layered onto that default set. On update, enabled=true resolves the config
154
+ fresh from the default set plus any provided categories, replacing the session's
155
+ current selection rather than merging onto it; omit enabled to merge categories
156
+ onto the current selection instead. False stops capture on update and starts no
157
+ capture on create. enabled=false cannot be combined with browser category
158
+ settings.
149
159
  """
@@ -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
  """