bytekit-sdk 0.9.2__tar.gz → 0.9.4__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.
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/.gitignore +2 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/CHANGELOG.md +83 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/PKG-INFO +13 -19
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/README.md +12 -18
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/pyproject.toml +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/__init__.py +15 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/account/get_account.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/bulk/create_bulk.py +19 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/bulk/delete_bulk.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/bulk/get_bulk.py +48 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/bulk/list_bulk_screenshots.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch/get_fetch.py +43 -12
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch/post_fetch.py +16 -4
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch_bulk/create_fetch_bulk.py +19 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch_bulk/get_fetch_bulk.py +44 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/create_monitor.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/delete_monitor.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/get_monitor.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/list_monitor_captures.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/list_monitors.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/update_monitor.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape/create_scrape.py +117 -25
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape/get_scrape.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape_bulk/create_scrape_bulk.py +43 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape_bulk/get_scrape_bulk.py +48 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/screenshots/create_screenshot.py +20 -4
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/screenshots/get_screenshot.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/search/create_search.py +45 -11
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/sitemap/create_sitemap.py +64 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/sitemap/get_sitemap.py +4 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/usage/get_usage.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/usage/get_usage_by_endpoint.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/usage/get_usage_daily.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/webhooks/list_webhook_deliveries.py +15 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/webhooks/retry_webhook_delivery.py +4 -0
- bytekit_sdk-0.9.4/src/bytekit/facade.py +248 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/__init__.py +90 -10
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_session_response.py +16 -4
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/billing_node.py +5 -4
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_mandatory_scrape_item_formats.py +45 -0
- bytekit_sdk-0.9.4/src/bytekit/models/bulk_mandatory_scrape_item_formats_json_type_0.py +47 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults.py +39 -7
- bytekit_sdk-0.9.2/src/bytekit/models/create_bulk_body_defaults_formats_item.py → bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_body_defaults_formats_item_type_0.py +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item.py +40 -7
- bytekit_sdk-0.9.2/src/bytekit/models/create_bulk_body_items_item_formats_item.py → bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_body_items_item_formats_item_type_0.py +1 -1
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403.py +91 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403_blocked_item.py +82 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403_blocked_item_error_code.py +9 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403_blocked_item_rule_type.py +11 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403_error.py +69 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_bulk_response_403_error_code.py +8 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403.py +97 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403_blocked_item.py +82 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403_blocked_item_error_code.py +9 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403_blocked_item_rule_type.py +11 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403_error.py +71 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_fetch_bulk_response_403_error_code.py +8 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_body_defaults.py +50 -7
- bytekit_sdk-0.9.2/src/bytekit/models/create_scrape_bulk_body_defaults_formats_item.py → bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_body_defaults_formats_item_type_0.py +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_body_items_item.py +45 -7
- bytekit_sdk-0.9.2/src/bytekit/models/create_scrape_bulk_body_items_item_formats_item.py → bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_body_items_item_formats_item_type_0.py +1 -1
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403.py +97 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403_blocked_item.py +84 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403_blocked_item_error_code.py +9 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403_blocked_item_rule_type.py +11 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403_error.py +71 -0
- bytekit_sdk-0.9.4/src/bytekit/models/create_scrape_bulk_response_403_error_code.py +8 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_body.py +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_response_503.py +1 -3
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/fetch_request.py +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_0.py +3 -2
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_0_artifacts.py +64 -2
- bytekit_sdk-0.9.4/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_0_artifacts_json_type_0.py +48 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_error_envelope_error.py +14 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_error_envelope_error_code.py +1 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_formats.py +21 -0
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_formats_json.py +112 -0
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_formats_json_data_type_0.py +44 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request.py +45 -9
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_request_json_format.py +116 -0
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_request_json_format_model.py +9 -0
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_request_json_format_schema.py +49 -0
- bytekit_sdk-0.9.4/src/bytekit/models/scrape_request_json_format_type.py +8 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_success_envelope.py +2 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_warning.py +8 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_warning_code.py +7 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request.py +11 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_request.py +18 -3
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_request_process_type_0.py +6 -4
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response.py +31 -5
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response_process_type_0.py +1 -1
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/webhook_delivery_response_event_type.py +1 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/LICENSE +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/account/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/bulk/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/fetch_bulk/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/monitors/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/scrape_bulk/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/screenshots/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/search/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/sitemap/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/usage/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/api/webhooks/__init__.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/client.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/errors.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_api_key.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_api_key_environment.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_auto_topup.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_plan.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_subscription.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_subscription_plan.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_bearer_response_subscription_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_session_response_notifications.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/account_session_response_plan.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bandwidth_balance.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/billing_factor.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/billing_factor_name.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_completed_webhook.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_job_counters.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_mandatory_scrape_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_mandatory_scrape_item_error.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_mandatory_scrape_item_terminal_outcome.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/bulk_mandatory_scrape_item_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/capture_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/capture_response_outcome.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/clip.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_device.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_device_scale_factor_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_device_scale_factor_type_2_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_device_scale_factor_type_3_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_viewport_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_defaults_wait_until.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item_device.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item_scenario.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item_viewport_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_body_items_item_wait_until.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_fetch_bulk_body.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_fetch_bulk_body_defaults.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_fetch_bulk_body_urls_item_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_fetch_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_fetch_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_body.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_body_custom.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_body_items_item_custom.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_scrape_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_body_date_range.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_body_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_response_200_results_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_response_200_results_item_image.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/create_search_response_503_error.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/credit_balance.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/delete_bulk_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/delete_bulk_response_200_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/error.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/error_error.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/error_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/fetch_request_cache_ttl_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/fetch_request_custom.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_bulk_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_bulk_response_200_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_items_item_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_items_item_type_0_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_items_item_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_items_item_type_1_terminal_outcome.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_items_item_type_1_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_200_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_items_item_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_items_item_type_0_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_items_item_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_items_item_type_1_terminal_outcome.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_items_item_type_1_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_bulk_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_fetch_cache_ttl_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_scrape_bulk_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_scrape_bulk_response_200_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_scrape_bulk_response_202.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_scrape_bulk_response_202_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_scrape_bulk_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_by_endpoint_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_by_endpoint_response_200_rows_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_by_endpoint_response_200_rows_item_endpoint.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_by_endpoint_response_200_totals.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_daily_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_daily_response_200_data_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/get_usage_response_200_plan_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_0_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_0_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_1_terminal_outcome.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_response_200_items_item_type_1_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_bulk_screenshots_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_monitor_captures_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_monitors_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_monitors_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_webhook_deliveries_response_200.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/list_webhook_deliveries_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/metadata.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_interval_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_notify_on.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_options.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_scrape_options.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_request_webhook_headers.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_create_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response_interval_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response_metadata_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_response_webhook_headers_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_interval_type.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_notify_on.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_options.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_scrape_options.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/monitor_update_request_webhook_headers.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_error_envelope.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_error_envelope_schema_version.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_error_envelope_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_markdown_tokens.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_metadata.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_queued_envelope.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_queued_envelope_schema_version.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_queued_envelope_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_cache_ttl_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_custom.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_events_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_formats_item.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_markdown_images.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_markdown_links.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_markdown_mode.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_token_encoding.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_request_x_internal_scrape_path.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_scored_image.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_scored_link.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_stats.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_success_envelope_cache.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_success_envelope_custom.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_success_envelope_schema_version.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_success_envelope_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_table.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/scrape_table_kind.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_device.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_device_scale_factor_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_device_scale_factor_type_2_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_device_scale_factor_type_3_type_1.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_format.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_request_wait_until.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/screenshot_response_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_request_process_type_0_options.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_request_strategy.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response_cache.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response_metadata_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response_sources_type_0.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/sitemap_response_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/viewport.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/webhook_delivery_response.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/models/webhook_delivery_response_status.py +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/py.typed +0 -0
- {bytekit_sdk-0.9.2 → bytekit_sdk-0.9.4}/src/bytekit/types.py +0 -0
|
@@ -38,6 +38,8 @@ yarn-error.log*
|
|
|
38
38
|
coverage/
|
|
39
39
|
tests/e2e/results.json
|
|
40
40
|
tests/e2e/billing/results.json
|
|
41
|
+
tests/e2e/billing/cleanup-residue.json
|
|
42
|
+
tests/e2e/billing/clerk-residue.json
|
|
41
43
|
tests/e2e/.sweep/
|
|
42
44
|
.playwright-mcp/
|
|
43
45
|
# Local Playwright persistent context for ux-design/markup-verification (Chromium profile + Clerk session)
|
|
@@ -5,6 +5,89 @@ PyPI distribution: `bytekit-sdk`. Import name: `bytekit`.
|
|
|
5
5
|
|
|
6
6
|
## Unreleased
|
|
7
7
|
|
|
8
|
+
## 0.9.4
|
|
9
|
+
|
|
10
|
+
_Unreleased; 0.9.3 is the latest on PyPI._
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- **The `json` format is accepted in the bulk `formats` too** (#5133) — the `defaults` and
|
|
15
|
+
`items[]` `formats` of `create_scrape_bulk` and `create_bulk` take the string formats or one
|
|
16
|
+
`ScrapeRequestJsonFormat` entry, as `ScrapeRequest.formats` already does. The `schema` of a
|
|
17
|
+
`json` entry is a free-form object, so it takes any JSON Schema. **Breaking for the bulk enum
|
|
18
|
+
imports:** the four bulk `formats` item enums that were a single string enum are now a union of
|
|
19
|
+
that enum and the `json` entry, so `CreateBulkBodyDefaultsFormatsItem`,
|
|
20
|
+
`CreateBulkBodyItemsItemFormatsItem`, `CreateScrapeBulkBodyDefaultsFormatsItem` and
|
|
21
|
+
`CreateScrapeBulkBodyItemsItemFormatsItem` become `...FormatsItemType0` (the enum, in
|
|
22
|
+
`models/<name>_type_0.py`); `ScrapeRequestFormatsItem` is unchanged. The bulk-result
|
|
23
|
+
`artifacts` and bounded `formats` objects gain `json`. Regenerated from
|
|
24
|
+
`docs/api/openapi.yaml`.
|
|
25
|
+
|
|
26
|
+
## 0.9.3
|
|
27
|
+
|
|
28
|
+
_Release cut 2026-10-03._
|
|
29
|
+
|
|
30
|
+
### Added
|
|
31
|
+
|
|
32
|
+
- **`bytekit.ByteKit` and `bytekit.ByteKitError`** (#5351) — a two-line entry point that raises on
|
|
33
|
+
any non-2xx, the way the TypeScript SDK does: `client = ByteKit(api_key=...)`, then
|
|
34
|
+
`client.scrape.create(url=..., formats=["markdown"])`. Every API operation is a method on a resource (`scrape`, `screenshots`,
|
|
35
|
+
`bulk`, `monitors`, `usage`, ...), delegated to the generated `bytekit.api.*` function. Any
|
|
36
|
+
non-2xx response, a `200` scrape carrying the `failed` envelope, and any response the generated
|
|
37
|
+
operation cannot parse (an undocumented status, a non-JSON or drifted body) raises `ByteKitError` with
|
|
38
|
+
`status_code`, `code` and `message`; it subclasses `UnexpectedStatus`, so existing handlers keep
|
|
39
|
+
catching it. A transport failure propagates as the `httpx` exception. `AuthenticatedClient`,
|
|
40
|
+
`bytekit.api.*` and the returned `Error` models are unchanged.
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
|
|
44
|
+
- **`BillingNode.raw_bytes` and `ScrapeSuccessEnvelope.content_length` docstrings name the
|
|
45
|
+
hosted-browser tier** (#5120) — a page served by that tier reports the browser's full measured
|
|
46
|
+
transfer as its byte basis. Docstring only, no model field changes. Regenerated from
|
|
47
|
+
`docs/api/openapi.yaml`.
|
|
48
|
+
- **`ScrapeWarningCode` gains the five extraction codes** (#5130) — `EXTRACT_VALIDATION_FAILED`,
|
|
49
|
+
`EXHAUSTED_RETRIES`, `CONTENT_TRUNCATED`, `MODEL_REFUSAL` and `EMPTY_EXTRACTION`, so a scrape
|
|
50
|
+
response carrying one of them parses instead of failing on an unknown enum member. Regenerated
|
|
51
|
+
from `docs/api/openapi.yaml`.
|
|
52
|
+
- **`ScreenshotRequest` gains `async_`, and `create_scrape` gains an `async_` query argument**
|
|
53
|
+
(#5349) — `async` is now accepted as a body field or a `?async=true` query parameter on both
|
|
54
|
+
`/v1/scrape` and `/v1/screenshots`; either one turns async on, and `false` in one never cancels
|
|
55
|
+
`true` in the other. Regenerated from `docs/api/openapi.yaml`.
|
|
56
|
+
- `WebhookDeliveryResponseEventType` gains `MONITOR_SUSPENDED = "monitor.suspended"` (#5408). The
|
|
57
|
+
worker sends that event when a monitor is suspended because the account ran out of balance, and
|
|
58
|
+
`GET /v1/webhook-deliveries` can return it; before, parsing such a delivery raised `ValueError`.
|
|
59
|
+
Regenerated from `docs/api/openapi.yaml`.
|
|
60
|
+
- The README quick start now uses the `ByteKit` facade (#5409), calling
|
|
61
|
+
`client.scrape.create(url=..., formats=["markdown"])` rather than `AuthenticatedClient` with
|
|
62
|
+
`create_scrape.sync(...)`, and the text under it says what the facade raises. The Error handling
|
|
63
|
+
section is unchanged. Documentation only, no code change.
|
|
64
|
+
- **Models and docstrings follow the corrected spec** (#5410) — `ScrapeRequest.formats` items are
|
|
65
|
+
`ScrapeRequestFormatsItem | ScrapeRequestJsonFormat` (the four string formats, or the `json`
|
|
66
|
+
object entry), and `ScrapeFormats` gains `json`. `create_screenshot`, `create_sitemap` and the
|
|
67
|
+
three bulk creates type a `403` response, `create_scrape` a `503`, and `get_fetch` gains a
|
|
68
|
+
`custom` argument (a JSON-encoded object). `create_search` documents that its `503` can be the
|
|
69
|
+
`Error` envelope (`billing_entitlement_missing`) as well as the vendor-masked
|
|
70
|
+
`CreateSearchResponse503`, and caps `query` at 2048 characters. **Behavior change:** a
|
|
71
|
+
`billing_entitlement_missing` `503` from `create_search` is now returned as an `Error` model
|
|
72
|
+
instead of raising `UnexpectedStatus`; the vendor-masked body parses as before. Regenerated from
|
|
73
|
+
`docs/api/openapi.yaml`.
|
|
74
|
+
|
|
75
|
+
### Fixed
|
|
76
|
+
|
|
77
|
+
- `401 Unauthorized` now returns a typed `Error` instead of raising `UnexpectedStatus` on every
|
|
78
|
+
bearer-authenticated operation (#5114). The spec declared `401` on only one of them, so a
|
|
79
|
+
rejected API key hit the undocumented-status arm of the generated client — the same gap #3784
|
|
80
|
+
closed for `402`. A JSON `Error` envelope (`invalid_api_key`, or `unauthorized` when an operation
|
|
81
|
+
that also accepts a dashboard session gets no usable `Authorization` header) is now returned, and `sync_detailed(...).status_code` is `401`;
|
|
82
|
+
a non-JSON `401` still raises `UnexpectedStatus`, and `AuthenticatedClient.search()` still raises
|
|
83
|
+
on a `401`. Regenerated from the corrected spec:
|
|
84
|
+
|
|
85
|
+
```python
|
|
86
|
+
result = create_scrape.sync(client=client, body=body)
|
|
87
|
+
if isinstance(result, Error):
|
|
88
|
+
print(result.error.code) # invalid_api_key | unauthorized
|
|
89
|
+
```
|
|
90
|
+
|
|
8
91
|
## 0.9.2
|
|
9
92
|
|
|
10
93
|
_Release cut 2026-10-02._
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: bytekit-sdk
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: Official Python SDK for the ByteKit API
|
|
5
5
|
Project-URL: Homepage, https://bytekit.com
|
|
6
6
|
Project-URL: Repository, https://github.com/Hunt-Labs-Inc/ByteKit
|
|
@@ -43,31 +43,25 @@ The installed version is available as `bytekit.__version__`.
|
|
|
43
43
|
## Quick start
|
|
44
44
|
|
|
45
45
|
```python
|
|
46
|
-
from bytekit import
|
|
47
|
-
from bytekit.
|
|
48
|
-
from bytekit.models.scrape_request import ScrapeRequest
|
|
49
|
-
from bytekit.models.scrape_request_formats_item import ScrapeRequestFormatsItem
|
|
50
|
-
from bytekit.models.scrape_success_envelope import ScrapeSuccessEnvelope
|
|
46
|
+
from bytekit import ByteKit
|
|
47
|
+
from bytekit.models import ScrapeSuccessEnvelope
|
|
51
48
|
|
|
52
|
-
# base_url defaults to https://api.bytekit.com, so only the
|
|
53
|
-
client =
|
|
49
|
+
# base_url defaults to https://api.bytekit.com, so only the API key is required.
|
|
50
|
+
client = ByteKit(api_key="sk_live_your_api_key_here")
|
|
54
51
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
url="https://example.com",
|
|
59
|
-
# Ask for markdown explicitly. `formats` is a list of enum members, not plain
|
|
60
|
-
# strings. Omit it and the server returns raw HTML instead, leaving
|
|
61
|
-
# `formats.markdown` unset.
|
|
62
|
-
formats=[ScrapeRequestFormatsItem.MARKDOWN],
|
|
63
|
-
),
|
|
64
|
-
)
|
|
52
|
+
# Ask for markdown explicitly. Omit `formats` and the server returns raw HTML, leaving
|
|
53
|
+
# `formats.markdown` unset.
|
|
54
|
+
result = client.scrape.create(url="https://example.com", formats=["markdown"])
|
|
65
55
|
|
|
66
56
|
if isinstance(result, ScrapeSuccessEnvelope):
|
|
67
57
|
print(result.formats.markdown)
|
|
68
58
|
```
|
|
69
59
|
|
|
70
|
-
|
|
60
|
+
`ByteKit` raises `ByteKitError` on any non-2xx response and on a scrape that comes back with the
|
|
61
|
+
`failed` envelope, so `result` here is either the `ScrapeSuccessEnvelope` or, for a request that
|
|
62
|
+
was queued, a `ScrapeQueuedEnvelope`. The generated operations the facade wraps
|
|
63
|
+
(`create_scrape.sync` and the rest) return a typed `Error` for a documented error status instead;
|
|
64
|
+
see [Error handling](#error-handling) for that contract.
|
|
71
65
|
|
|
72
66
|
### Error handling
|
|
73
67
|
|
|
@@ -17,31 +17,25 @@ The installed version is available as `bytekit.__version__`.
|
|
|
17
17
|
## Quick start
|
|
18
18
|
|
|
19
19
|
```python
|
|
20
|
-
from bytekit import
|
|
21
|
-
from bytekit.
|
|
22
|
-
from bytekit.models.scrape_request import ScrapeRequest
|
|
23
|
-
from bytekit.models.scrape_request_formats_item import ScrapeRequestFormatsItem
|
|
24
|
-
from bytekit.models.scrape_success_envelope import ScrapeSuccessEnvelope
|
|
20
|
+
from bytekit import ByteKit
|
|
21
|
+
from bytekit.models import ScrapeSuccessEnvelope
|
|
25
22
|
|
|
26
|
-
# base_url defaults to https://api.bytekit.com, so only the
|
|
27
|
-
client =
|
|
23
|
+
# base_url defaults to https://api.bytekit.com, so only the API key is required.
|
|
24
|
+
client = ByteKit(api_key="sk_live_your_api_key_here")
|
|
28
25
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
url="https://example.com",
|
|
33
|
-
# Ask for markdown explicitly. `formats` is a list of enum members, not plain
|
|
34
|
-
# strings. Omit it and the server returns raw HTML instead, leaving
|
|
35
|
-
# `formats.markdown` unset.
|
|
36
|
-
formats=[ScrapeRequestFormatsItem.MARKDOWN],
|
|
37
|
-
),
|
|
38
|
-
)
|
|
26
|
+
# Ask for markdown explicitly. Omit `formats` and the server returns raw HTML, leaving
|
|
27
|
+
# `formats.markdown` unset.
|
|
28
|
+
result = client.scrape.create(url="https://example.com", formats=["markdown"])
|
|
39
29
|
|
|
40
30
|
if isinstance(result, ScrapeSuccessEnvelope):
|
|
41
31
|
print(result.formats.markdown)
|
|
42
32
|
```
|
|
43
33
|
|
|
44
|
-
|
|
34
|
+
`ByteKit` raises `ByteKitError` on any non-2xx response and on a scrape that comes back with the
|
|
35
|
+
`failed` envelope, so `result` here is either the `ScrapeSuccessEnvelope` or, for a request that
|
|
36
|
+
was queued, a `ScrapeQueuedEnvelope`. The generated operations the facade wraps
|
|
37
|
+
(`create_scrape.sync` and the rest) return a typed `Error` for a documented error status instead;
|
|
38
|
+
see [Error handling](#error-handling) for that contract.
|
|
45
39
|
|
|
46
40
|
### Error handling
|
|
47
41
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
# `pip install bytekit-sdk` yields a working `import bytekit`. Mirrors the npm sibling
|
|
8
8
|
# @hunt-labs/bytekit-sdk.
|
|
9
9
|
name = "bytekit-sdk"
|
|
10
|
-
version = "0.9.
|
|
10
|
+
version = "0.9.4"
|
|
11
11
|
description = "Official Python SDK for the ByteKit API"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
requires-python = ">=3.10"
|
|
@@ -37,3 +37,18 @@ except PackageNotFoundError:
|
|
|
37
37
|
# own test suite, which runs install-free via pyproject.toml's `pythonpath = ["src"]`.
|
|
38
38
|
# A valid PEP 440 development version, never an empty string and never an import-time raise.
|
|
39
39
|
__version__ = "0.0.0.dev0"
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
# BYTEKIT-HANDWRITTEN: ByteKit facade export (#5351, injected post-generation)
|
|
43
|
+
#
|
|
44
|
+
# This fragment is APPENDED to the generated src/bytekit/__init__.py by
|
|
45
|
+
# scripts/inject-handwritten.py, which installs the module itself as facade.py in the same run.
|
|
46
|
+
#
|
|
47
|
+
# Same shape as models_bulk_completed_webhook_export.py: `__all__` is a TUPLE the generator closed
|
|
48
|
+
# above, so an append extends it by rebinding rather than editing the generated block.
|
|
49
|
+
from .facade import ByteKit, ByteKitError
|
|
50
|
+
|
|
51
|
+
__all__ = __all__ + (
|
|
52
|
+
"ByteKit",
|
|
53
|
+
"ByteKitError",
|
|
54
|
+
)
|
|
@@ -44,6 +44,10 @@ def _parse_response(
|
|
|
44
44
|
response_200 = errors.bytekit_parse(_parse_response_200, client=client, response=response)
|
|
45
45
|
|
|
46
46
|
return response_200
|
|
47
|
+
if response.status_code == 401:
|
|
48
|
+
response_401 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
49
|
+
|
|
50
|
+
return response_401
|
|
47
51
|
if response.status_code == 429:
|
|
48
52
|
response_429 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
49
53
|
|
|
@@ -6,6 +6,7 @@ from ... import errors
|
|
|
6
6
|
from ...client import AuthenticatedClient, Client
|
|
7
7
|
from ...models.create_bulk_body import CreateBulkBody
|
|
8
8
|
from ...models.create_bulk_response_202 import CreateBulkResponse202
|
|
9
|
+
from ...models.create_bulk_response_403 import CreateBulkResponse403
|
|
9
10
|
from ...models.error import Error
|
|
10
11
|
from ...types import Response
|
|
11
12
|
|
|
@@ -31,7 +32,7 @@ def _get_kwargs(
|
|
|
31
32
|
|
|
32
33
|
def _parse_response(
|
|
33
34
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
34
|
-
) -> Optional[Union[CreateBulkResponse202, Error]]:
|
|
35
|
+
) -> Optional[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
35
36
|
if response.status_code == 202:
|
|
36
37
|
response_202 = errors.bytekit_parse(CreateBulkResponse202.from_dict, client=client, response=response)
|
|
37
38
|
|
|
@@ -40,10 +41,18 @@ def _parse_response(
|
|
|
40
41
|
response_400 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
41
42
|
|
|
42
43
|
return response_400
|
|
44
|
+
if response.status_code == 401:
|
|
45
|
+
response_401 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
46
|
+
|
|
47
|
+
return response_401
|
|
43
48
|
if response.status_code == 402:
|
|
44
49
|
response_402 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
45
50
|
|
|
46
51
|
return response_402
|
|
52
|
+
if response.status_code == 403:
|
|
53
|
+
response_403 = errors.bytekit_parse(CreateBulkResponse403.from_dict, client=client, response=response)
|
|
54
|
+
|
|
55
|
+
return response_403
|
|
47
56
|
if response.status_code == 422:
|
|
48
57
|
response_422 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
49
58
|
|
|
@@ -56,7 +65,7 @@ def _parse_response(
|
|
|
56
65
|
|
|
57
66
|
def _build_response(
|
|
58
67
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
59
|
-
) -> Response[Union[CreateBulkResponse202, Error]]:
|
|
68
|
+
) -> Response[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
60
69
|
return Response(
|
|
61
70
|
status_code=errors.bytekit_status_code(response.status_code), # BYTEKIT-STATUS-COERCE
|
|
62
71
|
content=response.content,
|
|
@@ -69,7 +78,7 @@ def sync_detailed(
|
|
|
69
78
|
*,
|
|
70
79
|
client: Union[AuthenticatedClient, Client],
|
|
71
80
|
body: CreateBulkBody,
|
|
72
|
-
) -> Response[Union[CreateBulkResponse202, Error]]:
|
|
81
|
+
) -> Response[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
73
82
|
"""Create mixed bulk job
|
|
74
83
|
|
|
75
84
|
Enqueues screenshots or scrapes in a single batch.
|
|
@@ -118,7 +127,7 @@ def sync_detailed(
|
|
|
118
127
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
119
128
|
|
|
120
129
|
Returns:
|
|
121
|
-
Response[Union[CreateBulkResponse202, Error]]
|
|
130
|
+
Response[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]
|
|
122
131
|
"""
|
|
123
132
|
|
|
124
133
|
kwargs = _get_kwargs(
|
|
@@ -136,7 +145,7 @@ def sync(
|
|
|
136
145
|
*,
|
|
137
146
|
client: Union[AuthenticatedClient, Client],
|
|
138
147
|
body: CreateBulkBody,
|
|
139
|
-
) -> Optional[Union[CreateBulkResponse202, Error]]:
|
|
148
|
+
) -> Optional[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
140
149
|
"""Create mixed bulk job
|
|
141
150
|
|
|
142
151
|
Enqueues screenshots or scrapes in a single batch.
|
|
@@ -185,7 +194,7 @@ def sync(
|
|
|
185
194
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
186
195
|
|
|
187
196
|
Returns:
|
|
188
|
-
Union[CreateBulkResponse202, Error]
|
|
197
|
+
Union[CreateBulkResponse202, CreateBulkResponse403, Error]
|
|
189
198
|
"""
|
|
190
199
|
|
|
191
200
|
return sync_detailed(
|
|
@@ -198,7 +207,7 @@ async def asyncio_detailed(
|
|
|
198
207
|
*,
|
|
199
208
|
client: Union[AuthenticatedClient, Client],
|
|
200
209
|
body: CreateBulkBody,
|
|
201
|
-
) -> Response[Union[CreateBulkResponse202, Error]]:
|
|
210
|
+
) -> Response[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
202
211
|
"""Create mixed bulk job
|
|
203
212
|
|
|
204
213
|
Enqueues screenshots or scrapes in a single batch.
|
|
@@ -247,7 +256,7 @@ async def asyncio_detailed(
|
|
|
247
256
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
248
257
|
|
|
249
258
|
Returns:
|
|
250
|
-
Response[Union[CreateBulkResponse202, Error]]
|
|
259
|
+
Response[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]
|
|
251
260
|
"""
|
|
252
261
|
|
|
253
262
|
kwargs = _get_kwargs(
|
|
@@ -263,7 +272,7 @@ async def asyncio(
|
|
|
263
272
|
*,
|
|
264
273
|
client: Union[AuthenticatedClient, Client],
|
|
265
274
|
body: CreateBulkBody,
|
|
266
|
-
) -> Optional[Union[CreateBulkResponse202, Error]]:
|
|
275
|
+
) -> Optional[Union[CreateBulkResponse202, CreateBulkResponse403, Error]]:
|
|
267
276
|
"""Create mixed bulk job
|
|
268
277
|
|
|
269
278
|
Enqueues screenshots or scrapes in a single batch.
|
|
@@ -312,7 +321,7 @@ async def asyncio(
|
|
|
312
321
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
313
322
|
|
|
314
323
|
Returns:
|
|
315
|
-
Union[CreateBulkResponse202, Error]
|
|
324
|
+
Union[CreateBulkResponse202, CreateBulkResponse403, Error]
|
|
316
325
|
"""
|
|
317
326
|
|
|
318
327
|
return (
|
|
@@ -28,6 +28,10 @@ def _parse_response(
|
|
|
28
28
|
response_200 = errors.bytekit_parse(DeleteBulkResponse200.from_dict, client=client, response=response)
|
|
29
29
|
|
|
30
30
|
return response_200
|
|
31
|
+
if response.status_code == 401:
|
|
32
|
+
response_401 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
33
|
+
|
|
34
|
+
return response_401
|
|
31
35
|
if response.status_code == 404:
|
|
32
36
|
response_404 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
33
37
|
|
|
@@ -33,6 +33,10 @@ def _parse_response(
|
|
|
33
33
|
response_202 = errors.bytekit_parse(GetBulkResponse202.from_dict, client=client, response=response)
|
|
34
34
|
|
|
35
35
|
return response_202
|
|
36
|
+
if response.status_code == 401:
|
|
37
|
+
response_401 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
38
|
+
|
|
39
|
+
return response_401
|
|
36
40
|
if response.status_code == 404:
|
|
37
41
|
response_404 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
38
42
|
|
|
@@ -61,6 +65,17 @@ def sync_detailed(
|
|
|
61
65
|
) -> Response[Union[Error, GetBulkResponse200, GetBulkResponse202]]:
|
|
62
66
|
"""Get bulk job status
|
|
63
67
|
|
|
68
|
+
Returns the job envelope. Items are listed by `GET /v1/bulk/{id}/screenshots`.
|
|
69
|
+
|
|
70
|
+
**Cancelled by the platform.** When the account can no longer spend (its bandwidth
|
|
71
|
+
balance is exhausted, or the account is deleted) while items are still pending, ByteKit
|
|
72
|
+
cancels the job itself. It then reads `status: cancelled` even though you never called
|
|
73
|
+
`DELETE /v1/bulk/{id}`, and the cancellation sends no webhook.
|
|
74
|
+
|
|
75
|
+
**Job ids from other create routes.** The job is looked up by account only, so the id
|
|
76
|
+
of a job created by `POST /v1/scrape/bulk` or `POST /v1/fetch/bulk` is found here too, not
|
|
77
|
+
a `404`, with that job's envelope. An id from another account answers `404`.
|
|
78
|
+
|
|
64
79
|
Args:
|
|
65
80
|
id (str):
|
|
66
81
|
|
|
@@ -90,6 +105,17 @@ def sync(
|
|
|
90
105
|
) -> Optional[Union[Error, GetBulkResponse200, GetBulkResponse202]]:
|
|
91
106
|
"""Get bulk job status
|
|
92
107
|
|
|
108
|
+
Returns the job envelope. Items are listed by `GET /v1/bulk/{id}/screenshots`.
|
|
109
|
+
|
|
110
|
+
**Cancelled by the platform.** When the account can no longer spend (its bandwidth
|
|
111
|
+
balance is exhausted, or the account is deleted) while items are still pending, ByteKit
|
|
112
|
+
cancels the job itself. It then reads `status: cancelled` even though you never called
|
|
113
|
+
`DELETE /v1/bulk/{id}`, and the cancellation sends no webhook.
|
|
114
|
+
|
|
115
|
+
**Job ids from other create routes.** The job is looked up by account only, so the id
|
|
116
|
+
of a job created by `POST /v1/scrape/bulk` or `POST /v1/fetch/bulk` is found here too, not
|
|
117
|
+
a `404`, with that job's envelope. An id from another account answers `404`.
|
|
118
|
+
|
|
93
119
|
Args:
|
|
94
120
|
id (str):
|
|
95
121
|
|
|
@@ -114,6 +140,17 @@ async def asyncio_detailed(
|
|
|
114
140
|
) -> Response[Union[Error, GetBulkResponse200, GetBulkResponse202]]:
|
|
115
141
|
"""Get bulk job status
|
|
116
142
|
|
|
143
|
+
Returns the job envelope. Items are listed by `GET /v1/bulk/{id}/screenshots`.
|
|
144
|
+
|
|
145
|
+
**Cancelled by the platform.** When the account can no longer spend (its bandwidth
|
|
146
|
+
balance is exhausted, or the account is deleted) while items are still pending, ByteKit
|
|
147
|
+
cancels the job itself. It then reads `status: cancelled` even though you never called
|
|
148
|
+
`DELETE /v1/bulk/{id}`, and the cancellation sends no webhook.
|
|
149
|
+
|
|
150
|
+
**Job ids from other create routes.** The job is looked up by account only, so the id
|
|
151
|
+
of a job created by `POST /v1/scrape/bulk` or `POST /v1/fetch/bulk` is found here too, not
|
|
152
|
+
a `404`, with that job's envelope. An id from another account answers `404`.
|
|
153
|
+
|
|
117
154
|
Args:
|
|
118
155
|
id (str):
|
|
119
156
|
|
|
@@ -141,6 +178,17 @@ async def asyncio(
|
|
|
141
178
|
) -> Optional[Union[Error, GetBulkResponse200, GetBulkResponse202]]:
|
|
142
179
|
"""Get bulk job status
|
|
143
180
|
|
|
181
|
+
Returns the job envelope. Items are listed by `GET /v1/bulk/{id}/screenshots`.
|
|
182
|
+
|
|
183
|
+
**Cancelled by the platform.** When the account can no longer spend (its bandwidth
|
|
184
|
+
balance is exhausted, or the account is deleted) while items are still pending, ByteKit
|
|
185
|
+
cancels the job itself. It then reads `status: cancelled` even though you never called
|
|
186
|
+
`DELETE /v1/bulk/{id}`, and the cancellation sends no webhook.
|
|
187
|
+
|
|
188
|
+
**Job ids from other create routes.** The job is looked up by account only, so the id
|
|
189
|
+
of a job created by `POST /v1/scrape/bulk` or `POST /v1/fetch/bulk` is found here too, not
|
|
190
|
+
a `404`, with that job's envelope. An id from another account answers `404`.
|
|
191
|
+
|
|
144
192
|
Args:
|
|
145
193
|
id (str):
|
|
146
194
|
|
|
@@ -5,6 +5,7 @@ import httpx
|
|
|
5
5
|
|
|
6
6
|
from ... import errors
|
|
7
7
|
from ...client import AuthenticatedClient, Client
|
|
8
|
+
from ...models.error import Error
|
|
8
9
|
from ...models.list_bulk_screenshots_response_200 import ListBulkScreenshotsResponse200
|
|
9
10
|
from ...models.list_bulk_screenshots_status import ListBulkScreenshotsStatus
|
|
10
11
|
from ...types import UNSET, Response, Unset
|
|
@@ -42,11 +43,15 @@ def _get_kwargs(
|
|
|
42
43
|
|
|
43
44
|
def _parse_response(
|
|
44
45
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
45
|
-
) -> Optional[ListBulkScreenshotsResponse200]:
|
|
46
|
+
) -> Optional[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
46
47
|
if response.status_code == 200:
|
|
47
48
|
response_200 = errors.bytekit_parse(ListBulkScreenshotsResponse200.from_dict, client=client, response=response)
|
|
48
49
|
|
|
49
50
|
return response_200
|
|
51
|
+
if response.status_code == 401:
|
|
52
|
+
response_401 = errors.bytekit_parse(Error.from_dict, client=client, response=response)
|
|
53
|
+
|
|
54
|
+
return response_401
|
|
50
55
|
if client.raise_on_unexpected_status:
|
|
51
56
|
raise errors.bytekit_unexpected(response) # BYTEKIT-OP-GUARD
|
|
52
57
|
else:
|
|
@@ -55,7 +60,7 @@ def _parse_response(
|
|
|
55
60
|
|
|
56
61
|
def _build_response(
|
|
57
62
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
58
|
-
) -> Response[ListBulkScreenshotsResponse200]:
|
|
63
|
+
) -> Response[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
59
64
|
return Response(
|
|
60
65
|
status_code=errors.bytekit_status_code(response.status_code), # BYTEKIT-STATUS-COERCE
|
|
61
66
|
content=response.content,
|
|
@@ -71,7 +76,7 @@ def sync_detailed(
|
|
|
71
76
|
cursor: Union[Unset, str] = UNSET,
|
|
72
77
|
limit: Union[Unset, int] = UNSET,
|
|
73
78
|
status: Union[Unset, ListBulkScreenshotsStatus] = UNSET,
|
|
74
|
-
) -> Response[ListBulkScreenshotsResponse200]:
|
|
79
|
+
) -> Response[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
75
80
|
"""List bulk job items
|
|
76
81
|
|
|
77
82
|
Returns the bulk job's items, discriminated by `type`.
|
|
@@ -107,7 +112,7 @@ def sync_detailed(
|
|
|
107
112
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
108
113
|
|
|
109
114
|
Returns:
|
|
110
|
-
Response[ListBulkScreenshotsResponse200]
|
|
115
|
+
Response[Union[Error, ListBulkScreenshotsResponse200]]
|
|
111
116
|
"""
|
|
112
117
|
|
|
113
118
|
kwargs = _get_kwargs(
|
|
@@ -131,7 +136,7 @@ def sync(
|
|
|
131
136
|
cursor: Union[Unset, str] = UNSET,
|
|
132
137
|
limit: Union[Unset, int] = UNSET,
|
|
133
138
|
status: Union[Unset, ListBulkScreenshotsStatus] = UNSET,
|
|
134
|
-
) -> Optional[ListBulkScreenshotsResponse200]:
|
|
139
|
+
) -> Optional[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
135
140
|
"""List bulk job items
|
|
136
141
|
|
|
137
142
|
Returns the bulk job's items, discriminated by `type`.
|
|
@@ -167,7 +172,7 @@ def sync(
|
|
|
167
172
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
168
173
|
|
|
169
174
|
Returns:
|
|
170
|
-
ListBulkScreenshotsResponse200
|
|
175
|
+
Union[Error, ListBulkScreenshotsResponse200]
|
|
171
176
|
"""
|
|
172
177
|
|
|
173
178
|
return sync_detailed(
|
|
@@ -186,7 +191,7 @@ async def asyncio_detailed(
|
|
|
186
191
|
cursor: Union[Unset, str] = UNSET,
|
|
187
192
|
limit: Union[Unset, int] = UNSET,
|
|
188
193
|
status: Union[Unset, ListBulkScreenshotsStatus] = UNSET,
|
|
189
|
-
) -> Response[ListBulkScreenshotsResponse200]:
|
|
194
|
+
) -> Response[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
190
195
|
"""List bulk job items
|
|
191
196
|
|
|
192
197
|
Returns the bulk job's items, discriminated by `type`.
|
|
@@ -222,7 +227,7 @@ async def asyncio_detailed(
|
|
|
222
227
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
223
228
|
|
|
224
229
|
Returns:
|
|
225
|
-
Response[ListBulkScreenshotsResponse200]
|
|
230
|
+
Response[Union[Error, ListBulkScreenshotsResponse200]]
|
|
226
231
|
"""
|
|
227
232
|
|
|
228
233
|
kwargs = _get_kwargs(
|
|
@@ -244,7 +249,7 @@ async def asyncio(
|
|
|
244
249
|
cursor: Union[Unset, str] = UNSET,
|
|
245
250
|
limit: Union[Unset, int] = UNSET,
|
|
246
251
|
status: Union[Unset, ListBulkScreenshotsStatus] = UNSET,
|
|
247
|
-
) -> Optional[ListBulkScreenshotsResponse200]:
|
|
252
|
+
) -> Optional[Union[Error, ListBulkScreenshotsResponse200]]:
|
|
248
253
|
"""List bulk job items
|
|
249
254
|
|
|
250
255
|
Returns the bulk job's items, discriminated by `type`.
|
|
@@ -280,7 +285,7 @@ async def asyncio(
|
|
|
280
285
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
281
286
|
|
|
282
287
|
Returns:
|
|
283
|
-
ListBulkScreenshotsResponse200
|
|
288
|
+
Union[Error, ListBulkScreenshotsResponse200]
|
|
284
289
|
"""
|
|
285
290
|
|
|
286
291
|
return (
|