kernel 0.88.0__tar.gz → 0.89.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.
- kernel-0.89.0/.release-please-manifest.json +3 -0
- {kernel-0.88.0 → kernel-0.89.0}/CHANGELOG.md +9 -0
- {kernel-0.88.0 → kernel-0.89.0}/PKG-INFO +3 -3
- {kernel-0.88.0 → kernel-0.89.0}/README.md +2 -2
- {kernel-0.88.0 → kernel-0.89.0}/api.md +1 -0
- {kernel-0.88.0 → kernel-0.89.0}/pyproject.toml +1 -1
- {kernel-0.88.0 → kernel-0.89.0}/release-please-config.json +1 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_version.py +1 -1
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browser_pools.py +46 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/browsers.py +29 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/organization/limits.py +2 -10
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/__init__.py +2 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_create_params.py +15 -1
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_create_response.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_list_params.py +3 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_list_response.py +11 -0
- kernel-0.89.0/src/kernel/types/browser_network_config.py +37 -0
- kernel-0.89.0/src/kernel/types/browser_network_config_param.py +39 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_acquire_response.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_create_params.py +12 -1
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_list_params.py +4 -1
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_update_params.py +10 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_retrieve_response.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_update_response.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_list_browsers_response.py +11 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/organization/org_limits.py +21 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_browser_pools.py +8 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_browsers.py +6 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_browser_routing.py +1 -0
- kernel-0.88.0/.release-please-manifest.json +0 -3
- {kernel-0.88.0 → kernel-0.89.0}/.gitignore +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/CONTRIBUTING.md +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/LICENSE +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/SECURITY.md +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/bin/check-release-environment +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/bin/publish-pypi +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/examples/.keep +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/examples/browser_routing.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/examples/browser_telemetry.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/noxfile.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/requirements-dev.lock +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/requirements.lock +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_base_client.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_client.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_compat.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_constants.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_exceptions.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_files.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_models.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_qs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_resource.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_streaming.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_types.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_compat.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_datetime_parse.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_json.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_logs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_path.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_proxy.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_reflection.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_resources_proxy.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_streams.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_sync.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_transform.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_typing.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/_utils/_utils.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/app_framework.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/.keep +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/audit_log_download.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/browser_routing/routing.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/lib/browser_routing/util.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/pagination.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/py.typed +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/api_keys.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/apps.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/audit_logs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/audit_logs/audit_logs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/audit_logs/export_destinations.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/auth/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/auth/auth.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/auth/connections.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/auth/context.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/computer.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/logs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/playwright.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/process.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/replays.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/browsers/telemetry.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/credential_providers.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/credentials.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/deployments.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/extensions.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/invocations.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/organization/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/organization/organization.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/profiles.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/projects/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/projects/limits.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/projects/projects.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/resources/proxies.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key_retrieve_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key_rotate_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/api_key_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/app_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/app_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_log_entry.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_log_export_chunk_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_log_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/audit_log_export_destination.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/audit_log_export_destination_test_result.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/export_destination_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/export_destination_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/audit_logs/export_destination_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/auth_context.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_login_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_timeline_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/connection_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/login_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/managed_auth.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/managed_auth_browser_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/managed_auth_browser_config_param.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/managed_auth_timeline_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_curl_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_curl_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_ref.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_pool_release_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_proxy.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_proxy_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_proxy_config_param.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_proxy_mode.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_retrieve_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browser_usage.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_export_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/browser_telemetry_otlp_export_config.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_move_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_status_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/telemetry_events_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/telemetry_events_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/telemetry_stream_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/created_api_key.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_item.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_test_result.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_provider_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_totp_code_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/credential_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_create_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_follow_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_follow_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_retrieve_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/deployment_state_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_get_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_upload_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/extension_upload_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_create_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_follow_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_follow_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_state_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/invocation_update_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/organization/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/organization/limit_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/profile.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/profile_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/profile_download_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/profile_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/profile_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/project.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/project_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/project_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/project_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/projects/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/projects/limit_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/projects/project_limits.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_check_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_check_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_create_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_create_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_list_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_list_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_update_params.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/proxy_update_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/app_action.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/browser_extension.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/browser_profile.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/browser_viewport.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/error_detail.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/error_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/error_model.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared/log_event.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared_params/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/tags.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/src/kernel/types/tags_param.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/audit_logs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/audit_logs/test_export_destinations.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/auth/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/auth/test_connections.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/auth/test_context.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_computer.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_fs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_logs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_playwright.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_process.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_replays.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/organization/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/organization/test_limits.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/projects/__init__.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/projects/test_limits.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_api_keys.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_apps.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_audit_logs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_credential_providers.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_credentials.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_deployments.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_extensions.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_invocations.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_profiles.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_projects.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/api_resources/test_proxies.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/conftest.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/sample_file.txt +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_audit_log_download.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_client.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_extract_files.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_files.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_models.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_pagination.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_qs.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_required_args.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_response.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_streaming.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_transform.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_utils/test_json.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_utils/test_path.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_utils/test_proxy.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/test_utils/test_typing.py +0 -0
- {kernel-0.88.0 → kernel-0.89.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.89.0](https://github.com/kernel/kernel-python-sdk/compare/v0.88.0...v0.89.0) (2026-08-12)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Add region as a first-class API field with plan and flag gating ([fdb020d](https://github.com/kernel/kernel-python-sdk/commit/fdb020d437b3b410b2d5758691f2818d5e744580))
|
|
9
|
+
* Add typed network config with private_hosts to browsers and pools ([b30c0e3](https://github.com/kernel/kernel-python-sdk/commit/b30c0e31182f09247bbf32823c256e27725fdbfc))
|
|
10
|
+
* Expose plan-derived auth limits on GET /org/limits ([9ff1b44](https://github.com/kernel/kernel-python-sdk/commit/9ff1b445f8f2bb3f9bb24f613e22c8b940fc1d5a))
|
|
11
|
+
|
|
3
12
|
## [0.88.0](https://github.com/kernel/kernel-python-sdk/compare/v0.87.0...v0.88.0) (2026-08-10)
|
|
4
13
|
|
|
5
14
|
### Features
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kernel
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.89.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
|
-
|
|
241
|
+
network={},
|
|
242
242
|
)
|
|
243
|
-
print(browser.
|
|
243
|
+
print(browser.network)
|
|
244
244
|
```
|
|
245
245
|
|
|
246
246
|
## File uploads
|
|
@@ -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
|
{
|
|
@@ -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(
|
|
@@ -58,6 +58,7 @@ from .project_create_params import ProjectCreateParams as ProjectCreateParams
|
|
|
58
58
|
from .project_update_params import ProjectUpdateParams as ProjectUpdateParams
|
|
59
59
|
from .proxy_create_response import ProxyCreateResponse as ProxyCreateResponse
|
|
60
60
|
from .proxy_update_response import ProxyUpdateResponse as ProxyUpdateResponse
|
|
61
|
+
from .browser_network_config import BrowserNetworkConfig as BrowserNetworkConfig
|
|
61
62
|
from .credential_list_params import CredentialListParams as CredentialListParams
|
|
62
63
|
from .deployment_list_params import DeploymentListParams as DeploymentListParams
|
|
63
64
|
from .deployment_state_event import DeploymentStateEvent as DeploymentStateEvent
|
|
@@ -96,6 +97,7 @@ from .invocation_follow_response import InvocationFollowResponse as InvocationFo
|
|
|
96
97
|
from .invocation_update_response import InvocationUpdateResponse as InvocationUpdateResponse
|
|
97
98
|
from .browser_pool_acquire_params import BrowserPoolAcquireParams as BrowserPoolAcquireParams
|
|
98
99
|
from .browser_pool_release_params import BrowserPoolReleaseParams as BrowserPoolReleaseParams
|
|
100
|
+
from .browser_network_config_param import BrowserNetworkConfigParam as BrowserNetworkConfigParam
|
|
99
101
|
from .deployment_retrieve_response import DeploymentRetrieveResponse as DeploymentRetrieveResponse
|
|
100
102
|
from .invocation_retrieve_response import InvocationRetrieveResponse as InvocationRetrieveResponse
|
|
101
103
|
from .audit_log_export_chunk_params import AuditLogExportChunkParams as AuditLogExportChunkParams
|
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
from typing import Dict, Iterable, Optional
|
|
6
|
-
from typing_extensions import TypedDict
|
|
6
|
+
from typing_extensions import Literal, TypedDict
|
|
7
7
|
|
|
8
8
|
from .tags_param import TagsParam
|
|
9
9
|
from .browser_proxy_config_param import BrowserProxyConfigParam
|
|
10
|
+
from .browser_network_config_param import BrowserNetworkConfigParam
|
|
10
11
|
from .shared_params.browser_profile import BrowserProfile
|
|
11
12
|
from .shared_params.browser_viewport import BrowserViewport
|
|
12
13
|
from .shared_params.browser_extension import BrowserExtension
|
|
@@ -64,6 +65,12 @@ class BrowserCreateParams(TypedDict, total=False):
|
|
|
64
65
|
changed later via PATCH /browsers/{id_or_name}.
|
|
65
66
|
"""
|
|
66
67
|
|
|
68
|
+
network: BrowserNetworkConfigParam
|
|
69
|
+
"""Network configuration for the browser session.
|
|
70
|
+
|
|
71
|
+
Cannot be changed after creation.
|
|
72
|
+
"""
|
|
73
|
+
|
|
67
74
|
profile: BrowserProfile
|
|
68
75
|
"""Profile selection for the browser session.
|
|
69
76
|
|
|
@@ -90,6 +97,13 @@ class BrowserCreateParams(TypedDict, total=False):
|
|
|
90
97
|
favor of proxy.
|
|
91
98
|
"""
|
|
92
99
|
|
|
100
|
+
region: Literal["us-east", "eu-west"]
|
|
101
|
+
"""Geographic region for the browser session.
|
|
102
|
+
|
|
103
|
+
It is fixed once the session is created. Region selection requires a Start-Up or
|
|
104
|
+
Enterprise plan, defaults to us-east when omitted on create.
|
|
105
|
+
"""
|
|
106
|
+
|
|
93
107
|
start_url: str
|
|
94
108
|
"""Optional URL to open when the browser session is created.
|
|
95
109
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Dict, Optional
|
|
4
4
|
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
5
6
|
|
|
6
7
|
from .tags import Tags
|
|
7
8
|
from .profile import Profile
|
|
@@ -9,6 +10,7 @@ from .._models import BaseModel
|
|
|
9
10
|
from .browser_proxy import BrowserProxy
|
|
10
11
|
from .browser_usage import BrowserUsage
|
|
11
12
|
from .browser_pool_ref import BrowserPoolRef
|
|
13
|
+
from .browser_network_config import BrowserNetworkConfig
|
|
12
14
|
from .shared.browser_viewport import BrowserViewport
|
|
13
15
|
from .browsers.browser_telemetry_config import BrowserTelemetryConfig
|
|
14
16
|
|
|
@@ -25,6 +27,9 @@ class BrowserCreateResponse(BaseModel):
|
|
|
25
27
|
headless: bool
|
|
26
28
|
"""Whether the browser session is running in headless mode."""
|
|
27
29
|
|
|
30
|
+
region: Literal["us-east", "eu-west"]
|
|
31
|
+
"""Geographic region of the browser session. Fixed once the session is created."""
|
|
32
|
+
|
|
28
33
|
session_id: str
|
|
29
34
|
"""Unique identifier for the browser session"""
|
|
30
35
|
|
|
@@ -68,6 +73,12 @@ class BrowserCreateResponse(BaseModel):
|
|
|
68
73
|
name: Optional[str] = None
|
|
69
74
|
"""Human-readable name of the browser session, if one was set at creation."""
|
|
70
75
|
|
|
76
|
+
network: Optional[BrowserNetworkConfig] = None
|
|
77
|
+
"""Network configuration the session was created with, if any.
|
|
78
|
+
|
|
79
|
+
Omitted when the session has no network configuration.
|
|
80
|
+
"""
|
|
81
|
+
|
|
71
82
|
pool: Optional[BrowserPoolRef] = None
|
|
72
83
|
"""Browser pool this session was acquired from, if any."""
|
|
73
84
|
|
|
@@ -27,6 +27,9 @@ class BrowserListParams(TypedDict, total=False):
|
|
|
27
27
|
Search browsers by name, session ID, profile name or ID, proxy ID, or pool name.
|
|
28
28
|
"""
|
|
29
29
|
|
|
30
|
+
region: Literal["us-east", "eu-west"]
|
|
31
|
+
"""Filter sessions by geographic region. Omit to list sessions in all regions."""
|
|
32
|
+
|
|
30
33
|
status: Literal["active", "deleted", "all"]
|
|
31
34
|
"""Filter sessions by status.
|
|
32
35
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Dict, Optional
|
|
4
4
|
from datetime import datetime
|
|
5
|
+
from typing_extensions import Literal
|
|
5
6
|
|
|
6
7
|
from .tags import Tags
|
|
7
8
|
from .profile import Profile
|
|
@@ -9,6 +10,7 @@ from .._models import BaseModel
|
|
|
9
10
|
from .browser_proxy import BrowserProxy
|
|
10
11
|
from .browser_usage import BrowserUsage
|
|
11
12
|
from .browser_pool_ref import BrowserPoolRef
|
|
13
|
+
from .browser_network_config import BrowserNetworkConfig
|
|
12
14
|
from .shared.browser_viewport import BrowserViewport
|
|
13
15
|
from .browsers.browser_telemetry_config import BrowserTelemetryConfig
|
|
14
16
|
|
|
@@ -25,6 +27,9 @@ class BrowserListResponse(BaseModel):
|
|
|
25
27
|
headless: bool
|
|
26
28
|
"""Whether the browser session is running in headless mode."""
|
|
27
29
|
|
|
30
|
+
region: Literal["us-east", "eu-west"]
|
|
31
|
+
"""Geographic region of the browser session. Fixed once the session is created."""
|
|
32
|
+
|
|
28
33
|
session_id: str
|
|
29
34
|
"""Unique identifier for the browser session"""
|
|
30
35
|
|
|
@@ -68,6 +73,12 @@ class BrowserListResponse(BaseModel):
|
|
|
68
73
|
name: Optional[str] = None
|
|
69
74
|
"""Human-readable name of the browser session, if one was set at creation."""
|
|
70
75
|
|
|
76
|
+
network: Optional[BrowserNetworkConfig] = None
|
|
77
|
+
"""Network configuration the session was created with, if any.
|
|
78
|
+
|
|
79
|
+
Omitted when the session has no network configuration.
|
|
80
|
+
"""
|
|
81
|
+
|
|
71
82
|
pool: Optional[BrowserPoolRef] = None
|
|
72
83
|
"""Browser pool this session was acquired from, if any."""
|
|
73
84
|
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List, Optional
|
|
4
|
+
|
|
5
|
+
from .._models import BaseModel
|
|
6
|
+
|
|
7
|
+
__all__ = ["BrowserNetworkConfig"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class BrowserNetworkConfig(BaseModel):
|
|
11
|
+
"""Network configuration for a browser session or browser pool."""
|
|
12
|
+
|
|
13
|
+
private_hosts: Optional[List[str]] = None
|
|
14
|
+
"""
|
|
15
|
+
Destinations the browser reaches directly through the session's own network
|
|
16
|
+
instead of through Kernel-managed egress — for private hosts reachable over a
|
|
17
|
+
VPN or tunnel the session has joined (e.g. a Tailscale tailnet). By default,
|
|
18
|
+
private IP ranges already route directly: RFC1918 (10.0.0.0/8, 172.16.0.0/12,
|
|
19
|
+
192.168.0.0/16), CGNAT/Tailscale (100.64.0.0/10), and IPv6 ULA (fc00::/7). An
|
|
20
|
+
explicitly supplied list replaces those defaults with exactly the entries given,
|
|
21
|
+
and an empty list ([]) disables them so all traffic uses Kernel-managed egress;
|
|
22
|
+
omit private_hosts to keep the defaults. Entries are hostname patterns
|
|
23
|
+
("_.example.ts.net", "preview.internal") or IP/CIDR literals ("100.64.0.0/10",
|
|
24
|
+
"10.1.30.63"). IP and CIDR entries only match URLs written with a literal IP
|
|
25
|
+
address; they never match hostnames that resolve into the range, so private DNS
|
|
26
|
+
names need a hostname entry even when they resolve inside the default ranges.
|
|
27
|
+
CIDRs must be in canonical masked form (host bits zero), and only the private
|
|
28
|
+
ranges listed above are accepted; public, loopback, link-local, and unspecified
|
|
29
|
+
ranges are rejected. Exact IPv6 addresses must be bracketed ("[fd00::1]"); IPv6
|
|
30
|
+
CIDR ranges are unbracketed ("fd00::/8"). Wildcards are limited to one leading
|
|
31
|
+
"_." over a suffix with at least two labels that is not a public suffix (so
|
|
32
|
+
"_.co.uk" or "_.ts.net" are rejected, while "\\**.example.ts.net" is accepted).
|
|
33
|
+
Hostname and IP entries may carry a port; CIDR ranges may not. Hostname entries
|
|
34
|
+
are not resolved during validation, so callers must ensure they identify private
|
|
35
|
+
destinations. Not related to a proxy's bypass_hosts, which selects between
|
|
36
|
+
upstream-proxy and Kernel-managed direct egress and cannot reach into a VPN.
|
|
37
|
+
"""
|