kernel 0.70.0__tar.gz → 0.71.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.71.0/.release-please-manifest.json +3 -0
- {kernel-0.70.0 → kernel-0.71.0}/CHANGELOG.md +9 -0
- {kernel-0.70.0 → kernel-0.71.0}/PKG-INFO +1 -1
- {kernel-0.70.0 → kernel-0.71.0}/api.md +14 -0
- {kernel-0.70.0 → kernel-0.71.0}/pyproject.toml +1 -1
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_client.py +44 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_version.py +1 -1
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/pagination.py +81 -1
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/__init__.py +14 -0
- kernel-0.71.0/src/kernel/resources/audit_logs.py +269 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/auth/connections.py +127 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/__init__.py +2 -0
- kernel-0.71.0/src/kernel/types/audit_log_entry.py +45 -0
- kernel-0.71.0/src/kernel/types/audit_log_list_params.py +44 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/__init__.py +2 -0
- kernel-0.71.0/src/kernel/types/auth/connection_timeline_params.py +18 -0
- kernel-0.71.0/src/kernel/types/auth/managed_auth_timeline_event.py +77 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/auth/test_connections.py +107 -0
- kernel-0.71.0/tests/api_resources/test_audit_logs.py +134 -0
- kernel-0.70.0/.release-please-manifest.json +0 -3
- {kernel-0.70.0 → kernel-0.71.0}/.gitignore +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/CONTRIBUTING.md +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/LICENSE +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/README.md +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/SECURITY.md +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/bin/check-release-environment +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/bin/publish-pypi +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/examples/.keep +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/examples/browser_routing.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/examples/browser_telemetry.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/noxfile.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/release-please-config.json +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/requirements-dev.lock +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/requirements.lock +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_base_client.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_compat.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_constants.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_exceptions.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_files.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_models.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_qs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_resource.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_streaming.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_types.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_compat.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_datetime_parse.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_json.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_logs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_path.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_proxy.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_reflection.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_resources_proxy.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_streams.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_sync.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_transform.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_typing.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/_utils/_utils.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/app_framework.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/lib/.keep +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/lib/browser_routing/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/lib/browser_routing/raw_http.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/lib/browser_routing/routing.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/lib/browser_routing/util.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/py.typed +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/api_keys.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/apps.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/auth/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/auth/auth.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browser_pools.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/browsers.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/computer.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/fs/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/fs/fs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/fs/watch.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/logs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/playwright.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/process.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/replays.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/browsers/telemetry.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/credential_providers.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/credentials.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/deployments.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/extensions.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/invocations.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/organization/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/organization/limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/organization/organization.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/profiles.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/projects/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/projects/limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/projects/projects.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/resources/proxies.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key_retrieve_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key_rotate_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/api_key_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/app_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/app_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_follow_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_login_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_submit_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/connection_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/login_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/managed_auth.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/auth/submit_fields_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_create_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_curl_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_curl_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_load_extensions_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_acquire_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_acquire_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_delete_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_ref.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_release_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_pool_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_retrieve_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_retrieve_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_update_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browser_usage.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_api_call_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_call_stack.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_captcha_solve_result_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_cdp_connect_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_cdp_disconnect_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_console_error_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_console_log_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_event_context.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_event_source.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_http_headers.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_interaction_click_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_interaction_key_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_interaction_scroll_settled_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_live_view_connect_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_live_view_disconnect_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_monitor_disconnected_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_monitor_init_failed_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_monitor_reconnect_failed_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_monitor_reconnected_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_monitor_screenshot_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_network_idle_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_network_loading_failed_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_network_request_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_network_response_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_dom_content_loaded_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_layout_settled_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_layout_shift_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_lcp_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_load_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_navigation_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_navigation_settled_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_page_tab_opened_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_service_crashed_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_system_oom_kill_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_categories_config.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_categories_config_param.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_category_config.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_category_config_param.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_config.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/browser_telemetry_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_batch_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_capture_screenshot_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_click_mouse_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_drag_mouse_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_get_mouse_position_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_move_mouse_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_press_key_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_read_clipboard_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_scroll_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_set_cursor_visibility_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_set_cursor_visibility_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_type_text_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/computer_write_clipboard_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_create_directory_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_delete_directory_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_delete_file_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_download_dir_zip_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_file_info_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_file_info_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_list_files_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_list_files_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_move_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_read_file_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_set_file_permissions_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_upload_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_upload_zip_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/f_write_file_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/fs/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/fs/watch_events_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/fs/watch_start_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/fs/watch_start_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/log_stream_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/playwright_execute_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/playwright_execute_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_exec_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_exec_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_kill_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_kill_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_resize_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_resize_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_spawn_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_spawn_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_status_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_stdin_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_stdin_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/process_stdout_stream_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/replay_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/replay_start_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/replay_start_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/telemetry_events_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/telemetry_events_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/telemetry_stream_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/browsers/telemetry_stream_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/created_api_key.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_item.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_list_items_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_test_result.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_provider_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_totp_code_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/credential_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_create_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_follow_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_follow_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_retrieve_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/deployment_state_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_download_from_chrome_store_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_get_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_upload_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/extension_upload_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_create_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_follow_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_follow_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_list_browsers_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_retrieve_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_state_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/invocation_update_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/organization/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/organization/limit_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/organization/org_limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/profile.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/profile_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/profile_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/project.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/project_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/project_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/project_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/projects/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/projects/limit_update_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/projects/project_limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_check_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_check_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_create_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_create_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_list_params.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_list_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/proxy_retrieve_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/app_action.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/browser_extension.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/browser_profile.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/browser_viewport.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/error_detail.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/error_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/error_model.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/heartbeat_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared/log_event.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared_params/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared_params/browser_extension.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared_params/browser_profile.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/shared_params/browser_viewport.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/tags.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/src/kernel/types/tags_param.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/auth/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/fs/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/fs/test_watch.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_computer.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_fs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_logs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_playwright.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_process.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_replays.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/browsers/test_telemetry.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/organization/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/organization/test_limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/projects/__init__.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/projects/test_limits.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_api_keys.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_apps.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_browser_pools.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_browsers.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_credential_providers.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_credentials.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_deployments.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_extensions.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_invocations.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_profiles.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_projects.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/api_resources/test_proxies.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/conftest.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/sample_file.txt +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_browser_routing.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_client.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_extract_files.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_files.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_models.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_pagination.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_qs.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_required_args.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_response.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_streaming.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_transform.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_utils/test_json.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_utils/test_path.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_utils/test_proxy.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/test_utils/test_typing.py +0 -0
- {kernel-0.70.0 → kernel-0.71.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.71.0 (2026-06-26)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.70.0...v0.71.0](https://github.com/kernel/kernel-python-sdk/compare/v0.70.0...v0.71.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* Add auth connection event timeline endpoint ([871432f](https://github.com/kernel/kernel-python-sdk/commit/871432f827c95b11d132f60b3547c9986e266f6b))
|
|
10
|
+
* Expose audit logs in public SDK ([9c8e9ac](https://github.com/kernel/kernel-python-sdk/commit/9c8e9ace1cdddc6ce727b38fec62beaba6c6fa20))
|
|
11
|
+
|
|
3
12
|
## 0.70.0 (2026-06-24)
|
|
4
13
|
|
|
5
14
|
Full Changelog: [v0.69.0...v0.70.0](https://github.com/kernel/kernel-python-sdk/compare/v0.69.0...v0.70.0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kernel
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.71.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
|
|
@@ -300,6 +300,7 @@ from kernel.types.auth import (
|
|
|
300
300
|
LoginResponse,
|
|
301
301
|
ManagedAuth,
|
|
302
302
|
ManagedAuthCreateRequest,
|
|
303
|
+
ManagedAuthTimelineEvent,
|
|
303
304
|
ManagedAuthUpdateRequest,
|
|
304
305
|
SubmitFieldsRequest,
|
|
305
306
|
SubmitFieldsResponse,
|
|
@@ -317,6 +318,7 @@ Methods:
|
|
|
317
318
|
- <code title="get /auth/connections/{id}/events">client.auth.connections.<a href="./src/kernel/resources/auth/connections.py">follow</a>(id) -> <a href="./src/kernel/types/auth/connection_follow_response.py">ConnectionFollowResponse</a></code>
|
|
318
319
|
- <code title="post /auth/connections/{id}/login">client.auth.connections.<a href="./src/kernel/resources/auth/connections.py">login</a>(id, \*\*<a href="src/kernel/types/auth/connection_login_params.py">params</a>) -> <a href="./src/kernel/types/auth/login_response.py">LoginResponse</a></code>
|
|
319
320
|
- <code title="post /auth/connections/{id}/submit">client.auth.connections.<a href="./src/kernel/resources/auth/connections.py">submit</a>(id, \*\*<a href="src/kernel/types/auth/connection_submit_params.py">params</a>) -> <a href="./src/kernel/types/auth/submit_fields_response.py">SubmitFieldsResponse</a></code>
|
|
321
|
+
- <code title="get /auth/connections/{id}/timeline">client.auth.connections.<a href="./src/kernel/resources/auth/connections.py">timeline</a>(id, \*\*<a href="src/kernel/types/auth/connection_timeline_params.py">params</a>) -> <a href="./src/kernel/types/auth/managed_auth_timeline_event.py">SyncOffsetPagination[ManagedAuthTimelineEvent]</a></code>
|
|
320
322
|
|
|
321
323
|
# Proxies
|
|
322
324
|
|
|
@@ -441,6 +443,18 @@ Methods:
|
|
|
441
443
|
- <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>
|
|
442
444
|
- <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>
|
|
443
445
|
|
|
446
|
+
# AuditLogs
|
|
447
|
+
|
|
448
|
+
Types:
|
|
449
|
+
|
|
450
|
+
```python
|
|
451
|
+
from kernel.types import AuditLogEntry
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
Methods:
|
|
455
|
+
|
|
456
|
+
- <code title="get /audit-logs">client.audit_logs.<a href="./src/kernel/resources/audit_logs.py">list</a>(\*\*<a href="src/kernel/types/audit_log_list_params.py">params</a>) -> <a href="./src/kernel/types/audit_log_entry.py">SyncPageTokenPagination[AuditLogEntry]</a></code>
|
|
457
|
+
|
|
444
458
|
# APIKeys
|
|
445
459
|
|
|
446
460
|
Types:
|
|
@@ -54,6 +54,7 @@ if TYPE_CHECKING:
|
|
|
54
54
|
browsers,
|
|
55
55
|
profiles,
|
|
56
56
|
projects,
|
|
57
|
+
audit_logs,
|
|
57
58
|
extensions,
|
|
58
59
|
credentials,
|
|
59
60
|
deployments,
|
|
@@ -67,6 +68,7 @@ if TYPE_CHECKING:
|
|
|
67
68
|
from .resources.api_keys import APIKeysResource, AsyncAPIKeysResource
|
|
68
69
|
from .resources.profiles import ProfilesResource, AsyncProfilesResource
|
|
69
70
|
from .resources.auth.auth import AuthResource, AsyncAuthResource
|
|
71
|
+
from .resources.audit_logs import AuditLogsResource, AsyncAuditLogsResource
|
|
70
72
|
from .resources.extensions import ExtensionsResource, AsyncExtensionsResource
|
|
71
73
|
from .resources.credentials import CredentialsResource, AsyncCredentialsResource
|
|
72
74
|
from .resources.deployments import DeploymentsResource, AsyncDeploymentsResource
|
|
@@ -275,6 +277,13 @@ class Kernel(SyncAPIClient):
|
|
|
275
277
|
|
|
276
278
|
return OrganizationResource(self)
|
|
277
279
|
|
|
280
|
+
@cached_property
|
|
281
|
+
def audit_logs(self) -> AuditLogsResource:
|
|
282
|
+
"""Read audit log records for the authenticated organization."""
|
|
283
|
+
from .resources.audit_logs import AuditLogsResource
|
|
284
|
+
|
|
285
|
+
return AuditLogsResource(self)
|
|
286
|
+
|
|
278
287
|
@cached_property
|
|
279
288
|
def api_keys(self) -> APIKeysResource:
|
|
280
289
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -620,6 +629,13 @@ class AsyncKernel(AsyncAPIClient):
|
|
|
620
629
|
|
|
621
630
|
return AsyncOrganizationResource(self)
|
|
622
631
|
|
|
632
|
+
@cached_property
|
|
633
|
+
def audit_logs(self) -> AsyncAuditLogsResource:
|
|
634
|
+
"""Read audit log records for the authenticated organization."""
|
|
635
|
+
from .resources.audit_logs import AsyncAuditLogsResource
|
|
636
|
+
|
|
637
|
+
return AsyncAuditLogsResource(self)
|
|
638
|
+
|
|
623
639
|
@cached_property
|
|
624
640
|
def api_keys(self) -> AsyncAPIKeysResource:
|
|
625
641
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -873,6 +889,13 @@ class KernelWithRawResponse:
|
|
|
873
889
|
|
|
874
890
|
return OrganizationResourceWithRawResponse(self._client.organization)
|
|
875
891
|
|
|
892
|
+
@cached_property
|
|
893
|
+
def audit_logs(self) -> audit_logs.AuditLogsResourceWithRawResponse:
|
|
894
|
+
"""Read audit log records for the authenticated organization."""
|
|
895
|
+
from .resources.audit_logs import AuditLogsResourceWithRawResponse
|
|
896
|
+
|
|
897
|
+
return AuditLogsResourceWithRawResponse(self._client.audit_logs)
|
|
898
|
+
|
|
876
899
|
@cached_property
|
|
877
900
|
def api_keys(self) -> api_keys.APIKeysResourceWithRawResponse:
|
|
878
901
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -976,6 +999,13 @@ class AsyncKernelWithRawResponse:
|
|
|
976
999
|
|
|
977
1000
|
return AsyncOrganizationResourceWithRawResponse(self._client.organization)
|
|
978
1001
|
|
|
1002
|
+
@cached_property
|
|
1003
|
+
def audit_logs(self) -> audit_logs.AsyncAuditLogsResourceWithRawResponse:
|
|
1004
|
+
"""Read audit log records for the authenticated organization."""
|
|
1005
|
+
from .resources.audit_logs import AsyncAuditLogsResourceWithRawResponse
|
|
1006
|
+
|
|
1007
|
+
return AsyncAuditLogsResourceWithRawResponse(self._client.audit_logs)
|
|
1008
|
+
|
|
979
1009
|
@cached_property
|
|
980
1010
|
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithRawResponse:
|
|
981
1011
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -1079,6 +1109,13 @@ class KernelWithStreamedResponse:
|
|
|
1079
1109
|
|
|
1080
1110
|
return OrganizationResourceWithStreamingResponse(self._client.organization)
|
|
1081
1111
|
|
|
1112
|
+
@cached_property
|
|
1113
|
+
def audit_logs(self) -> audit_logs.AuditLogsResourceWithStreamingResponse:
|
|
1114
|
+
"""Read audit log records for the authenticated organization."""
|
|
1115
|
+
from .resources.audit_logs import AuditLogsResourceWithStreamingResponse
|
|
1116
|
+
|
|
1117
|
+
return AuditLogsResourceWithStreamingResponse(self._client.audit_logs)
|
|
1118
|
+
|
|
1082
1119
|
@cached_property
|
|
1083
1120
|
def api_keys(self) -> api_keys.APIKeysResourceWithStreamingResponse:
|
|
1084
1121
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -1182,6 +1219,13 @@ class AsyncKernelWithStreamedResponse:
|
|
|
1182
1219
|
|
|
1183
1220
|
return AsyncOrganizationResourceWithStreamingResponse(self._client.organization)
|
|
1184
1221
|
|
|
1222
|
+
@cached_property
|
|
1223
|
+
def audit_logs(self) -> audit_logs.AsyncAuditLogsResourceWithStreamingResponse:
|
|
1224
|
+
"""Read audit log records for the authenticated organization."""
|
|
1225
|
+
from .resources.audit_logs import AsyncAuditLogsResourceWithStreamingResponse
|
|
1226
|
+
|
|
1227
|
+
return AsyncAuditLogsResourceWithStreamingResponse(self._client.audit_logs)
|
|
1228
|
+
|
|
1185
1229
|
@cached_property
|
|
1186
1230
|
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithStreamingResponse:
|
|
1187
1231
|
"""Create and manage API keys for organization and project-scoped access."""
|
|
@@ -9,13 +9,93 @@ from ._utils import is_mapping, maybe_coerce_boolean, maybe_coerce_integer
|
|
|
9
9
|
from ._models import BaseModel
|
|
10
10
|
from ._base_client import BasePage, PageInfo, BaseSyncPage, BaseAsyncPage
|
|
11
11
|
|
|
12
|
-
__all__ = ["SyncOffsetPagination", "AsyncOffsetPagination"]
|
|
12
|
+
__all__ = ["SyncPageTokenPagination", "AsyncPageTokenPagination", "SyncOffsetPagination", "AsyncOffsetPagination"]
|
|
13
13
|
|
|
14
14
|
_BaseModelT = TypeVar("_BaseModelT", bound=BaseModel)
|
|
15
15
|
|
|
16
16
|
_T = TypeVar("_T")
|
|
17
17
|
|
|
18
18
|
|
|
19
|
+
class SyncPageTokenPagination(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
|
|
20
|
+
items: List[_T]
|
|
21
|
+
next_page_token: Optional[str] = None
|
|
22
|
+
has_more: Optional[bool] = None
|
|
23
|
+
|
|
24
|
+
@override
|
|
25
|
+
def _get_page_items(self) -> List[_T]:
|
|
26
|
+
items = self.items
|
|
27
|
+
if not items:
|
|
28
|
+
return []
|
|
29
|
+
return items
|
|
30
|
+
|
|
31
|
+
@override
|
|
32
|
+
def has_next_page(self) -> bool:
|
|
33
|
+
has_more = self.has_more
|
|
34
|
+
if has_more is not None and has_more is False:
|
|
35
|
+
return False
|
|
36
|
+
|
|
37
|
+
return super().has_next_page()
|
|
38
|
+
|
|
39
|
+
@override
|
|
40
|
+
def next_page_info(self) -> Optional[PageInfo]:
|
|
41
|
+
next_page_token = self.next_page_token
|
|
42
|
+
if not next_page_token:
|
|
43
|
+
return None
|
|
44
|
+
|
|
45
|
+
return PageInfo(params={"page_token": next_page_token})
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def build(cls: Type[_BaseModelT], *, response: Response, data: object) -> _BaseModelT: # noqa: ARG003
|
|
49
|
+
return cls.construct(
|
|
50
|
+
None,
|
|
51
|
+
**{
|
|
52
|
+
**(cast(Mapping[str, Any], data) if is_mapping(data) else {"items": data}),
|
|
53
|
+
"next_page_token": response.headers.get("X-Next-Page-Token"),
|
|
54
|
+
"has_more": maybe_coerce_boolean(response.headers.get("X-Has-More")),
|
|
55
|
+
},
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
class AsyncPageTokenPagination(BaseAsyncPage[_T], BasePage[_T], Generic[_T]):
|
|
60
|
+
items: List[_T]
|
|
61
|
+
next_page_token: Optional[str] = None
|
|
62
|
+
has_more: Optional[bool] = None
|
|
63
|
+
|
|
64
|
+
@override
|
|
65
|
+
def _get_page_items(self) -> List[_T]:
|
|
66
|
+
items = self.items
|
|
67
|
+
if not items:
|
|
68
|
+
return []
|
|
69
|
+
return items
|
|
70
|
+
|
|
71
|
+
@override
|
|
72
|
+
def has_next_page(self) -> bool:
|
|
73
|
+
has_more = self.has_more
|
|
74
|
+
if has_more is not None and has_more is False:
|
|
75
|
+
return False
|
|
76
|
+
|
|
77
|
+
return super().has_next_page()
|
|
78
|
+
|
|
79
|
+
@override
|
|
80
|
+
def next_page_info(self) -> Optional[PageInfo]:
|
|
81
|
+
next_page_token = self.next_page_token
|
|
82
|
+
if not next_page_token:
|
|
83
|
+
return None
|
|
84
|
+
|
|
85
|
+
return PageInfo(params={"page_token": next_page_token})
|
|
86
|
+
|
|
87
|
+
@classmethod
|
|
88
|
+
def build(cls: Type[_BaseModelT], *, response: Response, data: object) -> _BaseModelT: # noqa: ARG003
|
|
89
|
+
return cls.construct(
|
|
90
|
+
None,
|
|
91
|
+
**{
|
|
92
|
+
**(cast(Mapping[str, Any], data) if is_mapping(data) else {"items": data}),
|
|
93
|
+
"next_page_token": response.headers.get("X-Next-Page-Token"),
|
|
94
|
+
"has_more": maybe_coerce_boolean(response.headers.get("X-Has-More")),
|
|
95
|
+
},
|
|
96
|
+
)
|
|
97
|
+
|
|
98
|
+
|
|
19
99
|
class SyncOffsetPagination(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
|
|
20
100
|
items: List[_T]
|
|
21
101
|
has_more: Optional[bool] = None
|
|
@@ -56,6 +56,14 @@ from .projects import (
|
|
|
56
56
|
ProjectsResourceWithStreamingResponse,
|
|
57
57
|
AsyncProjectsResourceWithStreamingResponse,
|
|
58
58
|
)
|
|
59
|
+
from .audit_logs import (
|
|
60
|
+
AuditLogsResource,
|
|
61
|
+
AsyncAuditLogsResource,
|
|
62
|
+
AuditLogsResourceWithRawResponse,
|
|
63
|
+
AsyncAuditLogsResourceWithRawResponse,
|
|
64
|
+
AuditLogsResourceWithStreamingResponse,
|
|
65
|
+
AsyncAuditLogsResourceWithStreamingResponse,
|
|
66
|
+
)
|
|
59
67
|
from .extensions import (
|
|
60
68
|
ExtensionsResource,
|
|
61
69
|
AsyncExtensionsResource,
|
|
@@ -186,6 +194,12 @@ __all__ = [
|
|
|
186
194
|
"AsyncOrganizationResourceWithRawResponse",
|
|
187
195
|
"OrganizationResourceWithStreamingResponse",
|
|
188
196
|
"AsyncOrganizationResourceWithStreamingResponse",
|
|
197
|
+
"AuditLogsResource",
|
|
198
|
+
"AsyncAuditLogsResource",
|
|
199
|
+
"AuditLogsResourceWithRawResponse",
|
|
200
|
+
"AsyncAuditLogsResourceWithRawResponse",
|
|
201
|
+
"AuditLogsResourceWithStreamingResponse",
|
|
202
|
+
"AsyncAuditLogsResourceWithStreamingResponse",
|
|
189
203
|
"APIKeysResource",
|
|
190
204
|
"AsyncAPIKeysResource",
|
|
191
205
|
"APIKeysResourceWithRawResponse",
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Union
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
|
|
8
|
+
import httpx
|
|
9
|
+
|
|
10
|
+
from ..types import audit_log_list_params
|
|
11
|
+
from .._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
|
|
12
|
+
from .._utils import maybe_transform
|
|
13
|
+
from .._compat import cached_property
|
|
14
|
+
from .._resource import SyncAPIResource, AsyncAPIResource
|
|
15
|
+
from .._response import (
|
|
16
|
+
to_raw_response_wrapper,
|
|
17
|
+
to_streamed_response_wrapper,
|
|
18
|
+
async_to_raw_response_wrapper,
|
|
19
|
+
async_to_streamed_response_wrapper,
|
|
20
|
+
)
|
|
21
|
+
from ..pagination import SyncPageTokenPagination, AsyncPageTokenPagination
|
|
22
|
+
from .._base_client import AsyncPaginator, make_request_options
|
|
23
|
+
from ..types.audit_log_entry import AuditLogEntry
|
|
24
|
+
|
|
25
|
+
__all__ = ["AuditLogsResource", "AsyncAuditLogsResource"]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class AuditLogsResource(SyncAPIResource):
|
|
29
|
+
"""Read audit log records for the authenticated organization."""
|
|
30
|
+
|
|
31
|
+
@cached_property
|
|
32
|
+
def with_raw_response(self) -> AuditLogsResourceWithRawResponse:
|
|
33
|
+
"""
|
|
34
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
35
|
+
the raw response object instead of the parsed content.
|
|
36
|
+
|
|
37
|
+
For more information, see https://www.github.com/kernel/kernel-python-sdk#accessing-raw-response-data-eg-headers
|
|
38
|
+
"""
|
|
39
|
+
return AuditLogsResourceWithRawResponse(self)
|
|
40
|
+
|
|
41
|
+
@cached_property
|
|
42
|
+
def with_streaming_response(self) -> AuditLogsResourceWithStreamingResponse:
|
|
43
|
+
"""
|
|
44
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
45
|
+
|
|
46
|
+
For more information, see https://www.github.com/kernel/kernel-python-sdk#with_streaming_response
|
|
47
|
+
"""
|
|
48
|
+
return AuditLogsResourceWithStreamingResponse(self)
|
|
49
|
+
|
|
50
|
+
def list(
|
|
51
|
+
self,
|
|
52
|
+
*,
|
|
53
|
+
end: Union[str, datetime],
|
|
54
|
+
start: Union[str, datetime],
|
|
55
|
+
auth_strategy: str | Omit = omit,
|
|
56
|
+
exclude_method: str | Omit = omit,
|
|
57
|
+
limit: int | Omit = omit,
|
|
58
|
+
method: str | Omit = omit,
|
|
59
|
+
page_token: str | Omit = omit,
|
|
60
|
+
search: str | Omit = omit,
|
|
61
|
+
search_user_id: SequenceNotStr[str] | Omit = omit,
|
|
62
|
+
service: str | Omit = omit,
|
|
63
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
64
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
65
|
+
extra_headers: Headers | None = None,
|
|
66
|
+
extra_query: Query | None = None,
|
|
67
|
+
extra_body: Body | None = None,
|
|
68
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
69
|
+
) -> SyncPageTokenPagination[AuditLogEntry]:
|
|
70
|
+
"""API for searching audit logs.
|
|
71
|
+
|
|
72
|
+
Limited to at most 30 day search, returns up to
|
|
73
|
+
100 records per page. Not recommended for bulk export.
|
|
74
|
+
|
|
75
|
+
Args:
|
|
76
|
+
end: Upper bound (exclusive) for the audit record timestamp.
|
|
77
|
+
|
|
78
|
+
start: Lower bound (inclusive) for the audit record timestamp.
|
|
79
|
+
|
|
80
|
+
auth_strategy: Filter by authentication strategy.
|
|
81
|
+
|
|
82
|
+
exclude_method: Filter out results by HTTP method.
|
|
83
|
+
|
|
84
|
+
limit: Maximum number of results to return.
|
|
85
|
+
|
|
86
|
+
method: Filter by HTTP method.
|
|
87
|
+
|
|
88
|
+
page_token: Opaque page token from X-Next-Page-Token for the next page of older records.
|
|
89
|
+
|
|
90
|
+
search: Free-text search over path, user ID, email, client IP, and status.
|
|
91
|
+
|
|
92
|
+
search_user_id: Additional user IDs to OR into free-text search.
|
|
93
|
+
|
|
94
|
+
service: Filter by service name.
|
|
95
|
+
|
|
96
|
+
extra_headers: Send extra headers
|
|
97
|
+
|
|
98
|
+
extra_query: Add additional query parameters to the request
|
|
99
|
+
|
|
100
|
+
extra_body: Add additional JSON properties to the request
|
|
101
|
+
|
|
102
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
103
|
+
"""
|
|
104
|
+
return self._get_api_list(
|
|
105
|
+
"/audit-logs",
|
|
106
|
+
page=SyncPageTokenPagination[AuditLogEntry],
|
|
107
|
+
options=make_request_options(
|
|
108
|
+
extra_headers=extra_headers,
|
|
109
|
+
extra_query=extra_query,
|
|
110
|
+
extra_body=extra_body,
|
|
111
|
+
timeout=timeout,
|
|
112
|
+
query=maybe_transform(
|
|
113
|
+
{
|
|
114
|
+
"end": end,
|
|
115
|
+
"start": start,
|
|
116
|
+
"auth_strategy": auth_strategy,
|
|
117
|
+
"exclude_method": exclude_method,
|
|
118
|
+
"limit": limit,
|
|
119
|
+
"method": method,
|
|
120
|
+
"page_token": page_token,
|
|
121
|
+
"search": search,
|
|
122
|
+
"search_user_id": search_user_id,
|
|
123
|
+
"service": service,
|
|
124
|
+
},
|
|
125
|
+
audit_log_list_params.AuditLogListParams,
|
|
126
|
+
),
|
|
127
|
+
),
|
|
128
|
+
model=AuditLogEntry,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
class AsyncAuditLogsResource(AsyncAPIResource):
|
|
133
|
+
"""Read audit log records for the authenticated organization."""
|
|
134
|
+
|
|
135
|
+
@cached_property
|
|
136
|
+
def with_raw_response(self) -> AsyncAuditLogsResourceWithRawResponse:
|
|
137
|
+
"""
|
|
138
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
139
|
+
the raw response object instead of the parsed content.
|
|
140
|
+
|
|
141
|
+
For more information, see https://www.github.com/kernel/kernel-python-sdk#accessing-raw-response-data-eg-headers
|
|
142
|
+
"""
|
|
143
|
+
return AsyncAuditLogsResourceWithRawResponse(self)
|
|
144
|
+
|
|
145
|
+
@cached_property
|
|
146
|
+
def with_streaming_response(self) -> AsyncAuditLogsResourceWithStreamingResponse:
|
|
147
|
+
"""
|
|
148
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
149
|
+
|
|
150
|
+
For more information, see https://www.github.com/kernel/kernel-python-sdk#with_streaming_response
|
|
151
|
+
"""
|
|
152
|
+
return AsyncAuditLogsResourceWithStreamingResponse(self)
|
|
153
|
+
|
|
154
|
+
def list(
|
|
155
|
+
self,
|
|
156
|
+
*,
|
|
157
|
+
end: Union[str, datetime],
|
|
158
|
+
start: Union[str, datetime],
|
|
159
|
+
auth_strategy: str | Omit = omit,
|
|
160
|
+
exclude_method: str | Omit = omit,
|
|
161
|
+
limit: int | Omit = omit,
|
|
162
|
+
method: str | Omit = omit,
|
|
163
|
+
page_token: str | Omit = omit,
|
|
164
|
+
search: str | Omit = omit,
|
|
165
|
+
search_user_id: SequenceNotStr[str] | Omit = omit,
|
|
166
|
+
service: str | Omit = omit,
|
|
167
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
168
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
169
|
+
extra_headers: Headers | None = None,
|
|
170
|
+
extra_query: Query | None = None,
|
|
171
|
+
extra_body: Body | None = None,
|
|
172
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
173
|
+
) -> AsyncPaginator[AuditLogEntry, AsyncPageTokenPagination[AuditLogEntry]]:
|
|
174
|
+
"""API for searching audit logs.
|
|
175
|
+
|
|
176
|
+
Limited to at most 30 day search, returns up to
|
|
177
|
+
100 records per page. Not recommended for bulk export.
|
|
178
|
+
|
|
179
|
+
Args:
|
|
180
|
+
end: Upper bound (exclusive) for the audit record timestamp.
|
|
181
|
+
|
|
182
|
+
start: Lower bound (inclusive) for the audit record timestamp.
|
|
183
|
+
|
|
184
|
+
auth_strategy: Filter by authentication strategy.
|
|
185
|
+
|
|
186
|
+
exclude_method: Filter out results by HTTP method.
|
|
187
|
+
|
|
188
|
+
limit: Maximum number of results to return.
|
|
189
|
+
|
|
190
|
+
method: Filter by HTTP method.
|
|
191
|
+
|
|
192
|
+
page_token: Opaque page token from X-Next-Page-Token for the next page of older records.
|
|
193
|
+
|
|
194
|
+
search: Free-text search over path, user ID, email, client IP, and status.
|
|
195
|
+
|
|
196
|
+
search_user_id: Additional user IDs to OR into free-text search.
|
|
197
|
+
|
|
198
|
+
service: Filter by service name.
|
|
199
|
+
|
|
200
|
+
extra_headers: Send extra headers
|
|
201
|
+
|
|
202
|
+
extra_query: Add additional query parameters to the request
|
|
203
|
+
|
|
204
|
+
extra_body: Add additional JSON properties to the request
|
|
205
|
+
|
|
206
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
207
|
+
"""
|
|
208
|
+
return self._get_api_list(
|
|
209
|
+
"/audit-logs",
|
|
210
|
+
page=AsyncPageTokenPagination[AuditLogEntry],
|
|
211
|
+
options=make_request_options(
|
|
212
|
+
extra_headers=extra_headers,
|
|
213
|
+
extra_query=extra_query,
|
|
214
|
+
extra_body=extra_body,
|
|
215
|
+
timeout=timeout,
|
|
216
|
+
query=maybe_transform(
|
|
217
|
+
{
|
|
218
|
+
"end": end,
|
|
219
|
+
"start": start,
|
|
220
|
+
"auth_strategy": auth_strategy,
|
|
221
|
+
"exclude_method": exclude_method,
|
|
222
|
+
"limit": limit,
|
|
223
|
+
"method": method,
|
|
224
|
+
"page_token": page_token,
|
|
225
|
+
"search": search,
|
|
226
|
+
"search_user_id": search_user_id,
|
|
227
|
+
"service": service,
|
|
228
|
+
},
|
|
229
|
+
audit_log_list_params.AuditLogListParams,
|
|
230
|
+
),
|
|
231
|
+
),
|
|
232
|
+
model=AuditLogEntry,
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
class AuditLogsResourceWithRawResponse:
|
|
237
|
+
def __init__(self, audit_logs: AuditLogsResource) -> None:
|
|
238
|
+
self._audit_logs = audit_logs
|
|
239
|
+
|
|
240
|
+
self.list = to_raw_response_wrapper(
|
|
241
|
+
audit_logs.list,
|
|
242
|
+
)
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
class AsyncAuditLogsResourceWithRawResponse:
|
|
246
|
+
def __init__(self, audit_logs: AsyncAuditLogsResource) -> None:
|
|
247
|
+
self._audit_logs = audit_logs
|
|
248
|
+
|
|
249
|
+
self.list = async_to_raw_response_wrapper(
|
|
250
|
+
audit_logs.list,
|
|
251
|
+
)
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
class AuditLogsResourceWithStreamingResponse:
|
|
255
|
+
def __init__(self, audit_logs: AuditLogsResource) -> None:
|
|
256
|
+
self._audit_logs = audit_logs
|
|
257
|
+
|
|
258
|
+
self.list = to_streamed_response_wrapper(
|
|
259
|
+
audit_logs.list,
|
|
260
|
+
)
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
class AsyncAuditLogsResourceWithStreamingResponse:
|
|
264
|
+
def __init__(self, audit_logs: AsyncAuditLogsResource) -> None:
|
|
265
|
+
self._audit_logs = audit_logs
|
|
266
|
+
|
|
267
|
+
self.list = async_to_streamed_response_wrapper(
|
|
268
|
+
audit_logs.list,
|
|
269
|
+
)
|