kernel 0.88.0__tar.gz → 0.90.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 (380) hide show
  1. kernel-0.90.0/.release-please-manifest.json +3 -0
  2. {kernel-0.88.0 → kernel-0.90.0}/CHANGELOG.md +17 -0
  3. {kernel-0.88.0 → kernel-0.90.0}/PKG-INFO +3 -3
  4. {kernel-0.88.0 → kernel-0.90.0}/README.md +2 -2
  5. {kernel-0.88.0 → kernel-0.90.0}/api.md +6 -5
  6. {kernel-0.88.0 → kernel-0.90.0}/pyproject.toml +1 -1
  7. {kernel-0.88.0 → kernel-0.90.0}/release-please-config.json +1 -0
  8. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_client.py +14 -0
  9. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_version.py +1 -1
  10. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browser_pools.py +46 -0
  11. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/browsers.py +29 -0
  12. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/organization/limits.py +2 -10
  13. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/projects/limits.py +16 -16
  14. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/projects/projects.py +28 -28
  15. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/__init__.py +2 -0
  16. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_follow_response.py +18 -0
  17. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/managed_auth.py +18 -0
  18. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_create_params.py +15 -1
  19. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_create_response.py +11 -0
  20. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_list_params.py +3 -0
  21. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_list_response.py +11 -0
  22. kernel-0.90.0/src/kernel/types/browser_network_config.py +37 -0
  23. kernel-0.90.0/src/kernel/types/browser_network_config_param.py +39 -0
  24. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool.py +11 -0
  25. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_acquire_response.py +11 -0
  26. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_create_params.py +12 -1
  27. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_list_params.py +4 -1
  28. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_update_params.py +10 -0
  29. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_retrieve_response.py +11 -0
  30. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_update_response.py +11 -0
  31. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_list_browsers_response.py +11 -0
  32. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/organization/org_limits.py +21 -0
  33. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/project_create_params.py +1 -1
  34. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/project_update_params.py +1 -1
  35. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/projects/test_limits.py +20 -20
  36. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_browser_pools.py +8 -0
  37. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_browsers.py +6 -0
  38. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_projects.py +28 -28
  39. {kernel-0.88.0 → kernel-0.90.0}/tests/test_browser_routing.py +1 -0
  40. kernel-0.88.0/.release-please-manifest.json +0 -3
  41. {kernel-0.88.0 → kernel-0.90.0}/.gitignore +0 -0
  42. {kernel-0.88.0 → kernel-0.90.0}/CONTRIBUTING.md +0 -0
  43. {kernel-0.88.0 → kernel-0.90.0}/LICENSE +0 -0
  44. {kernel-0.88.0 → kernel-0.90.0}/SECURITY.md +0 -0
  45. {kernel-0.88.0 → kernel-0.90.0}/bin/check-release-environment +0 -0
  46. {kernel-0.88.0 → kernel-0.90.0}/bin/publish-pypi +0 -0
  47. {kernel-0.88.0 → kernel-0.90.0}/examples/.keep +0 -0
  48. {kernel-0.88.0 → kernel-0.90.0}/examples/browser_routing.py +0 -0
  49. {kernel-0.88.0 → kernel-0.90.0}/examples/browser_telemetry.py +0 -0
  50. {kernel-0.88.0 → kernel-0.90.0}/noxfile.py +0 -0
  51. {kernel-0.88.0 → kernel-0.90.0}/requirements-dev.lock +0 -0
  52. {kernel-0.88.0 → kernel-0.90.0}/requirements.lock +0 -0
  53. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/__init__.py +0 -0
  54. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_base_client.py +0 -0
  55. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_compat.py +0 -0
  56. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_constants.py +0 -0
  57. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_exceptions.py +0 -0
  58. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_files.py +0 -0
  59. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_models.py +0 -0
  60. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_qs.py +0 -0
  61. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_resource.py +0 -0
  62. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_response.py +0 -0
  63. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_streaming.py +0 -0
  64. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_types.py +0 -0
  65. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/__init__.py +0 -0
  66. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_compat.py +0 -0
  67. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_datetime_parse.py +0 -0
  68. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_json.py +0 -0
  69. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_logs.py +0 -0
  70. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_path.py +0 -0
  71. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_proxy.py +0 -0
  72. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_reflection.py +0 -0
  73. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_resources_proxy.py +0 -0
  74. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_streams.py +0 -0
  75. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_sync.py +0 -0
  76. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_transform.py +0 -0
  77. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_typing.py +0 -0
  78. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/_utils/_utils.py +0 -0
  79. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/app_framework.py +0 -0
  80. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/.keep +0 -0
  81. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/audit_log_download.py +0 -0
  82. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
  83. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
  84. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/browser_routing/routing.py +0 -0
  85. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/lib/browser_routing/util.py +0 -0
  86. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/pagination.py +0 -0
  87. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/py.typed +0 -0
  88. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/__init__.py +0 -0
  89. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/api_keys.py +0 -0
  90. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/apps.py +0 -0
  91. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/audit_logs/__init__.py +0 -0
  92. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/audit_logs/audit_logs.py +0 -0
  93. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/audit_logs/export_destinations.py +0 -0
  94. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/auth/__init__.py +0 -0
  95. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/auth/auth.py +0 -0
  96. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/auth/connections.py +0 -0
  97. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/auth/context.py +0 -0
  98. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/__init__.py +0 -0
  99. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/computer.py +0 -0
  100. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
  101. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
  102. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
  103. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/logs.py +0 -0
  104. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/playwright.py +0 -0
  105. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/process.py +0 -0
  106. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/replays.py +0 -0
  107. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/browsers/telemetry.py +0 -0
  108. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/credential_providers.py +0 -0
  109. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/credentials.py +0 -0
  110. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/deployments.py +0 -0
  111. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/extensions.py +0 -0
  112. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/invocations.py +0 -0
  113. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/organization/__init__.py +0 -0
  114. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/organization/organization.py +0 -0
  115. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/profiles.py +0 -0
  116. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/projects/__init__.py +0 -0
  117. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/resources/proxies.py +0 -0
  118. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key.py +0 -0
  119. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key_create_params.py +0 -0
  120. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key_list_params.py +0 -0
  121. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key_retrieve_params.py +0 -0
  122. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key_rotate_params.py +0 -0
  123. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/api_key_update_params.py +0 -0
  124. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/app_list_params.py +0 -0
  125. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/app_list_response.py +0 -0
  126. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_log_entry.py +0 -0
  127. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_log_export_chunk_params.py +0 -0
  128. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_log_list_params.py +0 -0
  129. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/__init__.py +0 -0
  130. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/audit_log_export_destination.py +0 -0
  131. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/audit_log_export_destination_test_result.py +0 -0
  132. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/export_destination_create_params.py +0 -0
  133. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/export_destination_list_params.py +0 -0
  134. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/audit_logs/export_destination_update_params.py +0 -0
  135. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/__init__.py +0 -0
  136. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/auth_context.py +0 -0
  137. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_create_params.py +0 -0
  138. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_list_params.py +0 -0
  139. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_login_params.py +0 -0
  140. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
  141. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_timeline_params.py +0 -0
  142. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/connection_update_params.py +0 -0
  143. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/login_response.py +0 -0
  144. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/managed_auth_browser_config.py +0 -0
  145. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/managed_auth_browser_config_param.py +0 -0
  146. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/managed_auth_timeline_event.py +0 -0
  147. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
  148. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_curl_params.py +0 -0
  149. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_curl_response.py +0 -0
  150. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
  151. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
  152. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
  153. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_ref.py +0 -0
  154. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_pool_release_params.py +0 -0
  155. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_proxy.py +0 -0
  156. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_proxy_config.py +0 -0
  157. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_proxy_config_param.py +0 -0
  158. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_proxy_mode.py +0 -0
  159. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_retrieve_params.py +0 -0
  160. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_update_params.py +0 -0
  161. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browser_usage.py +0 -0
  162. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/__init__.py +0 -0
  163. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
  164. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
  165. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
  166. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
  167. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
  168. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
  169. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
  170. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
  171. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
  172. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
  173. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
  174. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
  175. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
  176. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
  177. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
  178. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
  179. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
  180. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
  181. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
  182. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
  183. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
  184. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
  185. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
  186. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
  187. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
  188. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
  189. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
  190. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
  191. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
  192. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
  193. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
  194. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
  195. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
  196. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
  197. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
  198. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
  199. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
  200. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
  201. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
  202. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
  203. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_export_config.py +0 -0
  204. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/browser_telemetry_otlp_export_config.py +0 -0
  205. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
  206. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
  207. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
  208. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
  209. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
  210. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
  211. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
  212. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
  213. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
  214. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
  215. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
  216. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
  217. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
  218. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
  219. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
  220. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
  221. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
  222. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
  223. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
  224. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
  225. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
  226. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_move_params.py +0 -0
  227. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
  228. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
  229. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
  230. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
  231. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
  232. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
  233. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
  234. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
  235. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
  236. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
  237. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
  238. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
  239. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
  240. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
  241. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
  242. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
  243. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
  244. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
  245. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
  246. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
  247. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_status_response.py +0 -0
  248. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
  249. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
  250. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
  251. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
  252. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
  253. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
  254. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/telemetry_events_params.py +0 -0
  255. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/telemetry_events_response.py +0 -0
  256. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/telemetry_stream_params.py +0 -0
  257. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
  258. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/created_api_key.py +0 -0
  259. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential.py +0 -0
  260. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_create_params.py +0 -0
  261. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_list_params.py +0 -0
  262. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider.py +0 -0
  263. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_create_params.py +0 -0
  264. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_item.py +0 -0
  265. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
  266. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_list_params.py +0 -0
  267. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_test_result.py +0 -0
  268. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_provider_update_params.py +0 -0
  269. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_totp_code_response.py +0 -0
  270. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/credential_update_params.py +0 -0
  271. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_create_params.py +0 -0
  272. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_create_response.py +0 -0
  273. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_follow_params.py +0 -0
  274. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_follow_response.py +0 -0
  275. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_list_params.py +0 -0
  276. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_list_response.py +0 -0
  277. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_retrieve_response.py +0 -0
  278. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/deployment_state_event.py +0 -0
  279. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
  280. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_get_response.py +0 -0
  281. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_list_params.py +0 -0
  282. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_list_response.py +0 -0
  283. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_upload_params.py +0 -0
  284. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/extension_upload_response.py +0 -0
  285. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_create_params.py +0 -0
  286. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_create_response.py +0 -0
  287. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_follow_params.py +0 -0
  288. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_follow_response.py +0 -0
  289. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_list_params.py +0 -0
  290. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_list_response.py +0 -0
  291. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
  292. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_state_event.py +0 -0
  293. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_update_params.py +0 -0
  294. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/invocation_update_response.py +0 -0
  295. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/organization/__init__.py +0 -0
  296. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/organization/limit_update_params.py +0 -0
  297. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/profile.py +0 -0
  298. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/profile_create_params.py +0 -0
  299. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/profile_download_params.py +0 -0
  300. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/profile_list_params.py +0 -0
  301. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/profile_update_params.py +0 -0
  302. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/project.py +0 -0
  303. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/project_list_params.py +0 -0
  304. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/projects/__init__.py +0 -0
  305. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/projects/limit_update_params.py +0 -0
  306. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/projects/project_limits.py +0 -0
  307. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_check_params.py +0 -0
  308. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_check_response.py +0 -0
  309. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_create_params.py +0 -0
  310. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_create_response.py +0 -0
  311. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_list_params.py +0 -0
  312. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_list_response.py +0 -0
  313. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
  314. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_update_params.py +0 -0
  315. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/proxy_update_response.py +0 -0
  316. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/__init__.py +0 -0
  317. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/app_action.py +0 -0
  318. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/browser_extension.py +0 -0
  319. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/browser_profile.py +0 -0
  320. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/browser_viewport.py +0 -0
  321. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/error_detail.py +0 -0
  322. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/error_event.py +0 -0
  323. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/error_model.py +0 -0
  324. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
  325. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared/log_event.py +0 -0
  326. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared_params/__init__.py +0 -0
  327. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
  328. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
  329. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
  330. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/tags.py +0 -0
  331. {kernel-0.88.0 → kernel-0.90.0}/src/kernel/types/tags_param.py +0 -0
  332. {kernel-0.88.0 → kernel-0.90.0}/tests/__init__.py +0 -0
  333. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/__init__.py +0 -0
  334. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/audit_logs/__init__.py +0 -0
  335. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/audit_logs/test_export_destinations.py +0 -0
  336. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/auth/__init__.py +0 -0
  337. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/auth/test_connections.py +0 -0
  338. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/auth/test_context.py +0 -0
  339. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/__init__.py +0 -0
  340. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
  341. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
  342. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_computer.py +0 -0
  343. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_fs.py +0 -0
  344. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_logs.py +0 -0
  345. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_playwright.py +0 -0
  346. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_process.py +0 -0
  347. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_replays.py +0 -0
  348. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
  349. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/organization/__init__.py +0 -0
  350. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/organization/test_limits.py +0 -0
  351. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/projects/__init__.py +0 -0
  352. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_api_keys.py +0 -0
  353. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_apps.py +0 -0
  354. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_audit_logs.py +0 -0
  355. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_credential_providers.py +0 -0
  356. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_credentials.py +0 -0
  357. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_deployments.py +0 -0
  358. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_extensions.py +0 -0
  359. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_invocations.py +0 -0
  360. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_profiles.py +0 -0
  361. {kernel-0.88.0 → kernel-0.90.0}/tests/api_resources/test_proxies.py +0 -0
  362. {kernel-0.88.0 → kernel-0.90.0}/tests/conftest.py +0 -0
  363. {kernel-0.88.0 → kernel-0.90.0}/tests/sample_file.txt +0 -0
  364. {kernel-0.88.0 → kernel-0.90.0}/tests/test_audit_log_download.py +0 -0
  365. {kernel-0.88.0 → kernel-0.90.0}/tests/test_client.py +0 -0
  366. {kernel-0.88.0 → kernel-0.90.0}/tests/test_extract_files.py +0 -0
  367. {kernel-0.88.0 → kernel-0.90.0}/tests/test_files.py +0 -0
  368. {kernel-0.88.0 → kernel-0.90.0}/tests/test_models.py +0 -0
  369. {kernel-0.88.0 → kernel-0.90.0}/tests/test_pagination.py +0 -0
  370. {kernel-0.88.0 → kernel-0.90.0}/tests/test_qs.py +0 -0
  371. {kernel-0.88.0 → kernel-0.90.0}/tests/test_required_args.py +0 -0
  372. {kernel-0.88.0 → kernel-0.90.0}/tests/test_response.py +0 -0
  373. {kernel-0.88.0 → kernel-0.90.0}/tests/test_streaming.py +0 -0
  374. {kernel-0.88.0 → kernel-0.90.0}/tests/test_transform.py +0 -0
  375. {kernel-0.88.0 → kernel-0.90.0}/tests/test_utils/test_datetime_parse.py +0 -0
  376. {kernel-0.88.0 → kernel-0.90.0}/tests/test_utils/test_json.py +0 -0
  377. {kernel-0.88.0 → kernel-0.90.0}/tests/test_utils/test_path.py +0 -0
  378. {kernel-0.88.0 → kernel-0.90.0}/tests/test_utils/test_proxy.py +0 -0
  379. {kernel-0.88.0 → kernel-0.90.0}/tests/test_utils/test_typing.py +0 -0
  380. {kernel-0.88.0 → kernel-0.90.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.90.0"
3
+ }
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.90.0](https://github.com/kernel/kernel-python-sdk/compare/v0.89.0...v0.90.0) (2026-08-12)
4
+
5
+
6
+ ### Features
7
+
8
+ * Preserve canonical managed auth input metadata ([3bb6956](https://github.com/kernel/kernel-python-sdk/commit/3bb6956e8021a955cfcbd12fd93d2a3a6b648ed7))
9
+ * Support project selection by ID or name ([67970b2](https://github.com/kernel/kernel-python-sdk/commit/67970b2b8cc0312b81d10e6fec6c3a016c79d347))
10
+
11
+ ## [0.89.0](https://github.com/kernel/kernel-python-sdk/compare/v0.88.0...v0.89.0) (2026-08-12)
12
+
13
+
14
+ ### Features
15
+
16
+ * Add region as a first-class API field with plan and flag gating ([fdb020d](https://github.com/kernel/kernel-python-sdk/commit/fdb020d437b3b410b2d5758691f2818d5e744580))
17
+ * Add typed network config with private_hosts to browsers and pools ([b30c0e3](https://github.com/kernel/kernel-python-sdk/commit/b30c0e31182f09247bbf32823c256e27725fdbfc))
18
+ * Expose plan-derived auth limits on GET /org/limits ([9ff1b44](https://github.com/kernel/kernel-python-sdk/commit/9ff1b445f8f2bb3f9bb24f613e22c8b940fc1d5a))
19
+
3
20
  ## [0.88.0](https://github.com/kernel/kernel-python-sdk/compare/v0.87.0...v0.88.0) (2026-08-10)
4
21
 
5
22
  ### Features
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: kernel
3
- Version: 0.88.0
3
+ Version: 0.90.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
@@ -238,9 +238,9 @@ from kernel import Kernel
238
238
  client = Kernel()
239
239
 
240
240
  browser = client.browsers.create(
241
- profile={},
241
+ network={},
242
242
  )
243
- print(browser.profile)
243
+ print(browser.network)
244
244
  ```
245
245
 
246
246
  ## File uploads
@@ -203,9 +203,9 @@ from kernel import Kernel
203
203
  client = Kernel()
204
204
 
205
205
  browser = client.browsers.create(
206
- profile={},
206
+ network={},
207
207
  )
208
- print(browser.profile)
208
+ print(browser.network)
209
209
  ```
210
210
 
211
211
  ## File uploads
@@ -80,6 +80,7 @@ Types:
80
80
 
81
81
  ```python
82
82
  from kernel.types import (
83
+ BrowserNetworkConfig,
83
84
  BrowserPoolRef,
84
85
  BrowserProxy,
85
86
  BrowserProxyConfig,
@@ -431,10 +432,10 @@ from kernel.types import CreateProjectRequest, Project, UpdateProjectRequest
431
432
  Methods:
432
433
 
433
434
  - <code title="post /org/projects">client.projects.<a href="./src/kernel/resources/projects/projects.py">create</a>(\*\*<a href="src/kernel/types/project_create_params.py">params</a>) -> <a href="./src/kernel/types/project.py">Project</a></code>
434
- - <code title="get /org/projects/{id}">client.projects.<a href="./src/kernel/resources/projects/projects.py">retrieve</a>(id) -> <a href="./src/kernel/types/project.py">Project</a></code>
435
- - <code title="patch /org/projects/{id}">client.projects.<a href="./src/kernel/resources/projects/projects.py">update</a>(id, \*\*<a href="src/kernel/types/project_update_params.py">params</a>) -> <a href="./src/kernel/types/project.py">Project</a></code>
435
+ - <code title="get /org/projects/{id_or_name}">client.projects.<a href="./src/kernel/resources/projects/projects.py">retrieve</a>(id_or_name) -> <a href="./src/kernel/types/project.py">Project</a></code>
436
+ - <code title="patch /org/projects/{id_or_name}">client.projects.<a href="./src/kernel/resources/projects/projects.py">update</a>(id_or_name, \*\*<a href="src/kernel/types/project_update_params.py">params</a>) -> <a href="./src/kernel/types/project.py">Project</a></code>
436
437
  - <code title="get /org/projects">client.projects.<a href="./src/kernel/resources/projects/projects.py">list</a>(\*\*<a href="src/kernel/types/project_list_params.py">params</a>) -> <a href="./src/kernel/types/project.py">SyncOffsetPagination[Project]</a></code>
437
- - <code title="delete /org/projects/{id}">client.projects.<a href="./src/kernel/resources/projects/projects.py">delete</a>(id) -> None</code>
438
+ - <code title="delete /org/projects/{id_or_name}">client.projects.<a href="./src/kernel/resources/projects/projects.py">delete</a>(id_or_name) -> None</code>
438
439
 
439
440
  ## Limits
440
441
 
@@ -446,8 +447,8 @@ from kernel.types.projects import ProjectLimits, UpdateProjectLimitsRequest
446
447
 
447
448
  Methods:
448
449
 
449
- - <code title="get /org/projects/{id}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">retrieve</a>(id) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>
450
- - <code title="patch /org/projects/{id}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">update</a>(id, \*\*<a href="src/kernel/types/projects/limit_update_params.py">params</a>) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>
450
+ - <code title="get /org/projects/{id_or_name}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">retrieve</a>(id_or_name) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>
451
+ - <code title="patch /org/projects/{id_or_name}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">update</a>(id_or_name, \*\*<a href="src/kernel/types/projects/limit_update_params.py">params</a>) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>
451
452
 
452
453
  # Organization
453
454
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "kernel"
3
- version = "0.88.0"
3
+ version = "0.90.0"
4
4
  description = "The official Python library for the kernel API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -10,6 +10,7 @@
10
10
  "bump-minor-pre-major": true,
11
11
  "bump-patch-for-minor-pre-major": false,
12
12
  "pull-request-header": "Automated Release PR",
13
+ "pull-request-footer": "Merge this pull request with a merge commit. Merging creates the GitHub release and publishes the package.",
13
14
  "pull-request-title-pattern": "release: ${version}",
14
15
  "changelog-sections": [
15
16
  {
@@ -103,6 +103,7 @@ class Kernel(SyncAPIClient):
103
103
  browser_route_cache: BrowserRouteCache
104
104
 
105
105
  project_id: str | None
106
+ project: str | None
106
107
 
107
108
  _environment: Literal["production", "development"] | NotGiven
108
109
  _browser_routing: BrowserRoutingConfig
@@ -112,6 +113,7 @@ class Kernel(SyncAPIClient):
112
113
  *,
113
114
  api_key: str | None = None,
114
115
  project_id: str | None = None,
116
+ project: str | None = None,
115
117
  environment: Literal["production", "development"] | NotGiven = not_given,
116
118
  base_url: str | httpx.URL | None | NotGiven = not_given,
117
119
  timeout: float | Timeout | None | NotGiven = not_given,
@@ -147,6 +149,8 @@ class Kernel(SyncAPIClient):
147
149
 
148
150
  self.project_id = project_id
149
151
 
152
+ self.project = project
153
+
150
154
  self._environment = environment
151
155
 
152
156
  base_url_env = os.environ.get("KERNEL_BASE_URL")
@@ -328,6 +332,7 @@ class Kernel(SyncAPIClient):
328
332
  **super().default_headers,
329
333
  "X-Stainless-Async": "false",
330
334
  "X-Kernel-Project-Id": self.project_id if self.project_id is not None else Omit(),
335
+ "X-Kernel-Project": self.project if self.project is not None else Omit(),
331
336
  **self._custom_headers,
332
337
  }
333
338
 
@@ -367,6 +372,7 @@ class Kernel(SyncAPIClient):
367
372
  *,
368
373
  api_key: str | None = None,
369
374
  project_id: str | None = None,
375
+ project: str | None = None,
370
376
  environment: Literal["production", "development"] | None = None,
371
377
  base_url: str | httpx.URL | None = None,
372
378
  timeout: float | Timeout | None | NotGiven = not_given,
@@ -404,6 +410,7 @@ class Kernel(SyncAPIClient):
404
410
  return self.__class__(
405
411
  api_key=api_key or self.api_key,
406
412
  project_id=project_id or self.project_id,
413
+ project=project or self.project,
407
414
  base_url=base_url or self.base_url,
408
415
  environment=environment or self._environment,
409
416
  timeout=self.timeout if isinstance(timeout, NotGiven) else timeout,
@@ -459,6 +466,7 @@ class AsyncKernel(AsyncAPIClient):
459
466
  browser_route_cache: BrowserRouteCache
460
467
 
461
468
  project_id: str | None
469
+ project: str | None
462
470
 
463
471
  _environment: Literal["production", "development"] | NotGiven
464
472
  _browser_routing: BrowserRoutingConfig
@@ -468,6 +476,7 @@ class AsyncKernel(AsyncAPIClient):
468
476
  *,
469
477
  api_key: str | None = None,
470
478
  project_id: str | None = None,
479
+ project: str | None = None,
471
480
  environment: Literal["production", "development"] | NotGiven = not_given,
472
481
  base_url: str | httpx.URL | None | NotGiven = not_given,
473
482
  timeout: float | Timeout | None | NotGiven = not_given,
@@ -503,6 +512,8 @@ class AsyncKernel(AsyncAPIClient):
503
512
 
504
513
  self.project_id = project_id
505
514
 
515
+ self.project = project
516
+
506
517
  self._environment = environment
507
518
 
508
519
  base_url_env = os.environ.get("KERNEL_BASE_URL")
@@ -684,6 +695,7 @@ class AsyncKernel(AsyncAPIClient):
684
695
  **super().default_headers,
685
696
  "X-Stainless-Async": f"async:{get_async_library()}",
686
697
  "X-Kernel-Project-Id": self.project_id if self.project_id is not None else Omit(),
698
+ "X-Kernel-Project": self.project if self.project is not None else Omit(),
687
699
  **self._custom_headers,
688
700
  }
689
701
 
@@ -723,6 +735,7 @@ class AsyncKernel(AsyncAPIClient):
723
735
  *,
724
736
  api_key: str | None = None,
725
737
  project_id: str | None = None,
738
+ project: str | None = None,
726
739
  environment: Literal["production", "development"] | None = None,
727
740
  base_url: str | httpx.URL | None = None,
728
741
  timeout: float | Timeout | None | NotGiven = not_given,
@@ -760,6 +773,7 @@ class AsyncKernel(AsyncAPIClient):
760
773
  return self.__class__(
761
774
  api_key=api_key or self.api_key,
762
775
  project_id=project_id or self.project_id,
776
+ project=project or self.project,
763
777
  base_url=base_url or self.base_url,
764
778
  environment=environment or self._environment,
765
779
  timeout=self.timeout if isinstance(timeout, NotGiven) else timeout,
@@ -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.88.0" # x-release-please-version
4
+ __version__ = "0.90.0" # x-release-please-version
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from typing import Dict, Iterable, Optional
6
+ from typing_extensions import Literal
6
7
 
7
8
  import httpx
8
9
 
@@ -28,6 +29,7 @@ from ..pagination import SyncOffsetPagination, AsyncOffsetPagination
28
29
  from .._base_client import AsyncPaginator, make_request_options
29
30
  from ..types.tags_param import TagsParam
30
31
  from ..types.browser_pool import BrowserPool
32
+ from ..types.browser_network_config_param import BrowserNetworkConfigParam
31
33
  from ..types.browser_pool_acquire_response import BrowserPoolAcquireResponse
32
34
  from ..types.shared_params.browser_viewport import BrowserViewport
33
35
  from ..types.shared_params.browser_extension import BrowserExtension
@@ -67,9 +69,11 @@ class BrowserPoolsResource(SyncAPIResource):
67
69
  headless: bool | Omit = omit,
68
70
  kiosk_mode: bool | Omit = omit,
69
71
  name: str | Omit = omit,
72
+ network: BrowserNetworkConfigParam | Omit = omit,
70
73
  profile: browser_pool_create_params.Profile | Omit = omit,
71
74
  proxy_id: str | Omit = omit,
72
75
  refresh_on_profile_update: bool | Omit = omit,
76
+ region: Literal["us-east", "eu-west"] | Omit = omit,
73
77
  start_url: str | Omit = omit,
74
78
  stealth: bool | Omit = omit,
75
79
  telemetry: Optional[browser_pool_create_params.Telemetry] | Omit = omit,
@@ -113,6 +117,8 @@ class BrowserPoolsResource(SyncAPIResource):
113
117
 
114
118
  name: Optional name for the browser pool. Must be unique within the project.
115
119
 
120
+ network: Network configuration applied to browsers in this pool.
121
+
116
122
  profile: Profile configuration for browsers in a pool. Provide either id or name.
117
123
  Profiles must be created beforehand. Unlike single browser sessions, pools load
118
124
  the profile read-only and never persist changes back to it, so save_changes is
@@ -126,6 +132,10 @@ class BrowserPoolsResource(SyncAPIResource):
126
132
  pool browsers pick up the latest profile data. When a profile is provided during
127
133
  creation, this defaults to true. Requires a profile to be set on the pool.
128
134
 
135
+ region: Geographic region for the browser pool. It is fixed once the pool is created.
136
+ Region selection requires a Start-Up or Enterprise plan, defaults to us-east
137
+ when omitted on create.
138
+
129
139
  start_url: Optional URL to navigate to when a new browser is warmed into the pool.
130
140
  Best-effort: failures to navigate do not fail pool fill. Only applied to
131
141
  newly-warmed browsers; browsers reused via release/acquire keep whatever URL the
@@ -177,9 +187,11 @@ class BrowserPoolsResource(SyncAPIResource):
177
187
  "headless": headless,
178
188
  "kiosk_mode": kiosk_mode,
179
189
  "name": name,
190
+ "network": network,
180
191
  "profile": profile,
181
192
  "proxy_id": proxy_id,
182
193
  "refresh_on_profile_update": refresh_on_profile_update,
194
+ "region": region,
183
195
  "start_url": start_url,
184
196
  "stealth": stealth,
185
197
  "telemetry": telemetry,
@@ -238,6 +250,7 @@ class BrowserPoolsResource(SyncAPIResource):
238
250
  headless: bool | Omit = omit,
239
251
  kiosk_mode: bool | Omit = omit,
240
252
  name: str | Omit = omit,
253
+ network: BrowserNetworkConfigParam | Omit = omit,
241
254
  profile: browser_pool_update_params.Profile | Omit = omit,
242
255
  proxy_id: str | Omit = omit,
243
256
  refresh_on_profile_update: bool | Omit = omit,
@@ -291,6 +304,12 @@ class BrowserPoolsResource(SyncAPIResource):
291
304
  name: If provided, replaces the pool name. Empty string is a no-op; the pool name
292
305
  cannot be cleared or reset to empty once assigned.
293
306
 
307
+ network: If provided, replaces the pool's network configuration. Omit to leave the
308
+ existing configuration unchanged; an empty object ({}) removes it, while
309
+ network: {private_hosts: []} sets an explicit empty list. Only applied to
310
+ browsers created in the pool after the update; browsers already in the pool keep
311
+ their configuration until discarded (see discard_all_idle).
312
+
294
313
  profile: Profile configuration for browsers in a pool. Provide either id or name.
295
314
  Profiles must be created beforehand. Unlike single browser sessions, pools load
296
315
  the profile read-only and never persist changes back to it, so save_changes is
@@ -361,6 +380,7 @@ class BrowserPoolsResource(SyncAPIResource):
361
380
  "headless": headless,
362
381
  "kiosk_mode": kiosk_mode,
363
382
  "name": name,
383
+ "network": network,
364
384
  "profile": profile,
365
385
  "proxy_id": proxy_id,
366
386
  "refresh_on_profile_update": refresh_on_profile_update,
@@ -386,6 +406,7 @@ class BrowserPoolsResource(SyncAPIResource):
386
406
  name: str | Omit = omit,
387
407
  offset: int | Omit = omit,
388
408
  query: str | Omit = omit,
409
+ region: Literal["us-east", "eu-west"] | Omit = omit,
389
410
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
390
411
  # The extra values given here take precedence over values defined on the client or passed to this method.
391
412
  extra_headers: Headers | None = None,
@@ -409,6 +430,8 @@ class BrowserPoolsResource(SyncAPIResource):
409
430
  query: Case-insensitive substring match against browser pool name. IDs match by exact
410
431
  value.
411
432
 
433
+ region: Filter pools by geographic region. Omit to list pools in all regions.
434
+
412
435
  extra_headers: Send extra headers
413
436
 
414
437
  extra_query: Add additional query parameters to the request
@@ -431,6 +454,7 @@ class BrowserPoolsResource(SyncAPIResource):
431
454
  "name": name,
432
455
  "offset": offset,
433
456
  "query": query,
457
+ "region": region,
434
458
  },
435
459
  browser_pool_list_params.BrowserPoolListParams,
436
460
  ),
@@ -675,9 +699,11 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
675
699
  headless: bool | Omit = omit,
676
700
  kiosk_mode: bool | Omit = omit,
677
701
  name: str | Omit = omit,
702
+ network: BrowserNetworkConfigParam | Omit = omit,
678
703
  profile: browser_pool_create_params.Profile | Omit = omit,
679
704
  proxy_id: str | Omit = omit,
680
705
  refresh_on_profile_update: bool | Omit = omit,
706
+ region: Literal["us-east", "eu-west"] | Omit = omit,
681
707
  start_url: str | Omit = omit,
682
708
  stealth: bool | Omit = omit,
683
709
  telemetry: Optional[browser_pool_create_params.Telemetry] | Omit = omit,
@@ -721,6 +747,8 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
721
747
 
722
748
  name: Optional name for the browser pool. Must be unique within the project.
723
749
 
750
+ network: Network configuration applied to browsers in this pool.
751
+
724
752
  profile: Profile configuration for browsers in a pool. Provide either id or name.
725
753
  Profiles must be created beforehand. Unlike single browser sessions, pools load
726
754
  the profile read-only and never persist changes back to it, so save_changes is
@@ -734,6 +762,10 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
734
762
  pool browsers pick up the latest profile data. When a profile is provided during
735
763
  creation, this defaults to true. Requires a profile to be set on the pool.
736
764
 
765
+ region: Geographic region for the browser pool. It is fixed once the pool is created.
766
+ Region selection requires a Start-Up or Enterprise plan, defaults to us-east
767
+ when omitted on create.
768
+
737
769
  start_url: Optional URL to navigate to when a new browser is warmed into the pool.
738
770
  Best-effort: failures to navigate do not fail pool fill. Only applied to
739
771
  newly-warmed browsers; browsers reused via release/acquire keep whatever URL the
@@ -785,9 +817,11 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
785
817
  "headless": headless,
786
818
  "kiosk_mode": kiosk_mode,
787
819
  "name": name,
820
+ "network": network,
788
821
  "profile": profile,
789
822
  "proxy_id": proxy_id,
790
823
  "refresh_on_profile_update": refresh_on_profile_update,
824
+ "region": region,
791
825
  "start_url": start_url,
792
826
  "stealth": stealth,
793
827
  "telemetry": telemetry,
@@ -846,6 +880,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
846
880
  headless: bool | Omit = omit,
847
881
  kiosk_mode: bool | Omit = omit,
848
882
  name: str | Omit = omit,
883
+ network: BrowserNetworkConfigParam | Omit = omit,
849
884
  profile: browser_pool_update_params.Profile | Omit = omit,
850
885
  proxy_id: str | Omit = omit,
851
886
  refresh_on_profile_update: bool | Omit = omit,
@@ -899,6 +934,12 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
899
934
  name: If provided, replaces the pool name. Empty string is a no-op; the pool name
900
935
  cannot be cleared or reset to empty once assigned.
901
936
 
937
+ network: If provided, replaces the pool's network configuration. Omit to leave the
938
+ existing configuration unchanged; an empty object ({}) removes it, while
939
+ network: {private_hosts: []} sets an explicit empty list. Only applied to
940
+ browsers created in the pool after the update; browsers already in the pool keep
941
+ their configuration until discarded (see discard_all_idle).
942
+
902
943
  profile: Profile configuration for browsers in a pool. Provide either id or name.
903
944
  Profiles must be created beforehand. Unlike single browser sessions, pools load
904
945
  the profile read-only and never persist changes back to it, so save_changes is
@@ -969,6 +1010,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
969
1010
  "headless": headless,
970
1011
  "kiosk_mode": kiosk_mode,
971
1012
  "name": name,
1013
+ "network": network,
972
1014
  "profile": profile,
973
1015
  "proxy_id": proxy_id,
974
1016
  "refresh_on_profile_update": refresh_on_profile_update,
@@ -994,6 +1036,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
994
1036
  name: str | Omit = omit,
995
1037
  offset: int | Omit = omit,
996
1038
  query: str | Omit = omit,
1039
+ region: Literal["us-east", "eu-west"] | Omit = omit,
997
1040
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
998
1041
  # The extra values given here take precedence over values defined on the client or passed to this method.
999
1042
  extra_headers: Headers | None = None,
@@ -1017,6 +1060,8 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
1017
1060
  query: Case-insensitive substring match against browser pool name. IDs match by exact
1018
1061
  value.
1019
1062
 
1063
+ region: Filter pools by geographic region. Omit to list pools in all regions.
1064
+
1020
1065
  extra_headers: Send extra headers
1021
1066
 
1022
1067
  extra_query: Add additional query parameters to the request
@@ -1039,6 +1084,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
1039
1084
  "name": name,
1040
1085
  "offset": offset,
1041
1086
  "query": query,
1087
+ "region": region,
1042
1088
  },
1043
1089
  browser_pool_list_params.BrowserPoolListParams,
1044
1090
  ),
@@ -98,6 +98,7 @@ from ...types.browser_create_response import BrowserCreateResponse
98
98
  from ...types.browser_update_response import BrowserUpdateResponse
99
99
  from ...types.browser_retrieve_response import BrowserRetrieveResponse
100
100
  from ...types.browser_proxy_config_param import BrowserProxyConfigParam
101
+ from ...types.browser_network_config_param import BrowserNetworkConfigParam
101
102
  from ...types.shared_params.browser_profile import BrowserProfile
102
103
  from ...types.shared_params.browser_viewport import BrowserViewport
103
104
  from ...types.shared_params.browser_extension import BrowserExtension
@@ -172,9 +173,11 @@ class BrowsersResource(SyncAPIResource):
172
173
  invocation_id: str | Omit = omit,
173
174
  kiosk_mode: bool | Omit = omit,
174
175
  name: str | Omit = omit,
176
+ network: BrowserNetworkConfigParam | Omit = omit,
175
177
  profile: BrowserProfile | Omit = omit,
176
178
  proxy: BrowserProxyConfigParam | Omit = omit,
177
179
  proxy_id: str | Omit = omit,
180
+ region: Literal["us-east", "eu-west"] | Omit = omit,
178
181
  start_url: str | Omit = omit,
179
182
  stealth: bool | Omit = omit,
180
183
  tags: TagsParam | Omit = omit,
@@ -214,6 +217,8 @@ class BrowsersResource(SyncAPIResource):
214
217
  the dashboard. Must be unique among active sessions within the project. Can be
215
218
  changed later via PATCH /browsers/{id_or_name}.
216
219
 
220
+ network: Network configuration for the browser session. Cannot be changed after creation.
221
+
217
222
  profile: Profile selection for the browser session. Provide either id or name. If
218
223
  specified, the matching profile will be loaded into the browser session.
219
224
  Profiles must be created beforehand.
@@ -229,6 +234,10 @@ class BrowsersResource(SyncAPIResource):
229
234
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
230
235
  the same project as the browser session. Deprecated in favor of proxy.
231
236
 
237
+ region: Geographic region for the browser session. It is fixed once the session is
238
+ created. Region selection requires a Start-Up or Enterprise plan, defaults to
239
+ us-east when omitted on create.
240
+
232
241
  start_url: Optional URL to open when the browser session is created. Navigation is
233
242
  best-effort, so navigation failures do not prevent the session from being
234
243
  created.
@@ -287,9 +296,11 @@ class BrowsersResource(SyncAPIResource):
287
296
  "invocation_id": invocation_id,
288
297
  "kiosk_mode": kiosk_mode,
289
298
  "name": name,
299
+ "network": network,
290
300
  "profile": profile,
291
301
  "proxy": proxy,
292
302
  "proxy_id": proxy_id,
303
+ "region": region,
293
304
  "start_url": start_url,
294
305
  "stealth": stealth,
295
306
  "tags": tags,
@@ -440,6 +451,7 @@ class BrowsersResource(SyncAPIResource):
440
451
  limit: int | Omit = omit,
441
452
  offset: int | Omit = omit,
442
453
  query: str | Omit = omit,
454
+ region: Literal["us-east", "eu-west"] | Omit = omit,
443
455
  status: Literal["active", "deleted", "all"] | Omit = omit,
444
456
  tags: Dict[str, str] | Omit = omit,
445
457
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -464,6 +476,8 @@ class BrowsersResource(SyncAPIResource):
464
476
 
465
477
  query: Search browsers by name, session ID, profile name or ID, proxy ID, or pool name.
466
478
 
479
+ region: Filter sessions by geographic region. Omit to list sessions in all regions.
480
+
467
481
  status: Filter sessions by status. "active" returns only active sessions (default),
468
482
  "deleted" returns only soft-deleted sessions, "all" returns both.
469
483
 
@@ -493,6 +507,7 @@ class BrowsersResource(SyncAPIResource):
493
507
  "limit": limit,
494
508
  "offset": offset,
495
509
  "query": query,
510
+ "region": region,
496
511
  "status": status,
497
512
  "tags": tags,
498
513
  },
@@ -772,9 +787,11 @@ class AsyncBrowsersResource(AsyncAPIResource):
772
787
  invocation_id: str | Omit = omit,
773
788
  kiosk_mode: bool | Omit = omit,
774
789
  name: str | Omit = omit,
790
+ network: BrowserNetworkConfigParam | Omit = omit,
775
791
  profile: BrowserProfile | Omit = omit,
776
792
  proxy: BrowserProxyConfigParam | Omit = omit,
777
793
  proxy_id: str | Omit = omit,
794
+ region: Literal["us-east", "eu-west"] | Omit = omit,
778
795
  start_url: str | Omit = omit,
779
796
  stealth: bool | Omit = omit,
780
797
  tags: TagsParam | Omit = omit,
@@ -814,6 +831,8 @@ class AsyncBrowsersResource(AsyncAPIResource):
814
831
  the dashboard. Must be unique among active sessions within the project. Can be
815
832
  changed later via PATCH /browsers/{id_or_name}.
816
833
 
834
+ network: Network configuration for the browser session. Cannot be changed after creation.
835
+
817
836
  profile: Profile selection for the browser session. Provide either id or name. If
818
837
  specified, the matching profile will be loaded into the browser session.
819
838
  Profiles must be created beforehand.
@@ -829,6 +848,10 @@ class AsyncBrowsersResource(AsyncAPIResource):
829
848
  proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
830
849
  the same project as the browser session. Deprecated in favor of proxy.
831
850
 
851
+ region: Geographic region for the browser session. It is fixed once the session is
852
+ created. Region selection requires a Start-Up or Enterprise plan, defaults to
853
+ us-east when omitted on create.
854
+
832
855
  start_url: Optional URL to open when the browser session is created. Navigation is
833
856
  best-effort, so navigation failures do not prevent the session from being
834
857
  created.
@@ -887,9 +910,11 @@ class AsyncBrowsersResource(AsyncAPIResource):
887
910
  "invocation_id": invocation_id,
888
911
  "kiosk_mode": kiosk_mode,
889
912
  "name": name,
913
+ "network": network,
890
914
  "profile": profile,
891
915
  "proxy": proxy,
892
916
  "proxy_id": proxy_id,
917
+ "region": region,
893
918
  "start_url": start_url,
894
919
  "stealth": stealth,
895
920
  "tags": tags,
@@ -1040,6 +1065,7 @@ class AsyncBrowsersResource(AsyncAPIResource):
1040
1065
  limit: int | Omit = omit,
1041
1066
  offset: int | Omit = omit,
1042
1067
  query: str | Omit = omit,
1068
+ region: Literal["us-east", "eu-west"] | Omit = omit,
1043
1069
  status: Literal["active", "deleted", "all"] | Omit = omit,
1044
1070
  tags: Dict[str, str] | Omit = omit,
1045
1071
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -1064,6 +1090,8 @@ class AsyncBrowsersResource(AsyncAPIResource):
1064
1090
 
1065
1091
  query: Search browsers by name, session ID, profile name or ID, proxy ID, or pool name.
1066
1092
 
1093
+ region: Filter sessions by geographic region. Omit to list sessions in all regions.
1094
+
1067
1095
  status: Filter sessions by status. "active" returns only active sessions (default),
1068
1096
  "deleted" returns only soft-deleted sessions, "all" returns both.
1069
1097
 
@@ -1093,6 +1121,7 @@ class AsyncBrowsersResource(AsyncAPIResource):
1093
1121
  "limit": limit,
1094
1122
  "offset": offset,
1095
1123
  "query": query,
1124
+ "region": region,
1096
1125
  "status": status,
1097
1126
  "tags": tags,
1098
1127
  },
@@ -55,11 +55,7 @@ class LimitsResource(SyncAPIResource):
55
55
  extra_body: Body | None = None,
56
56
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
57
57
  ) -> OrgLimits:
58
- """
59
- Get the organization's concurrency limit — the maximum browsers running at once
60
- across on-demand sessions and browser pool reservations — and the default
61
- per-project concurrency cap applied to projects without an explicit override.
62
- """
58
+ """Get the organization's effective limits and managed auth usage."""
63
59
  return self._get(
64
60
  "/org/limits",
65
61
  options=make_request_options(
@@ -142,11 +138,7 @@ class AsyncLimitsResource(AsyncAPIResource):
142
138
  extra_body: Body | None = None,
143
139
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
144
140
  ) -> OrgLimits:
145
- """
146
- Get the organization's concurrency limit — the maximum browsers running at once
147
- across on-demand sessions and browser pool reservations — and the default
148
- per-project concurrency cap applied to projects without an explicit override.
149
- """
141
+ """Get the organization's effective limits and managed auth usage."""
150
142
  return await self._get(
151
143
  "/org/limits",
152
144
  options=make_request_options(