kernel 0.64.0__tar.gz → 0.67.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.67.0/.release-please-manifest.json +3 -0
- {kernel-0.64.0 → kernel-0.67.0}/CHANGELOG.md +31 -0
- {kernel-0.64.0 → kernel-0.67.0}/PKG-INFO +1 -1
- {kernel-0.64.0 → kernel-0.67.0}/api.md +18 -3
- {kernel-0.64.0 → kernel-0.67.0}/pyproject.toml +1 -1
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_client.py +54 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_version.py +1 -1
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/__init__.py +14 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/auth/connections.py +12 -12
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browser_pools.py +43 -12
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/browsers.py +62 -36
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/credentials.py +4 -6
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/extensions.py +2 -2
- kernel-0.67.0/src/kernel/resources/organization/__init__.py +33 -0
- kernel-0.67.0/src/kernel/resources/organization/limits.py +245 -0
- kernel-0.67.0/src/kernel/resources/organization/organization.py +108 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/proxies.py +6 -6
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_create_params.py +3 -2
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_login_params.py +3 -2
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_update_params.py +3 -2
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_create_params.py +5 -4
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool.py +1 -1
- kernel-0.67.0/src/kernel/types/browser_pool_acquire_params.py +33 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_create_params.py +1 -1
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_update_params.py +1 -1
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_update_params.py +16 -0
- kernel-0.67.0/src/kernel/types/organization/__init__.py +6 -0
- kernel-0.67.0/src/kernel/types/organization/limit_update_params.py +17 -0
- kernel-0.67.0/src/kernel/types/organization/org_limits.py +24 -0
- kernel-0.67.0/tests/api_resources/organization/test_limits.py +152 -0
- kernel-0.67.0/tests/api_resources/projects/__init__.py +1 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_browser_pools.py +10 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_browsers.py +36 -26
- kernel-0.64.0/.release-please-manifest.json +0 -3
- kernel-0.64.0/src/kernel/types/browser_pool_acquire_params.py +0 -16
- {kernel-0.64.0 → kernel-0.67.0}/.gitignore +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/CONTRIBUTING.md +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/LICENSE +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/README.md +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/SECURITY.md +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/bin/check-release-environment +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/bin/publish-pypi +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/examples/.keep +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/examples/browser_routing.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/examples/browser_telemetry.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/noxfile.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/release-please-config.json +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/requirements-dev.lock +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/requirements.lock +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_base_client.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_compat.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_constants.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_exceptions.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_files.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_models.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_qs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_resource.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_streaming.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_types.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_compat.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_datetime_parse.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_json.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_logs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_path.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_proxy.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_reflection.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_resources_proxy.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_streams.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_sync.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_transform.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_typing.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/_utils/_utils.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/app_framework.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/lib/.keep +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/lib/browser_routing/routing.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/lib/browser_routing/util.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/pagination.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/py.typed +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/api_keys.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/apps.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/auth/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/auth/auth.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/computer.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/logs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/playwright.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/process.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/replays.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/browsers/telemetry.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/credential_providers.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/deployments.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/invocations.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/profiles.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/projects/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/projects/limits.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/resources/projects/projects.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/api_key.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/api_key_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/api_key_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/api_key_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/app_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/app_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/login_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/managed_auth.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_create_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_curl_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_curl_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_acquire_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_ref.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_pool_release_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_retrieve_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_retrieve_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_update_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browser_usage.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_move_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_status_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/created_api_key.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_item.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_test_result.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_provider_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_totp_code_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/credential_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_create_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_follow_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_follow_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_retrieve_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/deployment_state_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/extension_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/extension_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/extension_upload_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/extension_upload_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_create_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_follow_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_follow_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_list_browsers_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_state_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/invocation_update_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/profile.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/profile_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/profile_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/project.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/project_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/project_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/project_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/projects/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/projects/limit_update_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/projects/project_limits.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_check_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_check_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_create_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_create_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_list_params.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_list_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/app_action.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/browser_extension.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/browser_profile.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/browser_viewport.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/error_detail.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/error_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/error_model.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared/log_event.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared_params/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/tags.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/src/kernel/types/tags_param.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/auth/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/auth/test_connections.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_computer.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_fs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_logs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_playwright.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_process.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_replays.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
- {kernel-0.64.0/tests/api_resources/projects → kernel-0.67.0/tests/api_resources/organization}/__init__.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/projects/test_limits.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_api_keys.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_apps.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_credential_providers.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_credentials.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_deployments.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_extensions.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_invocations.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_profiles.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_projects.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/api_resources/test_proxies.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/conftest.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/sample_file.txt +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_browser_routing.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_client.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_extract_files.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_files.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_models.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_qs.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_required_args.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_response.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_streaming.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_transform.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_utils/test_json.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_utils/test_path.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_utils/test_proxy.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/test_utils/test_typing.py +0 -0
- {kernel-0.64.0 → kernel-0.67.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,36 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.67.0 (2026-06-11)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.66.0...v0.67.0](https://github.com/kernel/kernel-python-sdk/compare/v0.66.0...v0.67.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* Add project_id SDK client option mapped to X-Kernel-Project-Id ([1799732](https://github.com/kernel/kernel-python-sdk/commit/17997322232374c6c49d99333b564a0537f247c0))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Documentation
|
|
13
|
+
|
|
14
|
+
* **api:** correct project-scoping descriptions in OpenAPI spec ([5929332](https://github.com/kernel/kernel-python-sdk/commit/592933283ff7bf0e6596ddbfbc4851e285a1d36e))
|
|
15
|
+
|
|
16
|
+
## 0.66.0 (2026-06-10)
|
|
17
|
+
|
|
18
|
+
Full Changelog: [v0.65.0...v0.66.0](https://github.com/kernel/kernel-python-sdk/compare/v0.65.0...v0.66.0)
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* Add org-level default per-project concurrency cap ([2de4525](https://github.com/kernel/kernel-python-sdk/commit/2de45255a1f5ed003ec0492461ee967bf961db2e))
|
|
23
|
+
* Support updating browser session name and tags via PATCH ([e26e9c6](https://github.com/kernel/kernel-python-sdk/commit/e26e9c6b0513a1c7f9723554f4ba977988290d5e))
|
|
24
|
+
|
|
25
|
+
## 0.65.0 (2026-06-08)
|
|
26
|
+
|
|
27
|
+
Full Changelog: [v0.64.0...v0.65.0](https://github.com/kernel/kernel-python-sdk/compare/v0.64.0...v0.65.0)
|
|
28
|
+
|
|
29
|
+
### Features
|
|
30
|
+
|
|
31
|
+
* **api:** allow setting a name and tags on a pool-acquired browser session ([2977911](https://github.com/kernel/kernel-python-sdk/commit/2977911151def0f4193c5e8063ab33800d167585))
|
|
32
|
+
* **api:** support id-or-name lookup on browser session get/patch/delete ([7e6d287](https://github.com/kernel/kernel-python-sdk/commit/7e6d28795b4b2b9f9e14cf14711a72053530b576))
|
|
33
|
+
|
|
3
34
|
## 0.64.0 (2026-06-05)
|
|
4
35
|
|
|
5
36
|
Full Changelog: [v0.63.0...v0.64.0](https://github.com/kernel/kernel-python-sdk/compare/v0.63.0...v0.64.0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kernel
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.67.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
|
|
@@ -95,11 +95,11 @@ from kernel.types import (
|
|
|
95
95
|
Methods:
|
|
96
96
|
|
|
97
97
|
- <code title="post /browsers">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">create</a>(\*\*<a href="src/kernel/types/browser_create_params.py">params</a>) -> <a href="./src/kernel/types/browser_create_response.py">BrowserCreateResponse</a></code>
|
|
98
|
-
- <code title="get /browsers/{
|
|
99
|
-
- <code title="patch /browsers/{
|
|
98
|
+
- <code title="get /browsers/{id_or_name}">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">retrieve</a>(id_or_name, \*\*<a href="src/kernel/types/browser_retrieve_params.py">params</a>) -> <a href="./src/kernel/types/browser_retrieve_response.py">BrowserRetrieveResponse</a></code>
|
|
99
|
+
- <code title="patch /browsers/{id_or_name}">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">update</a>(id_or_name, \*\*<a href="src/kernel/types/browser_update_params.py">params</a>) -> <a href="./src/kernel/types/browser_update_response.py">BrowserUpdateResponse</a></code>
|
|
100
100
|
- <code title="get /browsers">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">list</a>(\*\*<a href="src/kernel/types/browser_list_params.py">params</a>) -> <a href="./src/kernel/types/browser_list_response.py">SyncOffsetPagination[BrowserListResponse]</a></code>
|
|
101
101
|
- <code title="post /browsers/{id}/curl">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">curl</a>(id, \*\*<a href="src/kernel/types/browser_curl_params.py">params</a>) -> <a href="./src/kernel/types/browser_curl_response.py">BrowserCurlResponse</a></code>
|
|
102
|
-
- <code title="delete /browsers/{
|
|
102
|
+
- <code title="delete /browsers/{id_or_name}">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">delete_by_id</a>(id_or_name) -> None</code>
|
|
103
103
|
- <code title="post /browsers/{id}/extensions">client.browsers.<a href="./src/kernel/resources/browsers/browsers.py">load_extensions</a>(id, \*\*<a href="src/kernel/types/browser_load_extensions_params.py">params</a>) -> None</code>
|
|
104
104
|
|
|
105
105
|
## Telemetry
|
|
@@ -423,6 +423,21 @@ Methods:
|
|
|
423
423
|
- <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>
|
|
424
424
|
- <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>
|
|
425
425
|
|
|
426
|
+
# Organization
|
|
427
|
+
|
|
428
|
+
## Limits
|
|
429
|
+
|
|
430
|
+
Types:
|
|
431
|
+
|
|
432
|
+
```python
|
|
433
|
+
from kernel.types.organization import OrgLimits, UpdateOrgLimitsRequest
|
|
434
|
+
```
|
|
435
|
+
|
|
436
|
+
Methods:
|
|
437
|
+
|
|
438
|
+
- <code title="get /org/limits">client.organization.limits.<a href="./src/kernel/resources/organization/limits.py">retrieve</a>() -> <a href="./src/kernel/types/organization/org_limits.py">OrgLimits</a></code>
|
|
439
|
+
- <code title="patch /org/limits">client.organization.limits.<a href="./src/kernel/resources/organization/limits.py">update</a>(\*\*<a href="src/kernel/types/organization/limit_update_params.py">params</a>) -> <a href="./src/kernel/types/organization/org_limits.py">OrgLimits</a></code>
|
|
440
|
+
|
|
426
441
|
# APIKeys
|
|
427
442
|
|
|
428
443
|
Types:
|
|
@@ -58,6 +58,7 @@ if TYPE_CHECKING:
|
|
|
58
58
|
credentials,
|
|
59
59
|
deployments,
|
|
60
60
|
invocations,
|
|
61
|
+
organization,
|
|
61
62
|
browser_pools,
|
|
62
63
|
credential_providers,
|
|
63
64
|
)
|
|
@@ -74,6 +75,7 @@ if TYPE_CHECKING:
|
|
|
74
75
|
from .resources.browsers.browsers import BrowsersResource, AsyncBrowsersResource
|
|
75
76
|
from .resources.projects.projects import ProjectsResource, AsyncProjectsResource
|
|
76
77
|
from .resources.credential_providers import CredentialProvidersResource, AsyncCredentialProvidersResource
|
|
78
|
+
from .resources.organization.organization import OrganizationResource, AsyncOrganizationResource
|
|
77
79
|
|
|
78
80
|
__all__ = [
|
|
79
81
|
"ENVIRONMENTS",
|
|
@@ -98,6 +100,8 @@ class Kernel(SyncAPIClient):
|
|
|
98
100
|
api_key: str
|
|
99
101
|
browser_route_cache: BrowserRouteCache
|
|
100
102
|
|
|
103
|
+
project_id: str | None
|
|
104
|
+
|
|
101
105
|
_environment: Literal["production", "development"] | NotGiven
|
|
102
106
|
_browser_routing: BrowserRoutingConfig
|
|
103
107
|
|
|
@@ -105,6 +109,7 @@ class Kernel(SyncAPIClient):
|
|
|
105
109
|
self,
|
|
106
110
|
*,
|
|
107
111
|
api_key: str | None = None,
|
|
112
|
+
project_id: str | None = None,
|
|
108
113
|
environment: Literal["production", "development"] | NotGiven = not_given,
|
|
109
114
|
base_url: str | httpx.URL | None | NotGiven = not_given,
|
|
110
115
|
timeout: float | Timeout | None | NotGiven = not_given,
|
|
@@ -138,6 +143,8 @@ class Kernel(SyncAPIClient):
|
|
|
138
143
|
)
|
|
139
144
|
self.api_key = api_key
|
|
140
145
|
|
|
146
|
+
self.project_id = project_id
|
|
147
|
+
|
|
141
148
|
self._environment = environment
|
|
142
149
|
|
|
143
150
|
base_url_env = os.environ.get("KERNEL_BASE_URL")
|
|
@@ -262,6 +269,12 @@ class Kernel(SyncAPIClient):
|
|
|
262
269
|
|
|
263
270
|
return ProjectsResource(self)
|
|
264
271
|
|
|
272
|
+
@cached_property
|
|
273
|
+
def organization(self) -> OrganizationResource:
|
|
274
|
+
from .resources.organization import OrganizationResource
|
|
275
|
+
|
|
276
|
+
return OrganizationResource(self)
|
|
277
|
+
|
|
265
278
|
@cached_property
|
|
266
279
|
def api_keys(self) -> APIKeysResource:
|
|
267
280
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -301,6 +314,7 @@ class Kernel(SyncAPIClient):
|
|
|
301
314
|
return {
|
|
302
315
|
**super().default_headers,
|
|
303
316
|
"X-Stainless-Async": "false",
|
|
317
|
+
"X-Kernel-Project-Id": self.project_id if self.project_id is not None else Omit(),
|
|
304
318
|
**self._custom_headers,
|
|
305
319
|
}
|
|
306
320
|
|
|
@@ -339,6 +353,7 @@ class Kernel(SyncAPIClient):
|
|
|
339
353
|
self,
|
|
340
354
|
*,
|
|
341
355
|
api_key: str | None = None,
|
|
356
|
+
project_id: str | None = None,
|
|
342
357
|
environment: Literal["production", "development"] | None = None,
|
|
343
358
|
base_url: str | httpx.URL | None = None,
|
|
344
359
|
timeout: float | Timeout | None | NotGiven = not_given,
|
|
@@ -375,6 +390,7 @@ class Kernel(SyncAPIClient):
|
|
|
375
390
|
http_client = http_client or self._client
|
|
376
391
|
return self.__class__(
|
|
377
392
|
api_key=api_key or self.api_key,
|
|
393
|
+
project_id=project_id or self.project_id,
|
|
378
394
|
base_url=base_url or self.base_url,
|
|
379
395
|
environment=environment or self._environment,
|
|
380
396
|
timeout=self.timeout if isinstance(timeout, NotGiven) else timeout,
|
|
@@ -429,6 +445,8 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
429
445
|
api_key: str
|
|
430
446
|
browser_route_cache: BrowserRouteCache
|
|
431
447
|
|
|
448
|
+
project_id: str | None
|
|
449
|
+
|
|
432
450
|
_environment: Literal["production", "development"] | NotGiven
|
|
433
451
|
_browser_routing: BrowserRoutingConfig
|
|
434
452
|
|
|
@@ -436,6 +454,7 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
436
454
|
self,
|
|
437
455
|
*,
|
|
438
456
|
api_key: str | None = None,
|
|
457
|
+
project_id: str | None = None,
|
|
439
458
|
environment: Literal["production", "development"] | NotGiven = not_given,
|
|
440
459
|
base_url: str | httpx.URL | None | NotGiven = not_given,
|
|
441
460
|
timeout: float | Timeout | None | NotGiven = not_given,
|
|
@@ -469,6 +488,8 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
469
488
|
)
|
|
470
489
|
self.api_key = api_key
|
|
471
490
|
|
|
491
|
+
self.project_id = project_id
|
|
492
|
+
|
|
472
493
|
self._environment = environment
|
|
473
494
|
|
|
474
495
|
base_url_env = os.environ.get("KERNEL_BASE_URL")
|
|
@@ -593,6 +614,12 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
593
614
|
|
|
594
615
|
return AsyncProjectsResource(self)
|
|
595
616
|
|
|
617
|
+
@cached_property
|
|
618
|
+
def organization(self) -> AsyncOrganizationResource:
|
|
619
|
+
from .resources.organization import AsyncOrganizationResource
|
|
620
|
+
|
|
621
|
+
return AsyncOrganizationResource(self)
|
|
622
|
+
|
|
596
623
|
@cached_property
|
|
597
624
|
def api_keys(self) -> AsyncAPIKeysResource:
|
|
598
625
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -632,6 +659,7 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
632
659
|
return {
|
|
633
660
|
**super().default_headers,
|
|
634
661
|
"X-Stainless-Async": f"async:{get_async_library()}",
|
|
662
|
+
"X-Kernel-Project-Id": self.project_id if self.project_id is not None else Omit(),
|
|
635
663
|
**self._custom_headers,
|
|
636
664
|
}
|
|
637
665
|
|
|
@@ -670,6 +698,7 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
670
698
|
self,
|
|
671
699
|
*,
|
|
672
700
|
api_key: str | None = None,
|
|
701
|
+
project_id: str | None = None,
|
|
673
702
|
environment: Literal["production", "development"] | None = None,
|
|
674
703
|
base_url: str | httpx.URL | None = None,
|
|
675
704
|
timeout: float | Timeout | None | NotGiven = not_given,
|
|
@@ -706,6 +735,7 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
706
735
|
http_client = http_client or self._client
|
|
707
736
|
return self.__class__(
|
|
708
737
|
api_key=api_key or self.api_key,
|
|
738
|
+
project_id=project_id or self.project_id,
|
|
709
739
|
base_url=base_url or self.base_url,
|
|
710
740
|
environment=environment or self._environment,
|
|
711
741
|
timeout=self.timeout if isinstance(timeout, NotGiven) else timeout,
|
|
@@ -837,6 +867,12 @@ class KernelWithRawResponse:
|
|
|
837
867
|
|
|
838
868
|
return ProjectsResourceWithRawResponse(self._client.projects)
|
|
839
869
|
|
|
870
|
+
@cached_property
|
|
871
|
+
def organization(self) -> organization.OrganizationResourceWithRawResponse:
|
|
872
|
+
from .resources.organization import OrganizationResourceWithRawResponse
|
|
873
|
+
|
|
874
|
+
return OrganizationResourceWithRawResponse(self._client.organization)
|
|
875
|
+
|
|
840
876
|
@cached_property
|
|
841
877
|
def api_keys(self) -> api_keys.APIKeysResourceWithRawResponse:
|
|
842
878
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -934,6 +970,12 @@ class AsyncKernelWithRawResponse:
|
|
|
934
970
|
|
|
935
971
|
return AsyncProjectsResourceWithRawResponse(self._client.projects)
|
|
936
972
|
|
|
973
|
+
@cached_property
|
|
974
|
+
def organization(self) -> organization.AsyncOrganizationResourceWithRawResponse:
|
|
975
|
+
from .resources.organization import AsyncOrganizationResourceWithRawResponse
|
|
976
|
+
|
|
977
|
+
return AsyncOrganizationResourceWithRawResponse(self._client.organization)
|
|
978
|
+
|
|
937
979
|
@cached_property
|
|
938
980
|
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithRawResponse:
|
|
939
981
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -1031,6 +1073,12 @@ class KernelWithStreamedResponse:
|
|
|
1031
1073
|
|
|
1032
1074
|
return ProjectsResourceWithStreamingResponse(self._client.projects)
|
|
1033
1075
|
|
|
1076
|
+
@cached_property
|
|
1077
|
+
def organization(self) -> organization.OrganizationResourceWithStreamingResponse:
|
|
1078
|
+
from .resources.organization import OrganizationResourceWithStreamingResponse
|
|
1079
|
+
|
|
1080
|
+
return OrganizationResourceWithStreamingResponse(self._client.organization)
|
|
1081
|
+
|
|
1034
1082
|
@cached_property
|
|
1035
1083
|
def api_keys(self) -> api_keys.APIKeysResourceWithStreamingResponse:
|
|
1036
1084
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -1128,6 +1176,12 @@ class AsyncKernelWithStreamedResponse:
|
|
|
1128
1176
|
|
|
1129
1177
|
return AsyncProjectsResourceWithStreamingResponse(self._client.projects)
|
|
1130
1178
|
|
|
1179
|
+
@cached_property
|
|
1180
|
+
def organization(self) -> organization.AsyncOrganizationResourceWithStreamingResponse:
|
|
1181
|
+
from .resources.organization import AsyncOrganizationResourceWithStreamingResponse
|
|
1182
|
+
|
|
1183
|
+
return AsyncOrganizationResourceWithStreamingResponse(self._client.organization)
|
|
1184
|
+
|
|
1131
1185
|
@cached_property
|
|
1132
1186
|
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithStreamingResponse:
|
|
1133
1187
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -88,6 +88,14 @@ from .invocations import (
|
|
|
88
88
|
InvocationsResourceWithStreamingResponse,
|
|
89
89
|
AsyncInvocationsResourceWithStreamingResponse,
|
|
90
90
|
)
|
|
91
|
+
from .organization import (
|
|
92
|
+
OrganizationResource,
|
|
93
|
+
AsyncOrganizationResource,
|
|
94
|
+
OrganizationResourceWithRawResponse,
|
|
95
|
+
AsyncOrganizationResourceWithRawResponse,
|
|
96
|
+
OrganizationResourceWithStreamingResponse,
|
|
97
|
+
AsyncOrganizationResourceWithStreamingResponse,
|
|
98
|
+
)
|
|
91
99
|
from .browser_pools import (
|
|
92
100
|
BrowserPoolsResource,
|
|
93
101
|
AsyncBrowserPoolsResource,
|
|
@@ -172,6 +180,12 @@ __all__ = [
|
|
|
172
180
|
"AsyncProjectsResourceWithRawResponse",
|
|
173
181
|
"ProjectsResourceWithStreamingResponse",
|
|
174
182
|
"AsyncProjectsResourceWithStreamingResponse",
|
|
183
|
+
"OrganizationResource",
|
|
184
|
+
"AsyncOrganizationResource",
|
|
185
|
+
"OrganizationResourceWithRawResponse",
|
|
186
|
+
"AsyncOrganizationResourceWithRawResponse",
|
|
187
|
+
"OrganizationResourceWithStreamingResponse",
|
|
188
|
+
"AsyncOrganizationResourceWithStreamingResponse",
|
|
175
189
|
"APIKeysResource",
|
|
176
190
|
"AsyncAPIKeysResource",
|
|
177
191
|
"APIKeysResourceWithRawResponse",
|
|
@@ -136,8 +136,8 @@ class ConnectionsResource(SyncAPIResource):
|
|
|
136
136
|
|
|
137
137
|
login_url: Optional login page URL to skip discovery
|
|
138
138
|
|
|
139
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
140
|
-
|
|
139
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
140
|
+
project as the resource referencing it.
|
|
141
141
|
|
|
142
142
|
record_session: Whether to record browser sessions for this connection by default. Useful for
|
|
143
143
|
debugging. Can be overridden per-login. Defaults to false.
|
|
@@ -264,8 +264,8 @@ class ConnectionsResource(SyncAPIResource):
|
|
|
264
264
|
|
|
265
265
|
login_url: Login page URL. Set to empty string to clear.
|
|
266
266
|
|
|
267
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
268
|
-
|
|
267
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
268
|
+
project as the resource referencing it.
|
|
269
269
|
|
|
270
270
|
record_session: Whether to record browser sessions for this connection by default
|
|
271
271
|
|
|
@@ -457,8 +457,8 @@ class ConnectionsResource(SyncAPIResource):
|
|
|
457
457
|
credentials are stored.
|
|
458
458
|
|
|
459
459
|
Args:
|
|
460
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
461
|
-
|
|
460
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
461
|
+
project as the resource referencing it.
|
|
462
462
|
|
|
463
463
|
record_session: Override the connection's default for recording this login's browser session.
|
|
464
464
|
When omitted, the connection's record_session default is used.
|
|
@@ -653,8 +653,8 @@ class AsyncConnectionsResource(AsyncAPIResource):
|
|
|
653
653
|
|
|
654
654
|
login_url: Optional login page URL to skip discovery
|
|
655
655
|
|
|
656
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
657
|
-
|
|
656
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
657
|
+
project as the resource referencing it.
|
|
658
658
|
|
|
659
659
|
record_session: Whether to record browser sessions for this connection by default. Useful for
|
|
660
660
|
debugging. Can be overridden per-login. Defaults to false.
|
|
@@ -781,8 +781,8 @@ class AsyncConnectionsResource(AsyncAPIResource):
|
|
|
781
781
|
|
|
782
782
|
login_url: Login page URL. Set to empty string to clear.
|
|
783
783
|
|
|
784
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
785
|
-
|
|
784
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
785
|
+
project as the resource referencing it.
|
|
786
786
|
|
|
787
787
|
record_session: Whether to record browser sessions for this connection by default
|
|
788
788
|
|
|
@@ -974,8 +974,8 @@ class AsyncConnectionsResource(AsyncAPIResource):
|
|
|
974
974
|
credentials are stored.
|
|
975
975
|
|
|
976
976
|
Args:
|
|
977
|
-
proxy: Proxy selection. Provide either id or name. The proxy must
|
|
978
|
-
|
|
977
|
+
proxy: Proxy selection. Provide either id or name. The proxy must be in the same
|
|
978
|
+
project as the resource referencing it.
|
|
979
979
|
|
|
980
980
|
record_session: Override the connection's default for recording this login's browser session.
|
|
981
981
|
When omitted, the connection's record_session default is used.
|
|
@@ -26,6 +26,7 @@ from .._response import (
|
|
|
26
26
|
)
|
|
27
27
|
from ..pagination import SyncOffsetPagination, AsyncOffsetPagination
|
|
28
28
|
from .._base_client import AsyncPaginator, make_request_options
|
|
29
|
+
from ..types.tags_param import TagsParam
|
|
29
30
|
from ..types.browser_pool import BrowserPool
|
|
30
31
|
from ..types.browser_pool_acquire_response import BrowserPoolAcquireResponse
|
|
31
32
|
from ..types.shared_params.browser_profile import BrowserProfile
|
|
@@ -108,8 +109,8 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
108
109
|
specified, the matching profile will be loaded into the browser session.
|
|
109
110
|
Profiles must be created beforehand.
|
|
110
111
|
|
|
111
|
-
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy
|
|
112
|
-
|
|
112
|
+
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
|
|
113
|
+
the same project as the browser session.
|
|
113
114
|
|
|
114
115
|
start_url: Optional URL to navigate to when a new browser is warmed into the pool.
|
|
115
116
|
Best-effort: failures to navigate do not fail pool fill. Only applied to
|
|
@@ -255,8 +256,8 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
255
256
|
specified, the matching profile will be loaded into the browser session.
|
|
256
257
|
Profiles must be created beforehand.
|
|
257
258
|
|
|
258
|
-
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy
|
|
259
|
-
|
|
259
|
+
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
|
|
260
|
+
the same project as the browser session.
|
|
260
261
|
|
|
261
262
|
size: Number of browsers to maintain in the pool. The maximum size is determined by
|
|
262
263
|
your organization's pooled sessions limit (the sum of all pool sizes cannot
|
|
@@ -337,7 +338,7 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
337
338
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
338
339
|
) -> SyncOffsetPagination[BrowserPool]:
|
|
339
340
|
"""
|
|
340
|
-
List browser pools
|
|
341
|
+
List browser pools in the resolved project.
|
|
341
342
|
|
|
342
343
|
Args:
|
|
343
344
|
limit: Limit the number of browser pools to return.
|
|
@@ -417,6 +418,8 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
417
418
|
id_or_name: str,
|
|
418
419
|
*,
|
|
419
420
|
acquire_timeout_seconds: int | Omit = omit,
|
|
421
|
+
name: str | Omit = omit,
|
|
422
|
+
tags: TagsParam | Omit = omit,
|
|
420
423
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
421
424
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
422
425
|
extra_headers: Headers | None = None,
|
|
@@ -436,6 +439,15 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
436
439
|
calculated time it would take to fill the pool at the currently configured fill
|
|
437
440
|
rate.
|
|
438
441
|
|
|
442
|
+
name: Optional human-readable name for the acquired browser session, used to find it
|
|
443
|
+
later in the dashboard. Must be unique among active sessions within the pool's
|
|
444
|
+
project. Applies to this lease only and is cleared when the browser is released
|
|
445
|
+
back to the pool.
|
|
446
|
+
|
|
447
|
+
tags: Optional user-defined key-value tags for the acquired browser session, used to
|
|
448
|
+
find and group sessions later. Applies to this lease only and are cleared when
|
|
449
|
+
the browser is released back to the pool. Up to 50 pairs.
|
|
450
|
+
|
|
439
451
|
extra_headers: Send extra headers
|
|
440
452
|
|
|
441
453
|
extra_query: Add additional query parameters to the request
|
|
@@ -449,7 +461,11 @@ class BrowserPoolsResource(SyncAPIResource):
|
|
|
449
461
|
return self._post(
|
|
450
462
|
path_template("/browser_pools/{id_or_name}/acquire", id_or_name=id_or_name),
|
|
451
463
|
body=maybe_transform(
|
|
452
|
-
{
|
|
464
|
+
{
|
|
465
|
+
"acquire_timeout_seconds": acquire_timeout_seconds,
|
|
466
|
+
"name": name,
|
|
467
|
+
"tags": tags,
|
|
468
|
+
},
|
|
453
469
|
browser_pool_acquire_params.BrowserPoolAcquireParams,
|
|
454
470
|
),
|
|
455
471
|
options=make_request_options(
|
|
@@ -614,8 +630,8 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
614
630
|
specified, the matching profile will be loaded into the browser session.
|
|
615
631
|
Profiles must be created beforehand.
|
|
616
632
|
|
|
617
|
-
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy
|
|
618
|
-
|
|
633
|
+
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
|
|
634
|
+
the same project as the browser session.
|
|
619
635
|
|
|
620
636
|
start_url: Optional URL to navigate to when a new browser is warmed into the pool.
|
|
621
637
|
Best-effort: failures to navigate do not fail pool fill. Only applied to
|
|
@@ -761,8 +777,8 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
761
777
|
specified, the matching profile will be loaded into the browser session.
|
|
762
778
|
Profiles must be created beforehand.
|
|
763
779
|
|
|
764
|
-
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy
|
|
765
|
-
|
|
780
|
+
proxy_id: Optional proxy to associate to the browser session. Must reference a proxy in
|
|
781
|
+
the same project as the browser session.
|
|
766
782
|
|
|
767
783
|
size: Number of browsers to maintain in the pool. The maximum size is determined by
|
|
768
784
|
your organization's pooled sessions limit (the sum of all pool sizes cannot
|
|
@@ -843,7 +859,7 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
843
859
|
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
844
860
|
) -> AsyncPaginator[BrowserPool, AsyncOffsetPagination[BrowserPool]]:
|
|
845
861
|
"""
|
|
846
|
-
List browser pools
|
|
862
|
+
List browser pools in the resolved project.
|
|
847
863
|
|
|
848
864
|
Args:
|
|
849
865
|
limit: Limit the number of browser pools to return.
|
|
@@ -923,6 +939,8 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
923
939
|
id_or_name: str,
|
|
924
940
|
*,
|
|
925
941
|
acquire_timeout_seconds: int | Omit = omit,
|
|
942
|
+
name: str | Omit = omit,
|
|
943
|
+
tags: TagsParam | Omit = omit,
|
|
926
944
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
927
945
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
928
946
|
extra_headers: Headers | None = None,
|
|
@@ -942,6 +960,15 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
942
960
|
calculated time it would take to fill the pool at the currently configured fill
|
|
943
961
|
rate.
|
|
944
962
|
|
|
963
|
+
name: Optional human-readable name for the acquired browser session, used to find it
|
|
964
|
+
later in the dashboard. Must be unique among active sessions within the pool's
|
|
965
|
+
project. Applies to this lease only and is cleared when the browser is released
|
|
966
|
+
back to the pool.
|
|
967
|
+
|
|
968
|
+
tags: Optional user-defined key-value tags for the acquired browser session, used to
|
|
969
|
+
find and group sessions later. Applies to this lease only and are cleared when
|
|
970
|
+
the browser is released back to the pool. Up to 50 pairs.
|
|
971
|
+
|
|
945
972
|
extra_headers: Send extra headers
|
|
946
973
|
|
|
947
974
|
extra_query: Add additional query parameters to the request
|
|
@@ -955,7 +982,11 @@ class AsyncBrowserPoolsResource(AsyncAPIResource):
|
|
|
955
982
|
return await self._post(
|
|
956
983
|
path_template("/browser_pools/{id_or_name}/acquire", id_or_name=id_or_name),
|
|
957
984
|
body=await async_maybe_transform(
|
|
958
|
-
{
|
|
985
|
+
{
|
|
986
|
+
"acquire_timeout_seconds": acquire_timeout_seconds,
|
|
987
|
+
"name": name,
|
|
988
|
+
"tags": tags,
|
|
989
|
+
},
|
|
959
990
|
browser_pool_acquire_params.BrowserPoolAcquireParams,
|
|
960
991
|
),
|
|
961
992
|
options=make_request_options(
|