{"files":{"SKILL.md":"---\nname: cloudflare-api\ndescription: \"Cloudflare API skill. Use when working with Cloudflare for accounts, certificates, internal. Covers 2726 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Cloudflare API\nAPI version: 4.0.0\n\n## Auth\nApiKey X-Auth-Email in header | ApiKey X-Auth-Key in header | Bearer bearer | ApiKey X-Auth-User-Service-Key in header\n\n## Base URL\nhttps://api.cloudflare.com/client/v4\n\n## Setup\n1. Set Authorization header with Bearer token\n2. GET /accounts -- list accounts\n3. POST /accounts -- create first account\n\n## Endpoints\n2726 endpoints across 15 groups. See references/api-spec.lap for full details.\n\n### Accounts\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /accounts | List Accounts |\n| POST | /accounts | Create an account |\n| POST | /accounts/move | Batch move accounts |\n| GET | /accounts/{accountId}/resource-library/applications | Get  applications |\n| POST | /accounts/{accountId}/resource-library/applications | Create application |\n| GET | /accounts/{accountId}/resource-library/applications/{id} | Get application By Id |\n| PATCH | /accounts/{accountId}/resource-library/applications/{id} | Update application version |\n| GET | /accounts/{accountId}/resource-library/categories | Get all application categories |\n| GET | /accounts/{accountId}/resource-library/categories/{id} | Show application category by ID |\n| GET | /accounts/{account_identifier}/custom_pages | List custom pages |\n| GET | /accounts/{account_identifier}/custom_pages/assets | List custom assets |\n| POST | /accounts/{account_identifier}/custom_pages/assets | Create a custom asset |\n| DELETE | /accounts/{account_identifier}/custom_pages/assets/{asset_name} | Delete a custom asset |\n| GET | /accounts/{account_identifier}/custom_pages/assets/{asset_name} | Get a custom asset |\n| PUT | /accounts/{account_identifier}/custom_pages/assets/{asset_name} | Update a custom asset |\n| GET | /accounts/{account_identifier}/custom_pages/{identifier} | Get a custom page |\n| PUT | /accounts/{account_identifier}/custom_pages/{identifier} | Update a custom page |\n| DELETE | /accounts/{account_id} | Delete a specific account |\n| GET | /accounts/{account_id} | Account Details |\n| PUT | /accounts/{account_id} | Update Account |\n| GET | /accounts/{account_id}/abuse-reports | List abuse reports |\n| GET | /accounts/{account_id}/abuse-reports/{report_id}/emails | List abuse report emails |\n| GET | /accounts/{account_id}/abuse-reports/{report_id}/mitigations | List abuse report mitigations |\n| POST | /accounts/{account_id}/abuse-reports/{report_id}/mitigations/appeal | Request review on mitigations |\n| GET | /accounts/{account_id}/abuse-reports/{report_param} | Abuse Report Details |\n| POST | /accounts/{account_id}/abuse-reports/{report_param} | Submit an abuse report |\n| GET | /accounts/{account_id}/access/ai-controls/mcp/portals | List MCP Portals |\n| POST | /accounts/{account_id}/access/ai-controls/mcp/portals | Create a new MCP Portal |\n| DELETE | /accounts/{account_id}/access/ai-controls/mcp/portals/{id} | Delete a MCP Portal |\n| GET | /accounts/{account_id}/access/ai-controls/mcp/portals/{id} | Read details of an MCP Portal |\n| PUT | /accounts/{account_id}/access/ai-controls/mcp/portals/{id} | Update a MCP Portal |\n| GET | /accounts/{account_id}/access/ai-controls/mcp/servers | List MCP Servers |\n| POST | /accounts/{account_id}/access/ai-controls/mcp/servers | Create a new MCP Server |\n| DELETE | /accounts/{account_id}/access/ai-controls/mcp/servers/{id} | Delete a MCP Server |\n| GET | /accounts/{account_id}/access/ai-controls/mcp/servers/{id} | Read the details of a MCP Server |\n| PUT | /accounts/{account_id}/access/ai-controls/mcp/servers/{id} | Update a MCP Server |\n| POST | /accounts/{account_id}/access/ai-controls/mcp/servers/{id}/sync | Sync MCP Server Capabilities |\n| GET | /accounts/{account_id}/access/apps | List Access applications |\n| POST | /accounts/{account_id}/access/apps | Add an Access application |\n| GET | /accounts/{account_id}/access/apps/ca | List short-lived certificate CAs |\n| DELETE | /accounts/{account_id}/access/apps/{app_id} | Delete an Access application |\n| GET | /accounts/{account_id}/access/apps/{app_id} | Get an Access application |\n| PUT | /accounts/{account_id}/access/apps/{app_id} | Update an Access application |\n| DELETE | /accounts/{account_id}/access/apps/{app_id}/ca | Delete a short-lived certificate CA |\n| GET | /accounts/{account_id}/access/apps/{app_id}/ca | Get a short-lived certificate CA |\n| POST | /accounts/{account_id}/access/apps/{app_id}/ca | Create a short-lived certificate CA |\n| GET | /accounts/{account_id}/access/apps/{app_id}/policies | List Access application policies |\n| POST | /accounts/{account_id}/access/apps/{app_id}/policies | Create an Access application policy |\n| DELETE | /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id} | Delete an Access application policy |\n| GET | /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id} | Get an Access application policy |\n| PUT | /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id} | Update an Access application policy |\n| PUT | /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}/make_reusable | Convert an Access application policy to a reusable policy |\n| POST | /accounts/{account_id}/access/apps/{app_id}/revoke_tokens | Revoke application tokens |\n| PATCH | /accounts/{account_id}/access/apps/{app_id}/settings | Update Access application settings |\n| PUT | /accounts/{account_id}/access/apps/{app_id}/settings | Update Access application settings |\n| GET | /accounts/{account_id}/access/apps/{app_id}/user_policy_checks | Test Access policies |\n| GET | /accounts/{account_id}/access/bookmarks | List Bookmark applications |\n| DELETE | /accounts/{account_id}/access/bookmarks/{bookmark_id} | Delete a Bookmark application |\n| GET | /accounts/{account_id}/access/bookmarks/{bookmark_id} | Get a Bookmark application |\n| POST | /accounts/{account_id}/access/bookmarks/{bookmark_id} | Create a Bookmark application |\n| PUT | /accounts/{account_id}/access/bookmarks/{bookmark_id} | Update a Bookmark application |\n| GET | /accounts/{account_id}/access/certificates | List mTLS certificates |\n| POST | /accounts/{account_id}/access/certificates | Add an mTLS certificate |\n| GET | /accounts/{account_id}/access/certificates/settings | List all mTLS hostname settings |\n| PUT | /accounts/{account_id}/access/certificates/settings | Update an mTLS certificate's hostname settings |\n| DELETE | /accounts/{account_id}/access/certificates/{certificate_id} | Delete an mTLS certificate |\n| GET | /accounts/{account_id}/access/certificates/{certificate_id} | Get an mTLS certificate |\n| PUT | /accounts/{account_id}/access/certificates/{certificate_id} | Update an mTLS certificate |\n| GET | /accounts/{account_id}/access/custom_pages | List custom pages |\n| POST | /accounts/{account_id}/access/custom_pages | Create a custom page |\n| DELETE | /accounts/{account_id}/access/custom_pages/{custom_page_id} | Delete a custom page |\n| GET | /accounts/{account_id}/access/custom_pages/{custom_page_id} | Get a custom page |\n| PUT | /accounts/{account_id}/access/custom_pages/{custom_page_id} | Update a custom page |\n| GET | /accounts/{account_id}/access/gateway_ca | List SSH Certificate Authorities (CA) |\n| POST | /accounts/{account_id}/access/gateway_ca | Add a new SSH Certificate Authority (CA) |\n| DELETE | /accounts/{account_id}/access/gateway_ca/{certificate_id} | Delete an SSH Certificate Authority (CA) |\n| GET | /accounts/{account_id}/access/groups | List Access groups |\n| POST | /accounts/{account_id}/access/groups | Create an Access group |\n| DELETE | /accounts/{account_id}/access/groups/{group_id} | Delete an Access group |\n| GET | /accounts/{account_id}/access/groups/{group_id} | Get an Access group |\n| PUT | /accounts/{account_id}/access/groups/{group_id} | Update an Access group |\n| GET | /accounts/{account_id}/access/identity_providers | List Access identity providers |\n| POST | /accounts/{account_id}/access/identity_providers | Add an Access identity provider |\n| DELETE | /accounts/{account_id}/access/identity_providers/{identity_provider_id} | Delete an Access identity provider |\n| GET | /accounts/{account_id}/access/identity_providers/{identity_provider_id} | Get an Access identity provider |\n| PUT | /accounts/{account_id}/access/identity_providers/{identity_provider_id} | Update an Access identity provider |\n| GET | /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/groups | List SCIM Group resources |\n| GET | /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/users | List SCIM User resources |\n| GET | /accounts/{account_id}/access/keys | Get the Access key configuration |\n| PUT | /accounts/{account_id}/access/keys | Update the Access key configuration |\n| POST | /accounts/{account_id}/access/keys/rotate | Rotate Access keys |\n| GET | /accounts/{account_id}/access/logs/access_requests | Get Access authentication logs |\n| GET | /accounts/{account_id}/access/logs/scim/updates | List Access SCIM update logs |\n| GET | /accounts/{account_id}/access/organizations | Get your Zero Trust organization |\n| POST | /accounts/{account_id}/access/organizations | Create your Zero Trust organization |\n| PUT | /accounts/{account_id}/access/organizations | Update your Zero Trust organization |\n| GET | /accounts/{account_id}/access/organizations/doh | Get your Zero Trust organization DoH settings |\n| PUT | /accounts/{account_id}/access/organizations/doh | Update your Zero Trust organization DoH settings |\n| POST | /accounts/{account_id}/access/organizations/revoke_user | Revoke all Access tokens for a user |\n| GET | /accounts/{account_id}/access/policies | List Access reusable policies |\n| POST | /accounts/{account_id}/access/policies | Create an Access reusable policy |\n| DELETE | /accounts/{account_id}/access/policies/{policy_id} | Delete an Access reusable policy |\n| GET | /accounts/{account_id}/access/policies/{policy_id} | Get an Access reusable policy |\n| PUT | /accounts/{account_id}/access/policies/{policy_id} | Update an Access reusable policy |\n| POST | /accounts/{account_id}/access/policy-tests | Start Access policy test |\n| GET | /accounts/{account_id}/access/policy-tests/{policy_test_id} | Get the current status of a given Access policy test |\n| GET | /accounts/{account_id}/access/policy-tests/{policy_test_id}/users | Get an Access policy test users page |\n| PATCH | /accounts/{account_id}/access/seats | Update a user seat |\n| GET | /accounts/{account_id}/access/service_tokens | List service tokens |\n| POST | /accounts/{account_id}/access/service_tokens | Create a service token |\n| DELETE | /accounts/{account_id}/access/service_tokens/{service_token_id} | Delete a service token |\n| GET | /accounts/{account_id}/access/service_tokens/{service_token_id} | Get a service token |\n| PUT | /accounts/{account_id}/access/service_tokens/{service_token_id} | Update a service token |\n| POST | /accounts/{account_id}/access/service_tokens/{service_token_id}/refresh | Refresh a service token |\n| POST | /accounts/{account_id}/access/service_tokens/{service_token_id}/rotate | Rotate a service token |\n| GET | /accounts/{account_id}/access/tags | List tags |\n| POST | /accounts/{account_id}/access/tags | Create a tag |\n| DELETE | /accounts/{account_id}/access/tags/{tag_name} | Delete a tag |\n| GET | /accounts/{account_id}/access/tags/{tag_name} | Get a tag |\n| PUT | /accounts/{account_id}/access/tags/{tag_name} | Update a tag |\n| GET | /accounts/{account_id}/access/users | Get users |\n| POST | /accounts/{account_id}/access/users | Create a user |\n| DELETE | /accounts/{account_id}/access/users/{user_id} | Delete a user |\n| GET | /accounts/{account_id}/access/users/{user_id} | Get a user |\n| PUT | /accounts/{account_id}/access/users/{user_id} | Update a user |\n| GET | /accounts/{account_id}/access/users/{user_id}/active_sessions | Get active sessions |\n| GET | /accounts/{account_id}/access/users/{user_id}/active_sessions/{nonce} | Get single active session |\n| GET | /accounts/{account_id}/access/users/{user_id}/failed_logins | Get failed logins |\n| GET | /accounts/{account_id}/access/users/{user_id}/last_seen_identity | Get last seen identity |\n| DELETE | /accounts/{account_id}/access/users/{user_id}/mfa_authenticators/{authenticator_id} | Delete a user's MFA device |\n| GET | /accounts/{account_id}/addressing/address_maps | List Address Maps |\n| POST | /accounts/{account_id}/addressing/address_maps | Create Address Map |\n| DELETE | /accounts/{account_id}/addressing/address_maps/{address_map_id} | Delete Address Map |\n| GET | /accounts/{account_id}/addressing/address_maps/{address_map_id} | Address Map Details |\n| PATCH | /accounts/{account_id}/addressing/address_maps/{address_map_id} | Update Address Map |\n| DELETE | /accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id} | Remove an account membership from an Address Map |\n| PUT | /accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id} | Add an account membership to an Address Map |\n| DELETE | /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address} | Remove an IP from an Address Map |\n| PUT | /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address} | Add an IP to an Address Map |\n| DELETE | /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id} | Remove a zone membership from an Address Map |\n| PUT | /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id} | Add a zone membership to an Address Map |\n| GET | /accounts/{account_id}/addressing/leases | List Leases |\n| POST | /accounts/{account_id}/addressing/loa_documents | Upload LOA Document |\n| GET | /accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download | Download LOA Document |\n| GET | /accounts/{account_id}/addressing/prefixes | List Prefixes |\n| POST | /accounts/{account_id}/addressing/prefixes | Add Prefix |\n| DELETE | /accounts/{account_id}/addressing/prefixes/{prefix_id} | Delete Prefix |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id} | Prefix Details |\n| PATCH | /accounts/{account_id}/addressing/prefixes/{prefix_id} | Update Prefix Description |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes | List BGP Prefixes |\n| POST | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes | Create BGP Prefix |\n| DELETE | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id} | Delete BGP Prefix |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id} | Fetch BGP Prefix |\n| PATCH | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id} | Update BGP Prefix |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status | Get Advertisement Status |\n| PATCH | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status | Update Prefix Dynamic Advertisement Status |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings | List Service Bindings |\n| POST | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings | Create Service Binding |\n| DELETE | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id} | Delete Service Binding |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id} | Get Service Binding |\n| GET | /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations | List Prefix Delegations |\n| POST | /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations | Create Prefix Delegation |\n| DELETE | /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations/{delegation_id} | Delete Prefix Delegation |\n| POST | /accounts/{account_id}/addressing/prefixes/{prefix_id}/validate | Validate Prefix |\n| GET | /accounts/{account_id}/addressing/regional_hostnames/regions | List Regions |\n| GET | /accounts/{account_id}/addressing/services | List Services |\n| GET | /accounts/{account_id}/ai-gateway/evaluation-types | List Evaluators |\n| GET | /accounts/{account_id}/ai-gateway/gateways | List Gateways |\n| POST | /accounts/{account_id}/ai-gateway/gateways | Create a new Gateway |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets | List Datasets |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets | Create a new Dataset |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id} | Delete a Dataset |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id} | Fetch a Dataset |\n| PUT | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id} | Update a Dataset |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations | List Evaluations |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations | Create a new Evaluation |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id} | Delete a Evaluation |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id} | Fetch a Evaluation |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs | Delete Gateway Logs |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs | List Gateway Logs |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id} | Get Gateway Log Detail |\n| PATCH | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id} | Patch Gateway Log |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/request | Get Gateway Log Request |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/response | Get Gateway Log Response |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs | List Provider Configs |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs | Create a new Provider Configs |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id} | Delete a Provider Configs |\n| PUT | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id} | Update a Provider Configs |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes | List all AI Gateway Dynamic Routes. |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes | Create a new AI Gateway Dynamic Route. |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id} | Delete an AI Gateway Dynamic Route. |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id} | Get an AI Gateway Dynamic Route. |\n| PATCH | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id} | Update an AI Gateway Dynamic Route. |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments | List all AI Gateway Dynamic Route Deployments. |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments | Create a new AI Gateway Dynamic Route Deployment. |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions | List all AI Gateway Dynamic Route Versions. |\n| POST | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions | Create a new AI Gateway Dynamic Route Version. |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions/{version_id} | Get an AI Gateway Dynamic Route Version. |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/url/{provider} | Get Gateway URL |\n| DELETE | /accounts/{account_id}/ai-gateway/gateways/{id} | Delete a Gateway |\n| GET | /accounts/{account_id}/ai-gateway/gateways/{id} | Fetch a Gateway |\n| PUT | /accounts/{account_id}/ai-gateway/gateways/{id} | Update a Gateway |\n| GET | /accounts/{account_id}/ai-search/instances | List instances. |\n| POST | /accounts/{account_id}/ai-search/instances | Create new instances. |\n| DELETE | /accounts/{account_id}/ai-search/instances/{id} | Delete instances. |\n| GET | /accounts/{account_id}/ai-search/instances/{id} | Read instances. |\n| PUT | /accounts/{account_id}/ai-search/instances/{id} | Update instances. |\n| POST | /accounts/{account_id}/ai-search/instances/{id}/chat/completions | Chat Completions |\n| GET | /accounts/{account_id}/ai-search/instances/{id}/jobs | List Jobs |\n| POST | /accounts/{account_id}/ai-search/instances/{id}/jobs | Create new job |\n| GET | /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id} | Get a Job Details |\n| PATCH | /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id} | Change Job Status |\n| GET | /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}/logs | List Job Logs |\n| POST | /accounts/{account_id}/ai-search/instances/{id}/search | Search |\n| GET | /accounts/{account_id}/ai-search/instances/{id}/stats | Stats |\n| GET | /accounts/{account_id}/ai-search/tokens | List tokens. |\n| POST | /accounts/{account_id}/ai-search/tokens | Create new tokens. |\n| DELETE | /accounts/{account_id}/ai-search/tokens/{id} | Delete tokens. |\n| GET | /accounts/{account_id}/ai-search/tokens/{id} | Read tokens. |\n| PUT | /accounts/{account_id}/ai-search/tokens/{id} | Update tokens. |\n| GET | /accounts/{account_id}/ai/authors/search | Author Search |\n| GET | /accounts/{account_id}/ai/finetunes | List Finetunes |\n| POST | /accounts/{account_id}/ai/finetunes | Create a new Finetune |\n| GET | /accounts/{account_id}/ai/finetunes/public | List Public Finetunes |\n| POST | /accounts/{account_id}/ai/finetunes/{finetune_id}/finetune-assets | Upload a Finetune Asset |\n| GET | /accounts/{account_id}/ai/models/schema | Get Model Schema |\n| GET | /accounts/{account_id}/ai/models/search | Model Search |\n| POST | /accounts/{account_id}/ai/run/@cf/ai4bharat/indictrans2-en-indic-1B | Execute @cf/ai4bharat/indictrans2-en-indic-1B model. |\n| POST | /accounts/{account_id}/ai/run/@cf/ai4bharat/nonomni-indictrans2-en-indic-1b | Execute @cf/ai4bharat/nonomni-indictrans2-en-indic-1b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/aisingapore/gemma-sea-lion-v4-27b-it | Execute @cf/aisingapore/gemma-sea-lion-v4-27b-it model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/bge-base-en-v1.5 | Execute @cf/baai/bge-base-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/bge-large-en-v1.5 | Execute @cf/baai/bge-large-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/bge-m3 | Execute @cf/baai/bge-m3 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/bge-reranker-base | Execute @cf/baai/bge-reranker-base model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/bge-small-en-v1.5 | Execute @cf/baai/bge-small-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-base-en-v1.5 | Execute @cf/baai/nonomni-bge-base-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-large-en-v1.5 | Execute @cf/baai/nonomni-bge-large-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-m3 | Execute @cf/baai/nonomni-bge-m3 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-small-en-v1.5 | Execute @cf/baai/nonomni-bge-small-en-v1.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-1-schnell | Execute @cf/black-forest-labs/flux-1-schnell model. |\n| POST | /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-dev | Execute @cf/black-forest-labs/flux-2-dev model. |\n| POST | /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-4b | Execute @cf/black-forest-labs/flux-2-klein-4b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-9b | Execute @cf/black-forest-labs/flux-2-klein-9b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/bytedance/stable-diffusion-xl-lightning | Execute @cf/bytedance/stable-diffusion-xl-lightning model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura | Open Websocket connection with @cf/deepgram/aura model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura-1 | Open Websocket connection with @cf/deepgram/aura-1 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepgram/aura-1 | Execute @cf/deepgram/aura-1 model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura-1-internal | Open Websocket connection with @cf/deepgram/aura-1-internal model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura-2 | Open Websocket connection with @cf/deepgram/aura-2 model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en | Open Websocket connection with @cf/deepgram/aura-2-en model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en | Execute @cf/deepgram/aura-2-en model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es | Open Websocket connection with @cf/deepgram/aura-2-es model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es | Execute @cf/deepgram/aura-2-es model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/flux | Open Websocket connection with @cf/deepgram/flux model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepgram/flux | Execute @cf/deepgram/flux model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/nova-3 | Open Websocket connection with @cf/deepgram/nova-3 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepgram/nova-3 | Execute @cf/deepgram/nova-3 model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-internal | Open Websocket connection with @cf/deepgram/nova-3-internal model. |\n| GET | /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-ws | Open Websocket connection with @cf/deepgram/nova-3-ws model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-math-7b-instruct | Execute @cf/deepseek-ai/deepseek-math-7b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b | Execute @cf/deepseek-ai/deepseek-r1-distill-qwen-32b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/defog/sqlcoder-7b-2 | Execute @cf/defog/sqlcoder-7b-2 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/facebook/bart-large-cnn | Execute @cf/facebook/bart-large-cnn model. |\n| POST | /accounts/{account_id}/ai/run/@cf/facebook/nonomni-bart-large-cnn | Execute @cf/facebook/nonomni-bart-large-cnn model. |\n| POST | /accounts/{account_id}/ai/run/@cf/facebook/nonomni-detr-resnet-50 | Execute @cf/facebook/nonomni-detr-resnet-50 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/fblgit/una-cybertron-7b-v2-bf16 | Execute @cf/fblgit/una-cybertron-7b-v2-bf16 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/google/embeddinggemma-300m | Execute @cf/google/embeddinggemma-300m model. |\n| POST | /accounts/{account_id}/ai/run/@cf/google/gemma-2b-it-lora | Execute @cf/google/gemma-2b-it-lora model. |\n| POST | /accounts/{account_id}/ai/run/@cf/google/gemma-3-12b-it | Execute @cf/google/gemma-3-12b-it model. |\n| POST | /accounts/{account_id}/ai/run/@cf/google/gemma-7b-it-lora | Execute @cf/google/gemma-7b-it-lora model. |\n| POST | /accounts/{account_id}/ai/run/@cf/google/nonomni-embeddinggemma-300m | Execute @cf/google/nonomni-embeddinggemma-300m model. |\n| POST | /accounts/{account_id}/ai/run/@cf/huggingface/distilbert-sst-2-int8 | Execute @cf/huggingface/distilbert-sst-2-int8 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/huggingface/nonomni-distilbert-sst-2-int8 | Execute @cf/huggingface/nonomni-distilbert-sst-2-int8 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/ibm-granite/granite-4.0-h-micro | Execute @cf/ibm-granite/granite-4.0-h-micro model. |\n| POST | /accounts/{account_id}/ai/run/@cf/leonardo/lucid-origin | Execute @cf/leonardo/lucid-origin model. |\n| POST | /accounts/{account_id}/ai/run/@cf/leonardo/phoenix-1.0 | Execute @cf/leonardo/phoenix-1.0 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/lykon/dreamshaper-8-lcm | Execute @cf/lykon/dreamshaper-8-lcm model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta-llama/llama-2-7b-chat-hf-lora | Execute @cf/meta-llama/llama-2-7b-chat-hf-lora model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-fp16 | Execute @cf/meta/llama-2-7b-chat-fp16 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-int8 | Execute @cf/meta/llama-2-7b-chat-int8 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct | Execute @cf/meta/llama-3-8b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct-awq | Execute @cf/meta/llama-3-8b-instruct-awq model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-70b-instruct-fp8-fast | Execute @cf/meta/llama-3.1-70b-instruct-fp8-fast model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-awq | Execute @cf/meta/llama-3.1-8b-instruct-awq model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8 | Execute @cf/meta/llama-3.1-8b-instruct-fp8 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8-fast | Execute @cf/meta/llama-3.1-8b-instruct-fp8-fast model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-11b-vision-instruct | Execute @cf/meta/llama-3.2-11b-vision-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-1b-instruct | Execute @cf/meta/llama-3.2-1b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-3b-instruct | Execute @cf/meta/llama-3.2-3b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-3.3-70b-instruct-fp8-fast | Execute @cf/meta/llama-3.3-70b-instruct-fp8-fast model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-4-scout-17b-16e-instruct | Execute @cf/meta/llama-4-scout-17b-16e-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/llama-guard-3-8b | Execute @cf/meta/llama-guard-3-8b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/meta/m2m100-1.2b | Execute @cf/meta/m2m100-1.2b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/microsoft/nonomni-resnet-50 | Execute @cf/microsoft/nonomni-resnet-50 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/microsoft/phi-2 | Execute @cf/microsoft/phi-2 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/microsoft/resnet-50 | Execute @cf/microsoft/resnet-50 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.1 | Execute @cf/mistral/mistral-7b-instruct-v0.1 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.2-lora | Execute @cf/mistral/mistral-7b-instruct-v0.2-lora model. |\n| POST | /accounts/{account_id}/ai/run/@cf/mistralai/mistral-small-3.1-24b-instruct | Execute @cf/mistralai/mistral-small-3.1-24b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/moonshotai/kimi-k2.5 | Execute @cf/moonshotai/kimi-k2.5 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/myshell-ai/melotts | Execute @cf/myshell-ai/melotts model. |\n| POST | /accounts/{account_id}/ai/run/@cf/nvidia/nemotron-3-120b-a12b | Execute @cf/nvidia/nemotron-3-120b-a12b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-120b | Execute @cf/openai/gpt-oss-120b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-20b | Execute @cf/openai/gpt-oss-20b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openai/whisper | Execute @cf/openai/whisper model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openai/whisper-large-v3-turbo | Execute @cf/openai/whisper-large-v3-turbo model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openai/whisper-tiny-en | Execute @cf/openai/whisper-tiny-en model. |\n| POST | /accounts/{account_id}/ai/run/@cf/openchat/openchat-3.5-0106 | Execute @cf/openchat/openchat-3.5-0106 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/pfnet/plamo-embedding-1b | Execute @cf/pfnet/plamo-embedding-1b model. |\n| GET | /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v2 | Open Websocket connection with @cf/pipecat-ai/smart-turn-v2 model. |\n| GET | /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v3 | Open Websocket connection with @cf/pipecat-ai/smart-turn-v3 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-0.5b-chat | Execute @cf/qwen/qwen1.5-0.5b-chat model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-1.8b-chat | Execute @cf/qwen/qwen1.5-1.8b-chat model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-14b-chat-awq | Execute @cf/qwen/qwen1.5-14b-chat-awq model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-7b-chat-awq | Execute @cf/qwen/qwen1.5-7b-chat-awq model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen2.5-coder-32b-instruct | Execute @cf/qwen/qwen2.5-coder-32b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen3-30b-a3b-fp8 | Execute @cf/qwen/qwen3-30b-a3b-fp8 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwen3-embedding-0.6b | Execute @cf/qwen/qwen3-embedding-0.6b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/qwen/qwq-32b | Execute @cf/qwen/qwq-32b model. |\n| POST | /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-img2img | Execute @cf/runwayml/stable-diffusion-v1-5-img2img model. |\n| POST | /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-inpainting | Execute @cf/runwayml/stable-diffusion-v1-5-inpainting model. |\n| POST | /accounts/{account_id}/ai/run/@cf/stabilityai/stable-diffusion-xl-base-1.0 | Execute @cf/stabilityai/stable-diffusion-xl-base-1.0 model. |\n| GET | /accounts/{account_id}/ai/run/@cf/sven/test-pipe-http | Open Websocket connection with @cf/sven/test-pipe-http model. |\n| GET | /accounts/{account_id}/ai/run/@cf/test/hello-world-cog | Open Websocket connection with @cf/test/hello-world-cog model. |\n| POST | /accounts/{account_id}/ai/run/@cf/thebloke/discolm-german-7b-v1-awq | Execute @cf/thebloke/discolm-german-7b-v1-awq model. |\n| POST | /accounts/{account_id}/ai/run/@cf/tiiuae/falcon-7b-instruct | Execute @cf/tiiuae/falcon-7b-instruct model. |\n| POST | /accounts/{account_id}/ai/run/@cf/tinyllama/tinyllama-1.1b-chat-v1.0 | Execute @cf/tinyllama/tinyllama-1.1b-chat-v1.0 model. |\n| POST | /accounts/{account_id}/ai/run/@cf/zai-org/glm-4.7-flash | Execute @cf/zai-org/glm-4.7-flash model. |\n| POST | /accounts/{account_id}/ai/run/@hf/google/gemma-7b-it | Execute @hf/google/gemma-7b-it model. |\n| POST | /accounts/{account_id}/ai/run/@hf/mistral/mistral-7b-instruct-v0.2 | Execute @hf/mistral/mistral-7b-instruct-v0.2 model. |\n| POST | /accounts/{account_id}/ai/run/@hf/nexusflow/starling-lm-7b-beta | Execute @hf/nexusflow/starling-lm-7b-beta model. |\n| POST | /accounts/{account_id}/ai/run/@hf/nousresearch/hermes-2-pro-mistral-7b | Execute @hf/nousresearch/hermes-2-pro-mistral-7b model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-base-awq | Execute @hf/thebloke/deepseek-coder-6.7b-base-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-instruct-awq | Execute @hf/thebloke/deepseek-coder-6.7b-instruct-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/llama-2-13b-chat-awq | Execute @hf/thebloke/llama-2-13b-chat-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/mistral-7b-instruct-v0.1-awq | Execute @hf/thebloke/mistral-7b-instruct-v0.1-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/neural-chat-7b-v3-1-awq | Execute @hf/thebloke/neural-chat-7b-v3-1-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/openhermes-2.5-mistral-7b-awq | Execute @hf/thebloke/openhermes-2.5-mistral-7b-awq model. |\n| POST | /accounts/{account_id}/ai/run/@hf/thebloke/zephyr-7b-beta-awq | Execute @hf/thebloke/zephyr-7b-beta-awq model. |\n| POST | /accounts/{account_id}/ai/run/{model_name} | Execute AI model |\n| GET | /accounts/{account_id}/ai/tasks/search | Task Search |\n| POST | /accounts/{account_id}/ai/tomarkdown | Convert Files into Markdown |\n| GET | /accounts/{account_id}/ai/tomarkdown/supported | Get all converted formats supported |\n| GET | /accounts/{account_id}/alerting/v3/available_alerts | Get Alert Types |\n| GET | /accounts/{account_id}/alerting/v3/destinations/eligible | Get delivery mechanism eligibility |\n| DELETE | /accounts/{account_id}/alerting/v3/destinations/pagerduty | Delete PagerDuty Services |\n| GET | /accounts/{account_id}/alerting/v3/destinations/pagerduty | List PagerDuty services |\n| POST | /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect | Create PagerDuty integration token |\n| GET | /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id} | Connect PagerDuty |\n| GET | /accounts/{account_id}/alerting/v3/destinations/webhooks | List webhooks |\n| POST | /accounts/{account_id}/alerting/v3/destinations/webhooks | Create a webhook |\n| DELETE | /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id} | Delete a webhook |\n| GET | /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id} | Get a webhook |\n| PUT | /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id} | Update a webhook |\n| GET | /accounts/{account_id}/alerting/v3/history | List History |\n| GET | /accounts/{account_id}/alerting/v3/policies | List Notification policies |\n| POST | /accounts/{account_id}/alerting/v3/policies | Create a Notification policy |\n| DELETE | /accounts/{account_id}/alerting/v3/policies/{policy_id} | Delete a Notification policy |\n| GET | /accounts/{account_id}/alerting/v3/policies/{policy_id} | Get a Notification policy |\n| PUT | /accounts/{account_id}/alerting/v3/policies/{policy_id} | Update a Notification policy |\n| GET | /accounts/{account_id}/alerting/v3/silences | List Silences |\n| POST | /accounts/{account_id}/alerting/v3/silences | Create Silences |\n| PUT | /accounts/{account_id}/alerting/v3/silences | Update Silences |\n| DELETE | /accounts/{account_id}/alerting/v3/silences/{silence_id} | Delete Silence |\n| GET | /accounts/{account_id}/alerting/v3/silences/{silence_id} | Get Silence |\n| GET | /accounts/{account_id}/audit_logs | Get account audit logs |\n| POST | /accounts/{account_id}/autorag/rags/{id}/ai-search | AI Search |\n| GET | /accounts/{account_id}/autorag/rags/{id}/files | Files |\n| GET | /accounts/{account_id}/autorag/rags/{id}/jobs | List Jobs |\n| GET | /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id} | Get a Job Details |\n| GET | /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}/logs | List Job Logs |\n| POST | /accounts/{account_id}/autorag/rags/{id}/search | Search |\n| PATCH | /accounts/{account_id}/autorag/rags/{id}/sync | Sync |\n| GET | /accounts/{account_id}/billing/profile | Billing Profile Details |\n| GET | /accounts/{account_id}/billing/usage/paygo | Get PayGo Account Billable Usage (Beta) |\n| GET | /accounts/{account_id}/botnet_feed/asn/{asn_id}/day_report | Get daily report |\n| GET | /accounts/{account_id}/botnet_feed/asn/{asn_id}/full_report | Get full report |\n| GET | /accounts/{account_id}/botnet_feed/configs/asn | Get list of ASNs |\n| DELETE | /accounts/{account_id}/botnet_feed/configs/asn/{asn_id} | Delete an ASN |\n| GET | /accounts/{account_id}/brand-protection/alerts | Read all alerts on submitted domains |\n| PATCH | /accounts/{account_id}/brand-protection/alerts | Update alerts on submitted domains by ID |\n| PATCH | /accounts/{account_id}/brand-protection/alerts/clear | Update verification statuses of tracked URLs to awaiting by ID |\n| PATCH | /accounts/{account_id}/brand-protection/alerts/refute | Update verification statuses of tracked URLs to disproven by ID |\n| PATCH | /accounts/{account_id}/brand-protection/alerts/verify | Update verification statuses of tracked URLs to confirmed by ID |\n| DELETE | /accounts/{account_id}/brand-protection/brands | Delete brands by ID |\n| GET | /accounts/{account_id}/brand-protection/brands | Read all brands |\n| POST | /accounts/{account_id}/brand-protection/brands | Create new brands |\n| DELETE | /accounts/{account_id}/brand-protection/brands/patterns | Delete patterns for brands by ID |\n| GET | /accounts/{account_id}/brand-protection/brands/patterns | Read patterns for brands by ID |\n| POST | /accounts/{account_id}/brand-protection/brands/patterns | Create new patterns for brands by ID |\n| PATCH | /accounts/{account_id}/brand-protection/clear | Update verification statuses of submitted URLs to awaiting by ID |\n| GET | /accounts/{account_id}/brand-protection/domain-info | Read submitted domains by ID |\n| GET | /accounts/{account_id}/brand-protection/logo-matches | Read matches for logo queries by ID |\n| GET | /accounts/{account_id}/brand-protection/logo-matches/download | Download matches for logo queries by ID |\n| GET | /accounts/{account_id}/brand-protection/logos | Read all saved logo queries |\n| POST | /accounts/{account_id}/brand-protection/logos | Create new saved logo queries from image files |\n| DELETE | /accounts/{account_id}/brand-protection/logos/{logo_id} | Delete saved logo queries by ID |\n| GET | /accounts/{account_id}/brand-protection/logos/{logo_id} | Read saved logo queries by ID |\n| GET | /accounts/{account_id}/brand-protection/matches | Read matches for string queries by ID |\n| GET | /accounts/{account_id}/brand-protection/matches/download | Download matches for string queries by ID |\n| DELETE | /accounts/{account_id}/brand-protection/queries | Delete saved string queries by ID |\n| GET | /accounts/{account_id}/brand-protection/queries | Read string queries by ID |\n| PATCH | /accounts/{account_id}/brand-protection/queries | Update saved string queries by ID |\n| POST | /accounts/{account_id}/brand-protection/queries | Create new saved string queries |\n| POST | /accounts/{account_id}/brand-protection/queries/bulk | Create new saved string queries in bulk |\n| GET | /accounts/{account_id}/brand-protection/recent-submissions | Read recent URL submissions |\n| PATCH | /accounts/{account_id}/brand-protection/refute | Update verification statuses of submitted URLs to disproven by ID |\n| POST | /accounts/{account_id}/brand-protection/scan-logo | Create new logo queries from image files |\n| POST | /accounts/{account_id}/brand-protection/scan-page | Create new logo queries from URLs |\n| POST | /accounts/{account_id}/brand-protection/search | Create new string queries |\n| GET | /accounts/{account_id}/brand-protection/submission-info | Read URL submissions by ID |\n| POST | /accounts/{account_id}/brand-protection/submit | Create new URL submissions |\n| GET | /accounts/{account_id}/brand-protection/total-queries | Read the total number of saved string queries |\n| GET | /accounts/{account_id}/brand-protection/tracked-domains | Read submitted domains by pattern |\n| GET | /accounts/{account_id}/brand-protection/url-info | Read submitted URLs by ID |\n| PATCH | /accounts/{account_id}/brand-protection/verify | Update verification statuses of submitted URLs to confirmed by ID |\n| POST | /accounts/{account_id}/browser-rendering/content | Get HTML content. |\n| POST | /accounts/{account_id}/browser-rendering/crawl | Crawl websites. |\n| DELETE | /accounts/{account_id}/browser-rendering/crawl/{job_id} | Cancel a crawl job. |\n| GET | /accounts/{account_id}/browser-rendering/crawl/{job_id} | Get crawl result. |\n| POST | /accounts/{account_id}/browser-rendering/json | Get json. |\n| POST | /accounts/{account_id}/browser-rendering/links | Get Links. |\n| POST | /accounts/{account_id}/browser-rendering/markdown | Get markdown. |\n| POST | /accounts/{account_id}/browser-rendering/pdf | Get PDF. |\n| POST | /accounts/{account_id}/browser-rendering/scrape | Scrape elements. |\n| POST | /accounts/{account_id}/browser-rendering/screenshot | Get screenshot. |\n| POST | /accounts/{account_id}/browser-rendering/snapshot | Get HTML content and screenshot. |\n| GET | /accounts/{account_id}/builds/account/limits | Get account limits |\n| GET | /accounts/{account_id}/builds/builds | Get builds by version IDs |\n| GET | /accounts/{account_id}/builds/builds/latest | Get latest builds by script IDs |\n| GET | /accounts/{account_id}/builds/builds/{build_uuid} | Get build by UUID |\n| PUT | /accounts/{account_id}/builds/builds/{build_uuid}/cancel | Cancel build |\n| GET | /accounts/{account_id}/builds/builds/{build_uuid}/logs | Get build logs |\n| PUT | /accounts/{account_id}/builds/repos/connections | Create or update repository connection |\n| DELETE | /accounts/{account_id}/builds/repos/connections/{repo_connection_uuid} | Delete repository connection |\n| GET | /accounts/{account_id}/builds/repos/{provider_type}/{provider_account_id}/{repo_id}/config_autofill | Get repository configuration autofill |\n| GET | /accounts/{account_id}/builds/tokens | List build tokens |\n| POST | /accounts/{account_id}/builds/tokens | Create build token |\n| DELETE | /accounts/{account_id}/builds/tokens/{build_token_uuid} | Delete build token |\n| POST | /accounts/{account_id}/builds/triggers | Create trigger |\n| DELETE | /accounts/{account_id}/builds/triggers/{trigger_uuid} | Delete trigger |\n| PATCH | /accounts/{account_id}/builds/triggers/{trigger_uuid} | Update trigger |\n| POST | /accounts/{account_id}/builds/triggers/{trigger_uuid}/builds | Create manual build |\n| GET | /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables | List environment variables |\n| PATCH | /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables | Upsert environment variables |\n| DELETE | /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables/{environment_variable_key} | Delete environment variable |\n| POST | /accounts/{account_id}/builds/triggers/{trigger_uuid}/purge_build_cache | Purge build cache |\n| GET | /accounts/{account_id}/builds/workers/{external_script_id}/builds | List builds by script |\n| GET | /accounts/{account_id}/builds/workers/{external_script_id}/triggers | List triggers by script |\n| GET | /accounts/{account_id}/calls/apps | List apps |\n| POST | /accounts/{account_id}/calls/apps | Create a new app |\n| DELETE | /accounts/{account_id}/calls/apps/{app_id} | Delete app |\n| GET | /accounts/{account_id}/calls/apps/{app_id} | Retrieve app details |\n| PUT | /accounts/{account_id}/calls/apps/{app_id} | Edit app details |\n| GET | /accounts/{account_id}/calls/turn_keys | List TURN Keys |\n| POST | /accounts/{account_id}/calls/turn_keys | Create a new TURN key |\n| DELETE | /accounts/{account_id}/calls/turn_keys/{key_id} | Delete TURN key |\n| GET | /accounts/{account_id}/calls/turn_keys/{key_id} | Retrieve TURN key details |\n| PUT | /accounts/{account_id}/calls/turn_keys/{key_id} | Edit TURN key details |\n| GET | /accounts/{account_id}/cfd_tunnel | List Cloudflare Tunnels |\n| POST | /accounts/{account_id}/cfd_tunnel | Create a Cloudflare Tunnel |\n| DELETE | /accounts/{account_id}/cfd_tunnel/{tunnel_id} | Delete a Cloudflare Tunnel |\n| GET | /accounts/{account_id}/cfd_tunnel/{tunnel_id} | Get a Cloudflare Tunnel |\n| PATCH | /accounts/{account_id}/cfd_tunnel/{tunnel_id} | Update a Cloudflare Tunnel |\n| GET | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations | Get configuration |\n| PUT | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations | Put configuration |\n| DELETE | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections | Clean up Cloudflare Tunnel connections |\n| GET | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections | List Cloudflare Tunnel connections |\n| GET | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id} | Get Cloudflare Tunnel connector |\n| POST | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/management | Get a Cloudflare Tunnel management token |\n| GET | /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token | Get a Cloudflare Tunnel token |\n| GET | /accounts/{account_id}/challenges/widgets | List Turnstile Widgets |\n| POST | /accounts/{account_id}/challenges/widgets | Create a Turnstile Widget |\n| DELETE | /accounts/{account_id}/challenges/widgets/{sitekey} | Delete a Turnstile Widget |\n| GET | /accounts/{account_id}/challenges/widgets/{sitekey} | Turnstile Widget Details |\n| PUT | /accounts/{account_id}/challenges/widgets/{sitekey} | Update a Turnstile Widget |\n| POST | /accounts/{account_id}/challenges/widgets/{sitekey}/rotate_secret | Rotate Secret for a Turnstile Widget |\n| POST | /accounts/{account_id}/cloudforce-one/binary | Posts a file to Binary Storage |\n| GET | /accounts/{account_id}/cloudforce-one/binary/{hash} | Retrieves a file from Binary Storage |\n| GET | /accounts/{account_id}/cloudforce-one/events | Filter and list events |\n| GET | /accounts/{account_id}/cloudforce-one/events/aggregate | Aggregate events by single or multiple columns with optional date filtering |\n| GET | /accounts/{account_id}/cloudforce-one/events/attackers | Lists attackers across multiple datasets |\n| GET | /accounts/{account_id}/cloudforce-one/events/categories | Lists categories across multiple datasets |\n| GET | /accounts/{account_id}/cloudforce-one/events/categories/catalog | Lists categories |\n| POST | /accounts/{account_id}/cloudforce-one/events/categories/create | Creates a new category |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/categories/{category_id} | Deletes a category |\n| GET | /accounts/{account_id}/cloudforce-one/events/categories/{category_id} | Reads a category |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/categories/{category_id} | Updates a category |\n| POST | /accounts/{account_id}/cloudforce-one/events/categories/{category_id} | Updates a category |\n| GET | /accounts/{account_id}/cloudforce-one/events/countries | Retrieves countries information for all countries |\n| POST | /accounts/{account_id}/cloudforce-one/events/create | Creates a new event |\n| POST | /accounts/{account_id}/cloudforce-one/events/create/bulk | Creates bulk events |\n| POST | /accounts/{account_id}/cloudforce-one/events/create/bulk/relationships | Creates bulk DOS event with relationships and indicators |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset | Lists all datasets in an account |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups | List groups for an account |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups | Create a group |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id} | Delete a group for an account |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id} | Read a group for an account |\n| PUT | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id} | Update a group |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members | List group members |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members | Create a group member |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members/{member_id} | Delete a group member |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/create | Creates a dataset |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id} | Delete a dataset |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id} | Reads a dataset |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id} | Updates an existing dataset |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id} | Updates an existing dataset |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/copy | Copies specified events from one dataset to another dataset |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id} | Reads an event |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicatorTypes/create | Create a new indicator type |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators | Lists indicators |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/bulk | Creates multiple indicators in bulk |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/create | Creates a new indicator |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/tags | List mirrored tags for an indicator dataset |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id} | Deletes an indicator |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id} | Reads an indicator |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id} | Updates an indicator |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/move | Moves specified events from one dataset to another dataset |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions | List permissions for dataset |\n| POST | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions | Create a permission for dataset |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id} | Delete a permission for dataset |\n| PUT | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id} | Update a permission for dataset |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/tags/{tag_uuid}/indicators | List indicators related to a tag |\n| GET | /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/targetIndustries | Lists all target industries for a specific dataset |\n| POST | /accounts/{account_id}/cloudforce-one/events/datasets/populate | Populate dataset-specific lookup tables from existing Events data with batch processing |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/event_tag/{event_id} | Removes a tag from an event |\n| POST | /accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}/create | Adds a tag to an event |\n| POST | /accounts/{account_id}/cloudforce-one/events/graphql | GraphQL endpoint for event aggregation |\n| GET | /accounts/{account_id}/cloudforce-one/events/indicator-types | Lists indicator types across multiple datasets |\n| GET | /accounts/{account_id}/cloudforce-one/events/indicatorTypes | Lists all indicator types |\n| GET | /accounts/{account_id}/cloudforce-one/events/indicators | Lists indicators across multiple datasets |\n| GET | /accounts/{account_id}/cloudforce-one/events/queries | List all saved event queries |\n| GET | /accounts/{account_id}/cloudforce-one/events/queries/alerts | List all event query alerts |\n| POST | /accounts/{account_id}/cloudforce-one/events/queries/alerts/create | Create an event query alert |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id} | Delete an event query alert |\n| GET | /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id} | Read an event query alert |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id} | Update an event query alert |\n| POST | /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id} | Update an event query alert |\n| POST | /accounts/{account_id}/cloudforce-one/events/queries/create | Create a saved event query |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/queries/{query_id} | Delete a saved event query |\n| GET | /accounts/{account_id}/cloudforce-one/events/queries/{query_id} | Read a saved event query |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/queries/{query_id} | Update a saved event query |\n| POST | /accounts/{account_id}/cloudforce-one/events/queries/{query_id} | Update a saved event query |\n| GET | /accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id} | Reads raw data for an event by UUID |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/relate/{event_id} | Removes an event reference |\n| POST | /accounts/{account_id}/cloudforce-one/events/relate/{event_id}/create | Creates event references for a event |\n| POST | /accounts/{account_id}/cloudforce-one/events/relationships/create | Create a relationship between two events |\n| GET | /accounts/{account_id}/cloudforce-one/events/tags | Lists all tags (SoT) |\n| GET | /accounts/{account_id}/cloudforce-one/events/tags/categories | Lists all tag categories (SoT) |\n| POST | /accounts/{account_id}/cloudforce-one/events/tags/categories/create | Creates a new tag category (SoT) |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/tags/categories/{category_uuid} | Deletes a tag category (SoT) |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/tags/categories/{category_uuid} | Updates a tag category (SoT) |\n| POST | /accounts/{account_id}/cloudforce-one/events/tags/create | Creates a new tag |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/tags/{tag_uuid} | Deletes a tag (SoT) |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/tags/{tag_uuid} | Updates a tag (SoT) |\n| GET | /accounts/{account_id}/cloudforce-one/events/targetIndustries | Lists target industries across multiple datasets |\n| GET | /accounts/{account_id}/cloudforce-one/events/targetIndustries/catalog | Lists all target industries from industry map catalog |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/update/bulk | Bulk update events |\n| DELETE | /accounts/{account_id}/cloudforce-one/events/{dataset_id}/delete | Deletes one or more events |\n| POST | /accounts/{account_id}/cloudforce-one/events/{dataset_id}/revert-do | Revert an Events Durable Object to a point in time |\n| GET | /accounts/{account_id}/cloudforce-one/events/{event_id} | Reads an event |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/{event_id} | Updates an event |\n| POST | /accounts/{account_id}/cloudforce-one/events/{event_id} | Updates an event |\n| GET | /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id} | Reads data for a raw event |\n| PATCH | /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id} | Updates a raw event |\n| POST | /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id} | Updates a raw event |\n| GET | /accounts/{account_id}/cloudforce-one/events/{event_id}/relationships | Filter and list events related to specific event |\n| POST | /accounts/{account_id}/cloudforce-one/requests | List Requests |\n| GET | /accounts/{account_id}/cloudforce-one/requests/constants | Get Request Priority, Status, and TLP constants |\n| POST | /accounts/{account_id}/cloudforce-one/requests/new | Create a New Request. |\n| POST | /accounts/{account_id}/cloudforce-one/requests/priority | List Priority Intelligence Requirements |\n| POST | /accounts/{account_id}/cloudforce-one/requests/priority/new | Create a New Priority Intelligence Requirement |\n| GET | /accounts/{account_id}/cloudforce-one/requests/priority/quota | Get Priority Intelligence Requirement Quota |\n| DELETE | /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id} | Delete a Priority Intelligence Requirement |\n| GET | /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id} | Get a Priority Intelligence Requirement |\n| PUT | /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id} | Update a Priority Intelligence Requirement |\n| GET | /accounts/{account_id}/cloudforce-one/requests/quota | Get Request Quota |\n| GET | /accounts/{account_id}/cloudforce-one/requests/types | Get Request Types |\n| DELETE | /accounts/{account_id}/cloudforce-one/requests/{request_id} | Delete a Request |\n| GET | /accounts/{account_id}/cloudforce-one/requests/{request_id} | Get a Request |\n| PUT | /accounts/{account_id}/cloudforce-one/requests/{request_id} | Update a Request |\n| POST | /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset | List Request Assets |\n| POST | /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/new | Create a New Request Asset |\n| DELETE | /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id} | Delete a Request Asset |\n| GET | /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id} | Get a Request Asset |\n| PUT | /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id} | Update a Request Asset |\n| POST | /accounts/{account_id}/cloudforce-one/requests/{request_id}/message | List Request Messages |\n| POST | /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/new | Create a New Request Message |\n| DELETE | /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id} | Delete a Request Message |\n| PUT | /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id} | Update a Request Message |\n| DELETE | /accounts/{account_id}/cloudforce-one/rules | Delete all rules |\n| GET | /accounts/{account_id}/cloudforce-one/rules | List rules |\n| POST | /accounts/{account_id}/cloudforce-one/rules | Create a rule |\n| GET | /accounts/{account_id}/cloudforce-one/rules/stats | Get dashboard stats |\n| GET | /accounts/{account_id}/cloudforce-one/rules/tree | Get folder tree structure |\n| POST | /accounts/{account_id}/cloudforce-one/rules/validate | Validate rule with context |\n| DELETE | /accounts/{account_id}/cloudforce-one/rules/{id} | Delete a rule |\n| GET | /accounts/{account_id}/cloudforce-one/rules/{id} | Get a rule |\n| PUT | /accounts/{account_id}/cloudforce-one/rules/{id} | Update a rule |\n| GET | /accounts/{account_id}/cloudforce-one/scans/config | List Scan Configs |\n| POST | /accounts/{account_id}/cloudforce-one/scans/config | Create a new Scan Config |\n| DELETE | /accounts/{account_id}/cloudforce-one/scans/config/{config_id} | Delete a Scan Config |\n| PATCH | /accounts/{account_id}/cloudforce-one/scans/config/{config_id} | Update an existing Scan Config |\n| GET | /accounts/{account_id}/cloudforce-one/scans/results/{config_id} | Get the Latest Scan Result |\n| GET | /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/matches | List saved query matches |\n| GET | /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/queries | Get queries |\n| GET | /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/matches | List logo matches |\n| GET | /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries | Get logo queries |\n| POST | /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries | Insert logo query |\n| DELETE | /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries/{query_id} | Delete logo query |\n| POST | /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/search | Search scanned images |\n| GET | /accounts/{account_id}/cloudforce-one/v2/brand-protection/total-queries | Get total queries |\n| POST | /accounts/{account_id}/cloudforce-one/v2/events/graphql | GraphQL endpoint for event aggregation |\n| GET | /accounts/{account_id}/cni/cnis | List existing CNI objects |\n| POST | /accounts/{account_id}/cni/cnis | Create a new CNI object |\n| DELETE | /accounts/{account_id}/cni/cnis/{cni} | Delete a specified CNI object |\n| GET | /accounts/{account_id}/cni/cnis/{cni} | Get information about a CNI object |\n| PUT | /accounts/{account_id}/cni/cnis/{cni} | Modify stored information about a CNI object |\n| GET | /accounts/{account_id}/cni/interconnects | List existing interconnects |\n| POST | /accounts/{account_id}/cni/interconnects | Create a new interconnect |\n| DELETE | /accounts/{account_id}/cni/interconnects/{icon} | Delete an interconnect object |\n| GET | /accounts/{account_id}/cni/interconnects/{icon} | Get information about an interconnect object |\n| GET | /accounts/{account_id}/cni/interconnects/{icon}/loa | Generate the Letter of Authorization (LOA) for a given interconnect |\n| GET | /accounts/{account_id}/cni/interconnects/{icon}/status | Get the current status of an interconnect object |\n| GET | /accounts/{account_id}/cni/settings | Get the current settings for the active account |\n| PUT | /accounts/{account_id}/cni/settings | Update the current settings for the active account |\n| GET | /accounts/{account_id}/cni/slots | Retrieve a list of all slots matching the specified parameters |\n| GET | /accounts/{account_id}/cni/slots/{slot} | Get information about the specified slot |\n| GET | /accounts/{account_id}/connectivity/directory/services | List Workers VPC connectivity services |\n| POST | /accounts/{account_id}/connectivity/directory/services | Create Workers VPC connectivity service |\n| DELETE | /accounts/{account_id}/connectivity/directory/services/{service_id} | Delete Workers VPC connectivity service |\n| GET | /accounts/{account_id}/connectivity/directory/services/{service_id} | Get Workers VPC connectivity service |\n| PUT | /accounts/{account_id}/connectivity/directory/services/{service_id} | Update Workers VPC connectivity service |\n| GET | /accounts/{account_id}/containers | List containers. |\n| POST | /accounts/{account_id}/containers/registries/{domain}/credentials | Generate a JWT to interact with the specified image registry. |\n| GET | /accounts/{account_id}/custom_ns | List Account Custom Nameservers |\n| POST | /accounts/{account_id}/custom_ns | Add Account Custom Nameserver |\n| DELETE | /accounts/{account_id}/custom_ns/{custom_ns_id} | Delete Account Custom Nameserver |\n| GET | /accounts/{account_id}/d1/database | List D1 Databases |\n| POST | /accounts/{account_id}/d1/database | Create D1 Database |\n| DELETE | /accounts/{account_id}/d1/database/{database_id} | Delete D1 Database |\n| GET | /accounts/{account_id}/d1/database/{database_id} | Get D1 Database |\n| PATCH | /accounts/{account_id}/d1/database/{database_id} | Update D1 Database partially |\n| PUT | /accounts/{account_id}/d1/database/{database_id} | Update D1 Database |\n| POST | /accounts/{account_id}/d1/database/{database_id}/export | Export D1 Database as SQL |\n| POST | /accounts/{account_id}/d1/database/{database_id}/import | Import SQL into your D1 Database |\n| POST | /accounts/{account_id}/d1/database/{database_id}/query | Query D1 Database |\n| POST | /accounts/{account_id}/d1/database/{database_id}/raw | Raw D1 Database query |\n| GET | /accounts/{account_id}/d1/database/{database_id}/time_travel/bookmark | Get D1 database bookmark |\n| POST | /accounts/{account_id}/d1/database/{database_id}/time_travel/restore | Restore D1 Database to a bookmark or point in time |\n| GET | /accounts/{account_id}/devices | List devices (deprecated) |\n| GET | /accounts/{account_id}/devices/ip-profiles | List IP profiles |\n| POST | /accounts/{account_id}/devices/ip-profiles | Create IP profile |\n| DELETE | /accounts/{account_id}/devices/ip-profiles/{profile_id} | Delete IP profile |\n| GET | /accounts/{account_id}/devices/ip-profiles/{profile_id} | Get IP profile |\n| PATCH | /accounts/{account_id}/devices/ip-profiles/{profile_id} | Update IP profile |\n| GET | /accounts/{account_id}/devices/networks | List your device managed networks |\n| POST | /accounts/{account_id}/devices/networks | Create a device managed network |\n| DELETE | /accounts/{account_id}/devices/networks/{network_id} | Delete a device managed network |\n| GET | /accounts/{account_id}/devices/networks/{network_id} | Get device managed network details |\n| PUT | /accounts/{account_id}/devices/networks/{network_id} | Update a device managed network |\n| GET | /accounts/{account_id}/devices/physical-devices | List devices |\n| DELETE | /accounts/{account_id}/devices/physical-devices/{device_id} | Delete device |\n| GET | /accounts/{account_id}/devices/physical-devices/{device_id} | Get device |\n| POST | /accounts/{account_id}/devices/physical-devices/{device_id}/revoke | Revoke device registrations |\n| GET | /accounts/{account_id}/devices/policies | List device settings profiles |\n| GET | /accounts/{account_id}/devices/policy | Get the default device settings profile |\n| PATCH | /accounts/{account_id}/devices/policy | Update the default device settings profile |\n| POST | /accounts/{account_id}/devices/policy | Create a device settings profile |\n| GET | /accounts/{account_id}/devices/policy/exclude | Get the Split Tunnel exclude list |\n| PUT | /accounts/{account_id}/devices/policy/exclude | Set the Split Tunnel exclude list |\n| GET | /accounts/{account_id}/devices/policy/fallback_domains | Get your Local Domain Fallback list |\n| PUT | /accounts/{account_id}/devices/policy/fallback_domains | Set your Local Domain Fallback list |\n| GET | /accounts/{account_id}/devices/policy/include | Get the Split Tunnel include list |\n| PUT | /accounts/{account_id}/devices/policy/include | Set the Split Tunnel include list |\n| DELETE | /accounts/{account_id}/devices/policy/{policy_id} | Delete a device settings profile |\n| GET | /accounts/{account_id}/devices/policy/{policy_id} | Get device settings profile by ID |\n| PATCH | /accounts/{account_id}/devices/policy/{policy_id} | Update a device settings profile |\n| GET | /accounts/{account_id}/devices/policy/{policy_id}/exclude | Get the Split Tunnel exclude list for a device settings profile |\n| PUT | /accounts/{account_id}/devices/policy/{policy_id}/exclude | Set the Split Tunnel exclude list for a device settings profile |\n| GET | /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains | Get the Local Domain Fallback list for a device settings profile |\n| PUT | /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains | Set the Local Domain Fallback list for a device settings profile |\n| GET | /accounts/{account_id}/devices/policy/{policy_id}/include | Get the Split Tunnel include list for a device settings profile |\n| PUT | /accounts/{account_id}/devices/policy/{policy_id}/include | Set the Split Tunnel include list for a device settings profile |\n| GET | /accounts/{account_id}/devices/posture | List device posture rules |\n| POST | /accounts/{account_id}/devices/posture | Create a device posture rule |\n| GET | /accounts/{account_id}/devices/posture/integration | List your device posture integrations |\n| POST | /accounts/{account_id}/devices/posture/integration | Create a device posture integration |\n| DELETE | /accounts/{account_id}/devices/posture/integration/{integration_id} | Delete a device posture integration |\n| GET | /accounts/{account_id}/devices/posture/integration/{integration_id} | Get device posture integration details |\n| PATCH | /accounts/{account_id}/devices/posture/integration/{integration_id} | Update a device posture integration |\n| DELETE | /accounts/{account_id}/devices/posture/{rule_id} | Delete a device posture rule |\n| GET | /accounts/{account_id}/devices/posture/{rule_id} | Get device posture rule details |\n| PUT | /accounts/{account_id}/devices/posture/{rule_id} | Update a device posture rule |\n| DELETE | /accounts/{account_id}/devices/registrations | Delete registrations |\n| GET | /accounts/{account_id}/devices/registrations | List registrations |\n| POST | /accounts/{account_id}/devices/registrations/revoke | Revoke registrations |\n| POST | /accounts/{account_id}/devices/registrations/unrevoke | Unrevoke registrations |\n| DELETE | /accounts/{account_id}/devices/registrations/{registration_id} | Delete registration |\n| GET | /accounts/{account_id}/devices/registrations/{registration_id} | Get registration |\n| GET | /accounts/{account_id}/devices/registrations/{registration_id}/override_codes | Get override codes |\n| GET | /accounts/{account_id}/devices/resilience/disconnect | Retrieve Global WARP override state |\n| POST | /accounts/{account_id}/devices/resilience/disconnect | Set Global WARP override state |\n| POST | /accounts/{account_id}/devices/revoke | Revoke devices (deprecated) |\n| DELETE | /accounts/{account_id}/devices/settings | Reset device settings for a Zero Trust account with defaults. This turns off all proxying. |\n| GET | /accounts/{account_id}/devices/settings | Get device settings for a Zero Trust account |\n| PATCH | /accounts/{account_id}/devices/settings | Patch device settings for a Zero Trust account |\n| PUT | /accounts/{account_id}/devices/settings | Update device settings for a Zero Trust account |\n| POST | /accounts/{account_id}/devices/unrevoke | Unrevoke devices (deprecated) |\n| GET | /accounts/{account_id}/devices/{device_id} | Get device (deprecated) |\n| GET | /accounts/{account_id}/devices/{device_id}/override_codes | Get override codes (deprecated) |\n| GET | /accounts/{account_id}/dex/colos | List Cloudflare colos |\n| GET | /accounts/{account_id}/dex/commands | List account commands |\n| POST | /accounts/{account_id}/dex/commands | Create account commands |\n| GET | /accounts/{account_id}/dex/commands/devices | List devices eligible for remote captures |\n| GET | /accounts/{account_id}/dex/commands/quota | Returns account commands usage, quota, and reset time |\n| GET | /accounts/{account_id}/dex/commands/{command_id}/downloads/{filename} | Download command output file |\n| GET | /accounts/{account_id}/dex/devices/dex_tests | List Device DEX tests |\n| POST | /accounts/{account_id}/dex/devices/dex_tests | Create Device DEX test |\n| DELETE | /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id} | Delete Device DEX test |\n| GET | /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id} | Get Device DEX test |\n| PUT | /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id} | Update Device DEX test |\n| GET | /accounts/{account_id}/dex/devices/{device_id}/fleet-status/live | Get the live status of a latest device |\n| GET | /accounts/{account_id}/dex/fleet-status/devices | List fleet status devices |\n| GET | /accounts/{account_id}/dex/fleet-status/live | List fleet status details by dimension |\n| GET | /accounts/{account_id}/dex/fleet-status/over-time | List fleet status aggregate details by dimension |\n| GET | /accounts/{account_id}/dex/http-tests/{test_id} | Get details and aggregate metrics for an http test |\n| GET | /accounts/{account_id}/dex/http-tests/{test_id}/percentiles | Get percentiles for an http test |\n| GET | /accounts/{account_id}/dex/rules | List DEX Rules |\n| POST | /accounts/{account_id}/dex/rules | Create a DEX Rule |\n| DELETE | /accounts/{account_id}/dex/rules/{rule_id} | Delete a DEX Rule |\n| GET | /accounts/{account_id}/dex/rules/{rule_id} | Get DEX Rule |\n| PATCH | /accounts/{account_id}/dex/rules/{rule_id} | Update a DEX Rule |\n| GET | /accounts/{account_id}/dex/tests/overview | List DEX test analytics |\n| GET | /accounts/{account_id}/dex/tests/unique-devices | Get count of devices targeted |\n| GET | /accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path | Get details for a specific traceroute test run |\n| GET | /accounts/{account_id}/dex/traceroute-tests/{test_id} | Get details and aggregate metrics for a traceroute test |\n| GET | /accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path | Get network path breakdown for a traceroute test |\n| GET | /accounts/{account_id}/dex/traceroute-tests/{test_id}/percentiles | Get percentiles for a traceroute test |\n| GET | /accounts/{account_id}/dex/warp-change-events | List WARP change events. |\n| GET | /accounts/{account_id}/diagnostics/endpoint-healthchecks | List Endpoint Health Checks |\n| POST | /accounts/{account_id}/diagnostics/endpoint-healthchecks | Endpoint Health Check |\n| DELETE | /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id} | Delete Endpoint Health Check |\n| GET | /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id} | Get Endpoint Health Check |\n| PUT | /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id} | Update Endpoint Health Check |\n| POST | /accounts/{account_id}/diagnostics/traceroute | Traceroute |\n| GET | /accounts/{account_id}/dlp/datasets | Fetch all datasets |\n| POST | /accounts/{account_id}/dlp/datasets | Create a new dataset |\n| DELETE | /accounts/{account_id}/dlp/datasets/{dataset_id} | Delete a dataset |\n| GET | /accounts/{account_id}/dlp/datasets/{dataset_id} | Fetch a specific dataset |\n| PUT | /accounts/{account_id}/dlp/datasets/{dataset_id} | Update details about a dataset |\n| POST | /accounts/{account_id}/dlp/datasets/{dataset_id}/upload | Prepare to upload a new version of a dataset |\n| POST | /accounts/{account_id}/dlp/datasets/{dataset_id}/upload/{version} | Upload a new version of a dataset |\n| POST | /accounts/{account_id}/dlp/datasets/{dataset_id}/versions/{version} | Sets the column information for a multi-column upload |\n| POST | /accounts/{account_id}/dlp/datasets/{dataset_id}/versions/{version}/entries/{entry_id} | Upload a new version of a multi-column dataset |\n| GET | /accounts/{account_id}/dlp/document_fingerprints | Retrieve data about all document fingerprints. |\n| POST | /accounts/{account_id}/dlp/document_fingerprints | Creates a new document fingerprint. |\n| DELETE | /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id} | Delete a single document fingerprint. |\n| GET | /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id} | Retrieve data about a specific document fingerprint. |\n| POST | /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id} | Update the attributes of a single document fingerprint. |\n| PUT | /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id} | Uploads a new version for a document fingerprint. |\n| GET | /accounts/{account_id}/dlp/email/account_mapping | Get mapping |\n| POST | /accounts/{account_id}/dlp/email/account_mapping | Create mapping |\n| GET | /accounts/{account_id}/dlp/email/rules | List all email scanner rules |\n| PATCH | /accounts/{account_id}/dlp/email/rules | Update email scanner rule priorities |\n| POST | /accounts/{account_id}/dlp/email/rules | Create email scanner rule |\n| DELETE | /accounts/{account_id}/dlp/email/rules/{rule_id} | Delete email scanner rule |\n| GET | /accounts/{account_id}/dlp/email/rules/{rule_id} | Get an email scanner rule |\n| PUT | /accounts/{account_id}/dlp/email/rules/{rule_id} | Update email scanner rule |\n| GET | /accounts/{account_id}/dlp/entries | List all entries |\n| POST | /accounts/{account_id}/dlp/entries | Create custom entry |\n| PUT | /accounts/{account_id}/dlp/entries/custom/{entry_id} | Update custom entry |\n| POST | /accounts/{account_id}/dlp/entries/integration | Create integration entry |\n| DELETE | /accounts/{account_id}/dlp/entries/integration/{entry_id} | Delete integration entry |\n| PUT | /accounts/{account_id}/dlp/entries/integration/{entry_id} | Update integration entry |\n| POST | /accounts/{account_id}/dlp/entries/predefined | Create predefined entry |\n| DELETE | /accounts/{account_id}/dlp/entries/predefined/{entry_id} | Delete predefined entry |\n| PUT | /accounts/{account_id}/dlp/entries/predefined/{entry_id} | Update predefined entry |\n| DELETE | /accounts/{account_id}/dlp/entries/{entry_id} | Delete custom entry |\n| GET | /accounts/{account_id}/dlp/entries/{entry_id} | Get DLP Entry |\n| PUT | /accounts/{account_id}/dlp/entries/{entry_id} | Update entry |\n| GET | /accounts/{account_id}/dlp/limits | Fetch limits associated with DLP for account |\n| POST | /accounts/{account_id}/dlp/patterns/validate | Validate a DLP regex pattern |\n| GET | /accounts/{account_id}/dlp/payload_log | Get payload log settings |\n| PUT | /accounts/{account_id}/dlp/payload_log | Set payload log settings |\n| GET | /accounts/{account_id}/dlp/profiles | List all profiles |\n| GET | /accounts/{account_id}/dlp/profiles/custom | List all custom profiles |\n| POST | /accounts/{account_id}/dlp/profiles/custom | Create custom profile |\n| DELETE | /accounts/{account_id}/dlp/profiles/custom/{profile_id} | Delete custom profile |\n| GET | /accounts/{account_id}/dlp/profiles/custom/{profile_id} | Get custom profile |\n| PUT | /accounts/{account_id}/dlp/profiles/custom/{profile_id} | Update custom profile |\n| POST | /accounts/{account_id}/dlp/profiles/predefined | Create predefined profile |\n| DELETE | /accounts/{account_id}/dlp/profiles/predefined/{profile_id} | Delete predefined profile |\n| GET | /accounts/{account_id}/dlp/profiles/predefined/{profile_id} | Get predefined profile |\n| PUT | /accounts/{account_id}/dlp/profiles/predefined/{profile_id} | Update predefined profile |\n| GET | /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config | Get predefined profile config |\n| POST | /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config | Create predefined profile |\n| PUT | /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config | Update predefined profile config |\n| GET | /accounts/{account_id}/dlp/profiles/{profile_id} | Get DLP Profile |\n| DELETE | /accounts/{account_id}/dlp/settings | Delete (reset) DLP account-level settings to initial values. |\n| GET | /accounts/{account_id}/dlp/settings | Get DLP account-level settings. |\n| PATCH | /accounts/{account_id}/dlp/settings | Partially update DLP account-level settings. |\n| PUT | /accounts/{account_id}/dlp/settings | Update DLP account-level settings (full replacement). |\n| GET | /accounts/{account_id}/dns_firewall | List DNS Firewall Clusters |\n| POST | /accounts/{account_id}/dns_firewall | Create DNS Firewall Cluster |\n| DELETE | /accounts/{account_id}/dns_firewall/{dns_firewall_id} | Delete DNS Firewall Cluster |\n| GET | /accounts/{account_id}/dns_firewall/{dns_firewall_id} | DNS Firewall Cluster Details |\n| PATCH | /accounts/{account_id}/dns_firewall/{dns_firewall_id} | Update DNS Firewall Cluster |\n| GET | /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report | Table |\n| GET | /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report/bytime | By Time |\n| GET | /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns | Show DNS Firewall Cluster Reverse DNS |\n| PATCH | /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns | Update DNS Firewall Cluster Reverse DNS |\n| GET | /accounts/{account_id}/dns_records/usage | Get DNS Record Usage for Account |\n| GET | /accounts/{account_id}/dns_settings | Show DNS Settings |\n| PATCH | /accounts/{account_id}/dns_settings | Update DNS Settings |\n| GET | /accounts/{account_id}/dns_settings/views | List Internal DNS Views |\n| POST | /accounts/{account_id}/dns_settings/views | Create Internal DNS View |\n| DELETE | /accounts/{account_id}/dns_settings/views/{view_id} | Delete Internal DNS View |\n| GET | /accounts/{account_id}/dns_settings/views/{view_id} | DNS Internal View Details |\n| PATCH | /accounts/{account_id}/dns_settings/views/{view_id} | Update Internal DNS View |\n| GET | /accounts/{account_id}/email-security/investigate | Search email messages |\n| POST | /accounts/{account_id}/email-security/investigate/move | Move multiple messages |\n| POST | /accounts/{account_id}/email-security/investigate/preview | Preview for non-detection messages |\n| POST | /accounts/{account_id}/email-security/investigate/release | Release messages from quarantine |\n| GET | /accounts/{account_id}/email-security/investigate/{postfix_id} | Get message details |\n| GET | /accounts/{account_id}/email-security/investigate/{postfix_id}/detections | Get message detection details |\n| POST | /accounts/{account_id}/email-security/investigate/{postfix_id}/move | Move a message |\n| GET | /accounts/{account_id}/email-security/investigate/{postfix_id}/preview | Get email preview |\n| GET | /accounts/{account_id}/email-security/investigate/{postfix_id}/raw | Get raw email content |\n| POST | /accounts/{account_id}/email-security/investigate/{postfix_id}/reclassify | Change email classification |\n| GET | /accounts/{account_id}/email-security/investigate/{postfix_id}/trace | Get email trace |\n| GET | /accounts/{account_id}/email-security/phishguard/reports | Get `PhishGuard` reports |\n| GET | /accounts/{account_id}/email-security/settings/allow_policies | List email allow policies |\n| POST | /accounts/{account_id}/email-security/settings/allow_policies | Create an email allow policy |\n| POST | /accounts/{account_id}/email-security/settings/allow_policies/batch | Batch Allow Policies |\n| DELETE | /accounts/{account_id}/email-security/settings/allow_policies/{policy_id} | Delete an email allow policy |\n| GET | /accounts/{account_id}/email-security/settings/allow_policies/{policy_id} | Get an email allow policy |\n| PATCH | /accounts/{account_id}/email-security/settings/allow_policies/{policy_id} | Update an email allow policy |\n| GET | /accounts/{account_id}/email-security/settings/block_senders | List blocked email senders |\n| POST | /accounts/{account_id}/email-security/settings/block_senders | Create a blocked email sender |\n| POST | /accounts/{account_id}/email-security/settings/block_senders/batch | Batch Block Senders |\n| DELETE | /accounts/{account_id}/email-security/settings/block_senders/{pattern_id} | Delete a blocked email sender |\n| GET | /accounts/{account_id}/email-security/settings/block_senders/{pattern_id} | Get a blocked email sender |\n| PATCH | /accounts/{account_id}/email-security/settings/block_senders/{pattern_id} | Update a blocked email sender |\n| DELETE | /accounts/{account_id}/email-security/settings/domains | Unprotect multiple email domains |\n| GET | /accounts/{account_id}/email-security/settings/domains | List protected email domains |\n| DELETE | /accounts/{account_id}/email-security/settings/domains/{domain_id} | Unprotect an email domain |\n| GET | /accounts/{account_id}/email-security/settings/domains/{domain_id} | Get an email domain |\n| PATCH | /accounts/{account_id}/email-security/settings/domains/{domain_id} | Update an email domain |\n| GET | /accounts/{account_id}/email-security/settings/impersonation_registry | List entries in impersonation registry |\n| POST | /accounts/{account_id}/email-security/settings/impersonation_registry | Create an entry in impersonation registry |\n| DELETE | /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id} | Delete an entry from impersonation registry |\n| GET | /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id} | Get an entry in impersonation registry |\n| PATCH | /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id} | Update an entry in impersonation registry |\n| POST | /accounts/{account_id}/email-security/settings/sending_domain_restrictions/batch | Batch Sending Domain Restrictions |\n| GET | /accounts/{account_id}/email-security/settings/trusted_domains | List trusted email domains |\n| POST | /accounts/{account_id}/email-security/settings/trusted_domains | Create a trusted email domain |\n| POST | /accounts/{account_id}/email-security/settings/trusted_domains/batch | Batch Trusted Domains |\n| DELETE | /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id} | Delete a trusted email domain |\n| GET | /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id} | Get a trusted email domain |\n| PATCH | /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id} | Update a trusted email domain |\n| GET | /accounts/{account_id}/email-security/submissions | Get reclassify submissions |\n| GET | /accounts/{account_id}/email/routing/addresses | List destination addresses |\n| POST | /accounts/{account_id}/email/routing/addresses | Create a destination address |\n| DELETE | /accounts/{account_id}/email/routing/addresses/{destination_address_identifier} | Delete destination address |\n| GET | /accounts/{account_id}/email/routing/addresses/{destination_address_identifier} | Get a destination address |\n| POST | /accounts/{account_id}/email/sending/send | Send an email using the builder. |\n| POST | /accounts/{account_id}/email/sending/send_raw | Send a raw MIME email message. |\n| GET | /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration | List Event Notification Rules |\n| DELETE | /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id} | Delete Event Notification Rules |\n| GET | /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id} | Get Event Notification Rule |\n| PUT | /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id} | Create Event Notification Rule |\n| GET | /accounts/{account_id}/event_subscriptions/subscriptions | List Event Subscriptions |\n| POST | /accounts/{account_id}/event_subscriptions/subscriptions | Create Event Subscription |\n| DELETE | /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id} | Delete Event Subscription |\n| GET | /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id} | Get Event Subscription |\n| PATCH | /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id} | Update Event Subscription |\n| GET | /accounts/{account_id}/firewall/access_rules/rules | List IP Access rules |\n| POST | /accounts/{account_id}/firewall/access_rules/rules | Create an IP Access rule |\n| DELETE | /accounts/{account_id}/firewall/access_rules/rules/{rule_id} | Delete an IP Access rule |\n| GET | /accounts/{account_id}/firewall/access_rules/rules/{rule_id} | Get an IP Access rule |\n| PATCH | /accounts/{account_id}/firewall/access_rules/rules/{rule_id} | Update an IP Access rule |\n| GET | /accounts/{account_id}/gateway | Get Zero Trust account information |\n| POST | /accounts/{account_id}/gateway | Create Zero Trust account |\n| GET | /accounts/{account_id}/gateway/app_types | List application and application type mappings |\n| GET | /accounts/{account_id}/gateway/apps/review_status | List applications review statuses |\n| PUT | /accounts/{account_id}/gateway/apps/review_status | Update applications review statuses |\n| GET | /accounts/{account_id}/gateway/audit_ssh_settings | Get Zero Trust SSH settings |\n| PUT | /accounts/{account_id}/gateway/audit_ssh_settings | Update Zero Trust SSH settings |\n| POST | /accounts/{account_id}/gateway/audit_ssh_settings/rotate_seed | Rotate Zero Trust SSH account seed |\n| GET | /accounts/{account_id}/gateway/categories | List categories |\n| GET | /accounts/{account_id}/gateway/certificates | List Zero Trust certificates |\n| POST | /accounts/{account_id}/gateway/certificates | Create Zero Trust certificate |\n| DELETE | /accounts/{account_id}/gateway/certificates/{certificate_id} | Delete Zero Trust certificate |\n| GET | /accounts/{account_id}/gateway/certificates/{certificate_id} | Get Zero Trust certificate details |\n| POST | /accounts/{account_id}/gateway/certificates/{certificate_id}/activate | Activate a Zero Trust certificate |\n| POST | /accounts/{account_id}/gateway/certificates/{certificate_id}/deactivate | Deactivate a Zero Trust certificate |\n| GET | /accounts/{account_id}/gateway/configuration | Get Zero Trust account configuration |\n| PATCH | /accounts/{account_id}/gateway/configuration | Patch Zero Trust account configuration |\n| PUT | /accounts/{account_id}/gateway/configuration | Update Zero Trust account configuration |\n| GET | /accounts/{account_id}/gateway/configuration/custom_certificate | Get Zero Trust certificate configuration |\n| GET | /accounts/{account_id}/gateway/lists | List Zero Trust lists |\n| POST | /accounts/{account_id}/gateway/lists | Create Zero Trust list |\n| DELETE | /accounts/{account_id}/gateway/lists/{list_id} | Delete Zero Trust list |\n| GET | /accounts/{account_id}/gateway/lists/{list_id} | Get Zero Trust list details |\n| PATCH | /accounts/{account_id}/gateway/lists/{list_id} | Patch Zero Trust list. |\n| PUT | /accounts/{account_id}/gateway/lists/{list_id} | Update Zero Trust list |\n| GET | /accounts/{account_id}/gateway/lists/{list_id}/items | Get Zero Trust list items |\n| GET | /accounts/{account_id}/gateway/locations | List Zero Trust Gateway locations |\n| POST | /accounts/{account_id}/gateway/locations | Create a Zero Trust Gateway location |\n| DELETE | /accounts/{account_id}/gateway/locations/{location_id} | Delete a Zero Trust Gateway location |\n| GET | /accounts/{account_id}/gateway/locations/{location_id} | Get Zero Trust Gateway location details |\n| PUT | /accounts/{account_id}/gateway/locations/{location_id} | Update a Zero Trust Gateway location |\n| GET | /accounts/{account_id}/gateway/logging | Get logging settings for the Zero Trust account |\n| PUT | /accounts/{account_id}/gateway/logging | Update Zero Trust account logging settings |\n| GET | /accounts/{account_id}/gateway/pacfiles | List PAC files |\n| POST | /accounts/{account_id}/gateway/pacfiles | Create a PAC file |\n| DELETE | /accounts/{account_id}/gateway/pacfiles/{pacfile_id} | Delete a PAC file |\n| GET | /accounts/{account_id}/gateway/pacfiles/{pacfile_id} | Get a PAC file |\n| PUT | /accounts/{account_id}/gateway/pacfiles/{pacfile_id} | Update a Zero Trust Gateway PAC file |\n| GET | /accounts/{account_id}/gateway/proxy_endpoints | List proxy endpoints |\n| POST | /accounts/{account_id}/gateway/proxy_endpoints | Create a proxy endpoint |\n| DELETE | /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id} | Delete a proxy endpoint |\n| GET | /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id} | Get a proxy endpoint |\n| PATCH | /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id} | Update a proxy endpoint |\n| GET | /accounts/{account_id}/gateway/rules | List Zero Trust Gateway rules |\n| POST | /accounts/{account_id}/gateway/rules | Create a Zero Trust Gateway rule |\n| GET | /accounts/{account_id}/gateway/rules/tenant | List Zero Trust Gateway rules inherited from the parent account |\n| DELETE | /accounts/{account_id}/gateway/rules/{rule_id} | Delete a Zero Trust Gateway rule |\n| GET | /accounts/{account_id}/gateway/rules/{rule_id} | Get Zero Trust Gateway rule details. |\n| PUT | /accounts/{account_id}/gateway/rules/{rule_id} | Update a Zero Trust Gateway rule |\n| POST | /accounts/{account_id}/gateway/rules/{rule_id}/reset_expiration | Reset the expiration of a Zero Trust Gateway Rule |\n| GET | /accounts/{account_id}/hyperdrive/configs | List Hyperdrives |\n| POST | /accounts/{account_id}/hyperdrive/configs | Create Hyperdrive |\n| DELETE | /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id} | Delete Hyperdrive |\n| GET | /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id} | Get Hyperdrive |\n| PATCH | /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id} | Patch Hyperdrive |\n| PUT | /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id} | Update Hyperdrive |\n| GET | /accounts/{account_id}/iam/permission_groups | List Account Permission Groups |\n| GET | /accounts/{account_id}/iam/permission_groups/{permission_group_id} | Permission Group Details |\n| GET | /accounts/{account_id}/iam/resource_groups | List Resource Groups |\n| POST | /accounts/{account_id}/iam/resource_groups | Create Resource Group |\n| DELETE | /accounts/{account_id}/iam/resource_groups/{resource_group_id} | Remove Resource Group |\n| GET | /accounts/{account_id}/iam/resource_groups/{resource_group_id} | Resource Group Details |\n| PUT | /accounts/{account_id}/iam/resource_groups/{resource_group_id} | Update Resource Group |\n| GET | /accounts/{account_id}/iam/user_groups | List User Groups |\n| POST | /accounts/{account_id}/iam/user_groups | Create User Group |\n| DELETE | /accounts/{account_id}/iam/user_groups/{user_group_id} | Remove User Group |\n| GET | /accounts/{account_id}/iam/user_groups/{user_group_id} | User Group Details |\n| PUT | /accounts/{account_id}/iam/user_groups/{user_group_id} | Update User Group |\n| GET | /accounts/{account_id}/iam/user_groups/{user_group_id}/members | List User Group Members |\n| POST | /accounts/{account_id}/iam/user_groups/{user_group_id}/members | Add User Group Members |\n| PUT | /accounts/{account_id}/iam/user_groups/{user_group_id}/members | Update User Group Members |\n| DELETE | /accounts/{account_id}/iam/user_groups/{user_group_id}/members/{member_id} | Remove User Group Member |\n| GET | /accounts/{account_id}/images/v1 | List images |\n| POST | /accounts/{account_id}/images/v1 | Upload an image |\n| GET | /accounts/{account_id}/images/v1/keys | List Signing Keys |\n| DELETE | /accounts/{account_id}/images/v1/keys/{signing_key_name} | Delete Signing Key |\n| PUT | /accounts/{account_id}/images/v1/keys/{signing_key_name} | Create a new Signing Key |\n| GET | /accounts/{account_id}/images/v1/stats | Images usage statistics |\n| GET | /accounts/{account_id}/images/v1/variants | List variants |\n| POST | /accounts/{account_id}/images/v1/variants | Create a variant |\n| DELETE | /accounts/{account_id}/images/v1/variants/{variant_id} | Delete a variant |\n| GET | /accounts/{account_id}/images/v1/variants/{variant_id} | Variant details |\n| PATCH | /accounts/{account_id}/images/v1/variants/{variant_id} | Update a variant |\n| GET | /accounts/{account_id}/images/v1/variants/{variant_id}/flat | Variant details (flat) |\n| DELETE | /accounts/{account_id}/images/v1/{image_id} | Delete image |\n| GET | /accounts/{account_id}/images/v1/{image_id} | Image details |\n| PATCH | /accounts/{account_id}/images/v1/{image_id} | Update image |\n| GET | /accounts/{account_id}/images/v1/{image_id}/blob | Base image |\n| GET | /accounts/{account_id}/images/v2 | List images V2 |\n| POST | /accounts/{account_id}/images/v2/direct_upload | Create authenticated direct upload URL V2 |\n| GET | /accounts/{account_id}/infrastructure/targets | List all targets |\n| POST | /accounts/{account_id}/infrastructure/targets | Create new target |\n| DELETE | /accounts/{account_id}/infrastructure/targets/batch | Delete targets (Deprecated) |\n| PUT | /accounts/{account_id}/infrastructure/targets/batch | Create new targets |\n| POST | /accounts/{account_id}/infrastructure/targets/batch_delete | Delete targets |\n| DELETE | /accounts/{account_id}/infrastructure/targets/{target_id} | Delete target |\n| GET | /accounts/{account_id}/infrastructure/targets/{target_id} | Get target |\n| PUT | /accounts/{account_id}/infrastructure/targets/{target_id} | Update target |\n| GET | /accounts/{account_id}/intel/asn/{asn} | Get ASN Overview. |\n| GET | /accounts/{account_id}/intel/asn/{asn}/subnets | Get ASN Subnets |\n| GET | /accounts/{account_id}/intel/attack-surface-report/issue-types | Retrieves Security Center Issues Types |\n| GET | /accounts/{account_id}/intel/attack-surface-report/issues | Retrieves Security Center Issues |\n| GET | /accounts/{account_id}/intel/attack-surface-report/issues/class | Retrieves Security Center Issue Counts by Class |\n| GET | /accounts/{account_id}/intel/attack-surface-report/issues/severity | Retrieves Security Center Issue Counts by Severity |\n| GET | /accounts/{account_id}/intel/attack-surface-report/issues/type | Retrieves Security Center Issue Counts by Type |\n| PUT | /accounts/{account_id}/intel/attack-surface-report/{issue_id}/dismiss | Archives Security Center Insight |\n| GET | /accounts/{account_id}/intel/dns | Get Passive DNS by IP |\n| GET | /accounts/{account_id}/intel/domain | Get Domain Details |\n| GET | /accounts/{account_id}/intel/domain-history | Get Domain History |\n| GET | /accounts/{account_id}/intel/domain/bulk | Get Multiple Domain Details |\n| GET | /accounts/{account_id}/intel/indicator-feeds | Get indicator feeds owned by this account |\n| POST | /accounts/{account_id}/intel/indicator-feeds | Create new indicator feed |\n| PUT | /accounts/{account_id}/intel/indicator-feeds/permissions/add | Grant permission to indicator feed |\n| PUT | /accounts/{account_id}/intel/indicator-feeds/permissions/remove | Revoke permission to indicator feed |\n| GET | /accounts/{account_id}/intel/indicator-feeds/permissions/view | List indicator feed permissions |\n| GET | /accounts/{account_id}/intel/indicator-feeds/{feed_id} | Get indicator feed metadata |\n| PUT | /accounts/{account_id}/intel/indicator-feeds/{feed_id} | Update indicator feed metadata |\n| GET | /accounts/{account_id}/intel/indicator-feeds/{feed_id}/data | Get indicator feed data |\n| GET | /accounts/{account_id}/intel/indicator-feeds/{feed_id}/download | Download indicator feed data |\n| PUT | /accounts/{account_id}/intel/indicator-feeds/{feed_id}/snapshot | Update indicator feed data |\n| GET | /accounts/{account_id}/intel/ip | Get IP Overview |\n| GET | /accounts/{account_id}/intel/ip-lists | Get Available IP Lists |\n| POST | /accounts/{account_id}/intel/miscategorization | Create Miscategorization |\n| GET | /accounts/{account_id}/intel/sinkholes | List sinkholes owned by this account |\n| GET | /accounts/{account_id}/intel/whois | Get WHOIS Record |\n| GET | /accounts/{account_id}/load_balancers/monitor_groups | List Monitor Groups |\n| POST | /accounts/{account_id}/load_balancers/monitor_groups | Create Monitor Group |\n| DELETE | /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id} | Delete Monitor Group |\n| GET | /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id} | Monitor Group Details |\n| PATCH | /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id} | Patch Monitor Group |\n| PUT | /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id} | Update Monitor Group |\n| GET | /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}/references | List Monitor Group References |\n| GET | /accounts/{account_id}/load_balancers/monitors | List Monitors |\n| POST | /accounts/{account_id}/load_balancers/monitors | Create Monitor |\n| DELETE | /accounts/{account_id}/load_balancers/monitors/{monitor_id} | Delete Monitor |\n| GET | /accounts/{account_id}/load_balancers/monitors/{monitor_id} | Monitor Details |\n| PATCH | /accounts/{account_id}/load_balancers/monitors/{monitor_id} | Patch Monitor |\n| PUT | /accounts/{account_id}/load_balancers/monitors/{monitor_id} | Update Monitor |\n| POST | /accounts/{account_id}/load_balancers/monitors/{monitor_id}/preview | Preview Monitor |\n| GET | /accounts/{account_id}/load_balancers/monitors/{monitor_id}/references | List Monitor References |\n| GET | /accounts/{account_id}/load_balancers/pools | List Pools |\n| PATCH | /accounts/{account_id}/load_balancers/pools | Patch Pools |\n| POST | /accounts/{account_id}/load_balancers/pools | Create Pool |\n| DELETE | /accounts/{account_id}/load_balancers/pools/{pool_id} | Delete Pool |\n| GET | /accounts/{account_id}/load_balancers/pools/{pool_id} | Pool Details |\n| PATCH | /accounts/{account_id}/load_balancers/pools/{pool_id} | Patch Pool |\n| PUT | /accounts/{account_id}/load_balancers/pools/{pool_id} | Update Pool |\n| GET | /accounts/{account_id}/load_balancers/pools/{pool_id}/health | Pool Health Details |\n| POST | /accounts/{account_id}/load_balancers/pools/{pool_id}/preview | Preview Pool |\n| GET | /accounts/{account_id}/load_balancers/pools/{pool_id}/references | List Pool References |\n| GET | /accounts/{account_id}/load_balancers/preview/{preview_id} | Preview Result |\n| GET | /accounts/{account_id}/load_balancers/regions | List Regions |\n| GET | /accounts/{account_id}/load_balancers/regions/{region_id} | Get Region |\n| GET | /accounts/{account_id}/load_balancers/search | Search Resources |\n| GET | /accounts/{account_id}/logpush/datasets/{dataset_id}/fields | List fields |\n| GET | /accounts/{account_id}/logpush/datasets/{dataset_id}/jobs | List Logpush jobs for a dataset |\n| GET | /accounts/{account_id}/logpush/jobs | List Logpush jobs |\n| POST | /accounts/{account_id}/logpush/jobs | Create Logpush job |\n| DELETE | /accounts/{account_id}/logpush/jobs/{job_id} | Delete Logpush job |\n| GET | /accounts/{account_id}/logpush/jobs/{job_id} | Get Logpush job details |\n| PUT | /accounts/{account_id}/logpush/jobs/{job_id} | Update Logpush job |\n| POST | /accounts/{account_id}/logpush/ownership | Get ownership challenge |\n| POST | /accounts/{account_id}/logpush/ownership/validate | Validate ownership challenge |\n| POST | /accounts/{account_id}/logpush/validate/destination | Validate destination |\n| POST | /accounts/{account_id}/logpush/validate/destination/exists | Check destination exists |\n| POST | /accounts/{account_id}/logpush/validate/origin | Validate origin |\n| GET | /accounts/{account_id}/logs/audit | Get account audit logs (Version 2) |\n| DELETE | /accounts/{account_id}/logs/control/cmb/config | Delete CMB config |\n| GET | /accounts/{account_id}/logs/control/cmb/config | Get CMB config |\n| POST | /accounts/{account_id}/logs/control/cmb/config | Update CMB config |\n| DELETE | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules | Delete all DNS Protection rules. |\n| GET | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules | List all DNS Protection rules. |\n| POST | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules | Create DNS Protection rule. |\n| DELETE | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id} | Delete DNS Protection rule. |\n| GET | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id} | Get DNS Protection rule. |\n| PATCH | /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id} | Update DNS Protection rule. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist | Delete all allowlist prefixes. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist | List all allowlist prefixes. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist | Create allowlist prefix. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id} | Delete allowlist prefix. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id} | Get allowlist prefix. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id} | Update allowlist prefix. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes | Delete all prefixes. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes | List all prefixes. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes | Create prefix. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/bulk | Create multiple prefixes. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id} | Delete prefix. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id} | Get prefix. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id} | Update prefix. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters | Delete all SYN Protection filters. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters | List all SYN Protection filters. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters | Create a SYN Protection filter. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id} | Delete SYN Protection filter. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id} | Get SYN Protection filter. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id} | Update SYN Protection filter. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules | Delete all SYN Protection rules. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules | List all SYN Protection rules. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules | Create SYN Protection rule. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id} | Delete SYN Protection rule. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id} | Get SYN Protection rule. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id} | Update SYN Protection rule. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters | Delete all TCP Flow Protection filters. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters | List all TCP Flow Protection filters. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters | Create a TCP Flow Protection filter. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id} | Delete TCP Flow Protection filter. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id} | Get TCP Flow Protection filter. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id} | Update TCP Flow Protection filter. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules | Delete all TCP Flow Protection rules. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules | List all TCP Flow Protection rules. |\n| POST | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules | Create TCP Flow Protection rule. |\n| DELETE | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id} | Delete TCP Flow Protection rule. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id} | Get TCP Flow Protection rule. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id} | Update TCP Flow Protection rule. |\n| GET | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status | Get protection status. |\n| PATCH | /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status | Update protection status. |\n| GET | /accounts/{account_id}/magic/apps | List Apps |\n| POST | /accounts/{account_id}/magic/apps | Create a new App |\n| DELETE | /accounts/{account_id}/magic/apps/{account_app_id} | Delete Account App |\n| PATCH | /accounts/{account_id}/magic/apps/{account_app_id} | Update an App |\n| PUT | /accounts/{account_id}/magic/apps/{account_app_id} | Update an App |\n| GET | /accounts/{account_id}/magic/cf_interconnects | List interconnects |\n| PUT | /accounts/{account_id}/magic/cf_interconnects | Update multiple interconnects |\n| GET | /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id} | List interconnect Details |\n| PUT | /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id} | Update interconnect |\n| GET | /accounts/{account_id}/magic/cloud/catalog-syncs | List Catalog Syncs |\n| POST | /accounts/{account_id}/magic/cloud/catalog-syncs | Create Catalog Sync |\n| GET | /accounts/{account_id}/magic/cloud/catalog-syncs/prebuilt-policies | List Prebuilt Policies |\n| DELETE | /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id} | Delete Catalog Sync |\n| GET | /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id} | Read Catalog Sync |\n| PATCH | /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id} | Patch Catalog Sync |\n| PUT | /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id} | Update Catalog Sync |\n| POST | /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}/refresh | Run Catalog Sync |\n| GET | /accounts/{account_id}/magic/cloud/onramps | List On-ramps |\n| POST | /accounts/{account_id}/magic/cloud/onramps | Create On-ramp |\n| GET | /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space | Read Magic WAN Address Space |\n| PATCH | /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space | Patch Magic WAN Address Space |\n| PUT | /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space | Update Magic WAN Address Space |\n| DELETE | /accounts/{account_id}/magic/cloud/onramps/{onramp_id} | Delete On-ramp |\n| GET | /accounts/{account_id}/magic/cloud/onramps/{onramp_id} | Read On-ramp |\n| PATCH | /accounts/{account_id}/magic/cloud/onramps/{onramp_id} | Patch On-ramp |\n| PUT | /accounts/{account_id}/magic/cloud/onramps/{onramp_id} | Update On-ramp |\n| POST | /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/apply | Apply On-ramp |\n| POST | /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/export | Export as Terraform |\n| POST | /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/plan | Plan On-ramp |\n| GET | /accounts/{account_id}/magic/cloud/providers | List Cloud Integrations |\n| POST | /accounts/{account_id}/magic/cloud/providers | Create Cloud Integration |\n| POST | /accounts/{account_id}/magic/cloud/providers/discover | Run Discovery for All Integrations |\n| DELETE | /accounts/{account_id}/magic/cloud/providers/{provider_id} | Delete Cloud Integration |\n| GET | /accounts/{account_id}/magic/cloud/providers/{provider_id} | Read Cloud Integration |\n| PATCH | /accounts/{account_id}/magic/cloud/providers/{provider_id} | Patch Cloud Integration |\n| PUT | /accounts/{account_id}/magic/cloud/providers/{provider_id} | Update Cloud Integration |\n| POST | /accounts/{account_id}/magic/cloud/providers/{provider_id}/discover | Run Discovery |\n| GET | /accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup | Get Cloud Integration Setup Config |\n| GET | /accounts/{account_id}/magic/cloud/resources | List Resources |\n| GET | /accounts/{account_id}/magic/cloud/resources/export | Export Resources |\n| POST | /accounts/{account_id}/magic/cloud/resources/policy-preview | Preview Rego Query |\n| GET | /accounts/{account_id}/magic/cloud/resources/{resource_id} | Read Resource |\n| GET | /accounts/{account_id}/magic/connectors | List Connectors |\n| POST | /accounts/{account_id}/magic/connectors | Add a connector to your account |\n| DELETE | /accounts/{account_id}/magic/connectors/{connector_id} | Remove a connector from your account |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id} | Fetch Connector |\n| PATCH | /accounts/{account_id}/magic/connectors/{connector_id} | Edit Connector to update specific properties or Re-provision License Key |\n| PUT | /accounts/{account_id}/magic/connectors/{connector_id} | Replace Connector or Re-provision License Key |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events | List Events |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/latest | Get latest Events |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/{event_t}.{event_n} | Get Event |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots | List Snapshots |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/latest | Get latest Snapshots |\n| GET | /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/{snapshot_t} | Get Snapshot |\n| GET | /accounts/{account_id}/magic/gre_tunnels | List GRE tunnels |\n| POST | /accounts/{account_id}/magic/gre_tunnels | Create a GRE tunnel |\n| PUT | /accounts/{account_id}/magic/gre_tunnels | Update multiple GRE tunnels |\n| DELETE | /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id} | Delete GRE Tunnel |\n| GET | /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id} | List GRE Tunnel Details |\n| PUT | /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id} | Update GRE Tunnel |\n| GET | /accounts/{account_id}/magic/ipsec_tunnels | List IPsec tunnels |\n| POST | /accounts/{account_id}/magic/ipsec_tunnels | Create an IPsec tunnel |\n| PUT | /accounts/{account_id}/magic/ipsec_tunnels | Update multiple IPsec tunnels |\n| DELETE | /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id} | Delete IPsec Tunnel |\n| GET | /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id} | List IPsec tunnel details |\n| PUT | /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id} | Update IPsec Tunnel |\n| POST | /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}/psk_generate | Generate Pre Shared Key (PSK) for IPsec tunnels |\n| DELETE | /accounts/{account_id}/magic/routes | Delete Many Routes |\n| GET | /accounts/{account_id}/magic/routes | List Routes |\n| POST | /accounts/{account_id}/magic/routes | Create a Route |\n| PUT | /accounts/{account_id}/magic/routes | Update Many Routes |\n| DELETE | /accounts/{account_id}/magic/routes/{route_id} | Delete Route |\n| GET | /accounts/{account_id}/magic/routes/{route_id} | Route Details |\n| PUT | /accounts/{account_id}/magic/routes/{route_id} | Update Route |\n| GET | /accounts/{account_id}/magic/sites | List Sites |\n| POST | /accounts/{account_id}/magic/sites | Create a new Site |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id} | Delete Site |\n| GET | /accounts/{account_id}/magic/sites/{site_id} | Site Details |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id} | Patch Site |\n| PUT | /accounts/{account_id}/magic/sites/{site_id} | Update Site |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/acls | List Site ACLs |\n| POST | /accounts/{account_id}/magic/sites/{site_id}/acls | Create a new Site ACL |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id} | Delete Site ACL |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id} | Site ACL Details |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id} | Patch Site ACL |\n| PUT | /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id} | Update Site ACL |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/app_configs | List App Configs |\n| POST | /accounts/{account_id}/magic/sites/{site_id}/app_configs | Create a new App Config |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id} | Delete App Config |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id} | Update an App Config |\n| PUT | /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id} | Update an App Config |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/lans | List Site LANs |\n| POST | /accounts/{account_id}/magic/sites/{site_id}/lans | Create a new Site LAN |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id} | Delete Site LAN |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id} | Site LAN Details |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id} | Patch Site LAN |\n| PUT | /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id} | Update Site LAN |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id}/netflow_config | Delete NetFlow Configuration |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/netflow_config | NetFlow Configuration Details |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id}/netflow_config | Update NetFlow Configuration |\n| POST | /accounts/{account_id}/magic/sites/{site_id}/netflow_config | Create NetFlow Configuration |\n| PUT | /accounts/{account_id}/magic/sites/{site_id}/netflow_config | Update NetFlow Configuration |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/wans | List Site WANs |\n| POST | /accounts/{account_id}/magic/sites/{site_id}/wans | Create a new Site WAN |\n| DELETE | /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id} | Delete Site WAN |\n| GET | /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id} | Site WAN Details |\n| PATCH | /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id} | Patch Site WAN |\n| PUT | /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id} | Update Site WAN |\n| GET | /accounts/{account_id}/members | List Members |\n| POST | /accounts/{account_id}/members | Add Member |\n| DELETE | /accounts/{account_id}/members/{member_id} | Remove Member |\n| GET | /accounts/{account_id}/members/{member_id} | Member Details |\n| PUT | /accounts/{account_id}/members/{member_id} | Update Member |\n| DELETE | /accounts/{account_id}/mnm/config | Delete account configuration |\n| GET | /accounts/{account_id}/mnm/config | List account configuration |\n| PATCH | /accounts/{account_id}/mnm/config | Update account configuration fields |\n| POST | /accounts/{account_id}/mnm/config | Create account configuration |\n| PUT | /accounts/{account_id}/mnm/config | Update an entire account configuration |\n| GET | /accounts/{account_id}/mnm/config/full | List rules and account configuration |\n| GET | /accounts/{account_id}/mnm/rules | List rules |\n| POST | /accounts/{account_id}/mnm/rules | Create rules |\n| PUT | /accounts/{account_id}/mnm/rules | Update rules |\n| DELETE | /accounts/{account_id}/mnm/rules/{rule_id} | Delete rule |\n| GET | /accounts/{account_id}/mnm/rules/{rule_id} | Get rule |\n| PATCH | /accounts/{account_id}/mnm/rules/{rule_id} | Update rule |\n| PATCH | /accounts/{account_id}/mnm/rules/{rule_id}/advertisement | Update advertisement for rule |\n| POST | /accounts/{account_id}/mnm/vpc-flows/token | Generate authentication token for VPC flow logs export. |\n| POST | /accounts/{account_id}/move | Move account |\n| GET | /accounts/{account_id}/mtls_certificates | List mTLS certificates |\n| POST | /accounts/{account_id}/mtls_certificates | Upload mTLS certificate |\n| DELETE | /accounts/{account_id}/mtls_certificates/{mtls_certificate_id} | Delete mTLS certificate |\n| GET | /accounts/{account_id}/mtls_certificates/{mtls_certificate_id} | Get mTLS certificate |\n| GET | /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations | List mTLS certificate associations |\n| GET | /accounts/{account_id}/organizations | List account organizations |\n| GET | /accounts/{account_id}/pages/projects | Get projects |\n| POST | /accounts/{account_id}/pages/projects | Create project |\n| DELETE | /accounts/{account_id}/pages/projects/{project_name} | Delete project |\n| GET | /accounts/{account_id}/pages/projects/{project_name} | Get project |\n| PATCH | /accounts/{account_id}/pages/projects/{project_name} | Update project |\n| GET | /accounts/{account_id}/pages/projects/{project_name}/deployments | Get deployments |\n| POST | /accounts/{account_id}/pages/projects/{project_name}/deployments | Create deployment |\n| DELETE | /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id} | Delete deployment |\n| GET | /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id} | Get deployment info |\n| GET | /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs | Get deployment logs |\n| POST | /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/retry | Retry deployment |\n| POST | /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/rollback | Rollback deployment |\n| GET | /accounts/{account_id}/pages/projects/{project_name}/domains | Get domains |\n| POST | /accounts/{account_id}/pages/projects/{project_name}/domains | Add domain |\n| DELETE | /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name} | Delete domain |\n| GET | /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name} | Get domain |\n| PATCH | /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name} | Patch domain |\n| POST | /accounts/{account_id}/pages/projects/{project_name}/purge_build_cache | Purge build cache |\n| DELETE | /accounts/{account_id}/pay-per-crawl/crawler/stripe | Deletes the stripe config for a crawler |\n| GET | /accounts/{account_id}/pay-per-crawl/crawler/stripe | Gets the stripe config for a crawler |\n| POST | /accounts/{account_id}/pay-per-crawl/crawler/stripe | Creates the stripe config for a crawler |\n| DELETE | /accounts/{account_id}/pay-per-crawl/publisher/stripe | Deletes the stripe config for a publisher |\n| GET | /accounts/{account_id}/pay-per-crawl/publisher/stripe | Gets the stripe config for a publisher |\n| POST | /accounts/{account_id}/pay-per-crawl/publisher/stripe | Creates the stripe config for a publisher |\n| PATCH | /accounts/{account_id}/pay-per-crawl/zones_can_be_enabled | Set can_be_enabled setting on zones |\n| POST | /accounts/{account_id}/pay-per-crawl/zones_can_be_enabled/query | Gets the can_be_enabled zone setting |\n| GET | /accounts/{account_id}/pcaps | List packet capture requests |\n| POST | /accounts/{account_id}/pcaps | Create PCAP request |\n| GET | /accounts/{account_id}/pcaps/ownership | List PCAPs Bucket Ownership |\n| POST | /accounts/{account_id}/pcaps/ownership | Add buckets for full packet captures |\n| POST | /accounts/{account_id}/pcaps/ownership/validate | Validate buckets for full packet captures |\n| DELETE | /accounts/{account_id}/pcaps/ownership/{ownership_id} | Delete buckets for full packet captures |\n| GET | /accounts/{account_id}/pcaps/{pcap_id} | Get PCAP request |\n| GET | /accounts/{account_id}/pcaps/{pcap_id}/download | Download Simple PCAP |\n| PUT | /accounts/{account_id}/pcaps/{pcap_id}/stop | Stop full PCAP |\n| GET | /accounts/{account_id}/pipelines | [DEPRECATED] List Pipelines |\n| POST | /accounts/{account_id}/pipelines | [DEPRECATED] Create Pipeline |\n| GET | /accounts/{account_id}/pipelines/v1/pipelines | List Pipelines |\n| POST | /accounts/{account_id}/pipelines/v1/pipelines | Create Pipeline |\n| DELETE | /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id} | Delete Pipelines |\n| GET | /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id} | Get Pipeline Details |\n| GET | /accounts/{account_id}/pipelines/v1/sinks | List Sinks |\n| POST | /accounts/{account_id}/pipelines/v1/sinks | Create Sink |\n| DELETE | /accounts/{account_id}/pipelines/v1/sinks/{sink_id} | Delete Sink |\n| GET | /accounts/{account_id}/pipelines/v1/sinks/{sink_id} | Get Sink Details |\n| GET | /accounts/{account_id}/pipelines/v1/streams | List Streams |\n| POST | /accounts/{account_id}/pipelines/v1/streams | Create Stream |\n| DELETE | /accounts/{account_id}/pipelines/v1/streams/{stream_id} | Delete Stream |\n| GET | /accounts/{account_id}/pipelines/v1/streams/{stream_id} | Get Stream Details |\n| PATCH | /accounts/{account_id}/pipelines/v1/streams/{stream_id} | Update Stream |\n| POST | /accounts/{account_id}/pipelines/v1/validate_sql | Validate SQL |\n| DELETE | /accounts/{account_id}/pipelines/{pipeline_name} | [DEPRECATED] Delete Pipeline |\n| GET | /accounts/{account_id}/pipelines/{pipeline_name} | [DEPRECATED] Get Pipeline |\n| PUT | /accounts/{account_id}/pipelines/{pipeline_name} | [DEPRECATED] Update Pipeline |\n| GET | /accounts/{account_id}/profile | Get account profile |\n| PUT | /accounts/{account_id}/profile | Modify account profile |\n| GET | /accounts/{account_id}/queues | List Queues |\n| POST | /accounts/{account_id}/queues | Create Queue |\n| DELETE | /accounts/{account_id}/queues/{queue_id} | Delete Queue |\n| GET | /accounts/{account_id}/queues/{queue_id} | Get Queue |\n| PATCH | /accounts/{account_id}/queues/{queue_id} | Update Queue |\n| PUT | /accounts/{account_id}/queues/{queue_id} | Update Queue |\n| GET | /accounts/{account_id}/queues/{queue_id}/consumers | List Queue Consumers |\n| POST | /accounts/{account_id}/queues/{queue_id}/consumers | Create a Queue Consumer |\n| DELETE | /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id} | Delete Queue Consumer |\n| GET | /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id} | Get Queue Consumer |\n| PUT | /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id} | Update Queue Consumer |\n| POST | /accounts/{account_id}/queues/{queue_id}/messages | Push Message |\n| POST | /accounts/{account_id}/queues/{queue_id}/messages/ack | Acknowledge + Retry Queue Messages |\n| POST | /accounts/{account_id}/queues/{queue_id}/messages/batch | Push Message Batch |\n| POST | /accounts/{account_id}/queues/{queue_id}/messages/pull | Pull Queue Messages |\n| GET | /accounts/{account_id}/queues/{queue_id}/purge | Get Queue Purge Status |\n| POST | /accounts/{account_id}/queues/{queue_id}/purge | Purge Queue |\n| GET | /accounts/{account_id}/r2-catalog | List R2 catalogs |\n| GET | /accounts/{account_id}/r2-catalog/{bucket_name} | Get R2 catalog details |\n| POST | /accounts/{account_id}/r2-catalog/{bucket_name}/credential | Store catalog credentials |\n| POST | /accounts/{account_id}/r2-catalog/{bucket_name}/disable | Disable R2 catalog |\n| POST | /accounts/{account_id}/r2-catalog/{bucket_name}/enable | Enable R2 bucket as a catalog |\n| GET | /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs | Get catalog maintenance configuration |\n| POST | /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs | Update catalog maintenance configuration |\n| GET | /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces | List namespaces in catalog |\n| GET | /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables | List tables in namespace |\n| GET | /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs | Get table maintenance configuration |\n| POST | /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs | Update table maintenance configuration |\n| GET | /accounts/{account_id}/r2/buckets | List Buckets |\n| POST | /accounts/{account_id}/r2/buckets | Create Bucket |\n| DELETE | /accounts/{account_id}/r2/buckets/{bucket_name} | Delete Bucket |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name} | Get Bucket |\n| PATCH | /accounts/{account_id}/r2/buckets/{bucket_name} | Patch Bucket |\n| DELETE | /accounts/{account_id}/r2/buckets/{bucket_name}/cors | Delete Bucket CORS Policy |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/cors | Get Bucket CORS Policy |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/cors | Put Bucket CORS Policy |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom | List Custom Domains of Bucket |\n| POST | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom | Attach Custom Domain To Bucket |\n| DELETE | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain} | Remove Custom Domain From Bucket |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain} | Get Custom Domain Settings |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain} | Configure Custom Domain Settings |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed | Get r2.dev Domain of Bucket |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed | Update r2.dev Domain of Bucket |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle | Get Object Lifecycle Rules |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle | Put Object Lifecycle Rules |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads | Get Local Uploads Configuration |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads | Put Local Uploads Configuration |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/lock | Get Bucket Lock Rules |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/lock | Put Bucket Lock Rules |\n| DELETE | /accounts/{account_id}/r2/buckets/{bucket_name}/sippy | Disable Sippy |\n| GET | /accounts/{account_id}/r2/buckets/{bucket_name}/sippy | Get Sippy Configuration |\n| PUT | /accounts/{account_id}/r2/buckets/{bucket_name}/sippy | Enable Sippy |\n| GET | /accounts/{account_id}/r2/metrics | Get Account-Level Metrics |\n| POST | /accounts/{account_id}/r2/temp-access-credentials | Create Temporary Access Credentials |\n| GET | /accounts/{account_id}/realtime/kit/apps | Fetch all apps |\n| POST | /accounts/{account_id}/realtime/kit/apps | Create App |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywise | Fetch day-wise session and recording analytics data for an App |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall | Fetch complete analytics data for your livestreams |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/livestreams | Fetch all livestreams |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/livestreams | Create an independent livestream |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id} | Fetch livestream session details using livestream session ID |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id} | Fetch livestream details using livestream ID |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session | Fetch active livestream session details |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings | Fetch all meetings for an App |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings | Create a meeting |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id} | Fetch a meeting for an App |\n| PATCH | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id} | Update a meeting |\n| PUT | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id} | Replace a meeting |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream | Fetch active livestreams for a meeting |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream/stop | Stop livestreaming a meeting |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session | Fetch details of an active session |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick | Kick participants from an active session |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick-all | Kick all participants |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute | Mute participants of an active session |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute-all | Mute all participants |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/poll | Create a poll |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream | Fetch livestream session details for a meeting |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreams | Start livestreaming a meeting |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants | Fetch all participants of a meeting |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants | Add a participant |\n| DELETE | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id} | Delete a participant |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id} | Fetch a participant's detail |\n| PATCH | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id} | Edit a participant's detail |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}/token | Refresh participant's authentication token |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/presets | Fetch all presets |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/presets | Create a preset |\n| DELETE | /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id} | Delete a preset |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id} | Fetch details of a preset |\n| PATCH | /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id} | Update a preset |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/recordings | Fetch all recordings for an App |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/recordings | Start recording a meeting |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id} | Fetch active recording |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/recordings/track | Start recording audio and video tracks |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id} | Fetch details of a recording |\n| PUT | /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id} | Pause/Resume/Stop recording |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions | Fetch all sessions of an App |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id} | Fetch details of peer |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id} | Fetch details of a session |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat | Fetch all chat messages of a session |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions | Fetch livestream session details using a session ID |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants | Fetch participants list of a session |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants/{participant_id} | Fetch details of a participant |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary | Fetch summary of transcripts for a session |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary | Generate summary of Transcripts for the session |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcript | Fetch the complete transcript for a session |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/webhooks | Fetch all webhooks details |\n| POST | /accounts/{account_id}/realtime/kit/{app_id}/webhooks | Add a webhook |\n| DELETE | /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id} | Delete a webhook |\n| GET | /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id} | Fetch details of a webhook |\n| PATCH | /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id} | Edit a webhook |\n| PUT | /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id} | Replace a webhook |\n| GET | /accounts/{account_id}/registrar/domains | List domains |\n| GET | /accounts/{account_id}/registrar/domains/{domain_name} | Get domain |\n| PUT | /accounts/{account_id}/registrar/domains/{domain_name} | Update domain |\n| POST | /accounts/{account_id}/request-tracer/trace | Request Trace |\n| GET | /accounts/{account_id}/roles | List Roles |\n| GET | /accounts/{account_id}/roles/{role_id} | Role Details |\n| GET | /accounts/{account_id}/rules/lists | Get lists |\n| POST | /accounts/{account_id}/rules/lists | Create a list |\n| GET | /accounts/{account_id}/rules/lists/bulk_operations/{operation_id} | Get bulk operation status |\n| DELETE | /accounts/{account_id}/rules/lists/{list_id} | Delete a list |\n| GET | /accounts/{account_id}/rules/lists/{list_id} | Get a list |\n| PUT | /accounts/{account_id}/rules/lists/{list_id} | Update a list |\n| DELETE | /accounts/{account_id}/rules/lists/{list_id}/items | Delete list items |\n| GET | /accounts/{account_id}/rules/lists/{list_id}/items | Get list items |\n| POST | /accounts/{account_id}/rules/lists/{list_id}/items | Create list items |\n| PUT | /accounts/{account_id}/rules/lists/{list_id}/items | Update all list items |\n| GET | /accounts/{account_id}/rules/lists/{list_id}/items/{item_id} | Get a list item |\n| GET | /accounts/{account_id}/rulesets | List account rulesets |\n| POST | /accounts/{account_id}/rulesets | Create an account ruleset |\n| GET | /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint | Get an account entry point ruleset |\n| PUT | /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint | Update an account entry point ruleset |\n| GET | /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions | List an account entry point ruleset's versions |\n| GET | /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version} | Get an account entry point ruleset version |\n| DELETE | /accounts/{account_id}/rulesets/{ruleset_id} | Delete an account ruleset |\n| GET | /accounts/{account_id}/rulesets/{ruleset_id} | Get an account ruleset |\n| PUT | /accounts/{account_id}/rulesets/{ruleset_id} | Update an account ruleset |\n| POST | /accounts/{account_id}/rulesets/{ruleset_id}/rules | Create an account ruleset rule |\n| DELETE | /accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id} | Delete an account ruleset rule |\n| PATCH | /accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id} | Update an account ruleset rule |\n| GET | /accounts/{account_id}/rulesets/{ruleset_id}/versions | List an account ruleset's versions |\n| DELETE | /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version} | Delete an account ruleset version |\n| GET | /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version} | Get an account ruleset version |\n| GET | /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag} | List an account ruleset version's rules by tag |\n| POST | /accounts/{account_id}/rum/site_info | Create a Web Analytics site |\n| GET | /accounts/{account_id}/rum/site_info/list | List Web Analytics sites |\n| DELETE | /accounts/{account_id}/rum/site_info/{site_id} | Delete a Web Analytics site |\n| GET | /accounts/{account_id}/rum/site_info/{site_id} | Get a Web Analytics site |\n| PUT | /accounts/{account_id}/rum/site_info/{site_id} | Update a Web Analytics site |\n| POST | /accounts/{account_id}/rum/v2/{ruleset_id}/rule | Create a Web Analytics rule |\n| DELETE | /accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id} | Delete a Web Analytics rule |\n| PUT | /accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id} | Update a Web Analytics rule |\n| GET | /accounts/{account_id}/rum/v2/{ruleset_id}/rules | List rules in Web Analytics ruleset |\n| POST | /accounts/{account_id}/rum/v2/{ruleset_id}/rules | Update Web Analytics rules |\n| GET | /accounts/{account_id}/scim/v2/Groups | List SCIM Groups |\n| POST | /accounts/{account_id}/scim/v2/Groups | Create SCIM Group |\n| DELETE | /accounts/{account_id}/scim/v2/Groups/{group_id} | Delete SCIM Group |\n| GET | /accounts/{account_id}/scim/v2/Groups/{group_id} | Get SCIM Group |\n| PATCH | /accounts/{account_id}/scim/v2/Groups/{group_id} | Patch SCIM Group |\n| GET | /accounts/{account_id}/scim/v2/ResourceTypes | List SCIM Resource Types |\n| GET | /accounts/{account_id}/scim/v2/ResourceTypes/{resource_type_id} | Get SCIM Resource Type |\n| GET | /accounts/{account_id}/scim/v2/Schemas | List SCIM Schemas |\n| GET | /accounts/{account_id}/scim/v2/Schemas/{schema_id} | Get SCIM Schema |\n| GET | /accounts/{account_id}/scim/v2/ServiceProviderConfig | Get SCIM Service Provider Config |\n| GET | /accounts/{account_id}/scim/v2/Users | List SCIM Users |\n| POST | /accounts/{account_id}/scim/v2/Users | Create SCIM User |\n| GET | /accounts/{account_id}/scim/v2/Users/{user_id} | Get SCIM User |\n| PATCH | /accounts/{account_id}/scim/v2/Users/{user_id} | Patch SCIM User |\n| PUT | /accounts/{account_id}/scim/v2/Users/{user_id} | Replace SCIM User |\n| GET | /accounts/{account_id}/secondary_dns/acls | List ACLs |\n| POST | /accounts/{account_id}/secondary_dns/acls | Create ACL |\n| DELETE | /accounts/{account_id}/secondary_dns/acls/{acl_id} | Delete ACL |\n| GET | /accounts/{account_id}/secondary_dns/acls/{acl_id} | ACL Details |\n| PUT | /accounts/{account_id}/secondary_dns/acls/{acl_id} | Update ACL |\n| GET | /accounts/{account_id}/secondary_dns/peers | List Peers |\n| POST | /accounts/{account_id}/secondary_dns/peers | Create Peer |\n| DELETE | /accounts/{account_id}/secondary_dns/peers/{peer_id} | Delete Peer |\n| GET | /accounts/{account_id}/secondary_dns/peers/{peer_id} | Peer Details |\n| PUT | /accounts/{account_id}/secondary_dns/peers/{peer_id} | Update Peer |\n| GET | /accounts/{account_id}/secondary_dns/tsigs | List TSIGs |\n| POST | /accounts/{account_id}/secondary_dns/tsigs | Create TSIG |\n| DELETE | /accounts/{account_id}/secondary_dns/tsigs/{tsig_id} | Delete TSIG |\n| GET | /accounts/{account_id}/secondary_dns/tsigs/{tsig_id} | TSIG Details |\n| PUT | /accounts/{account_id}/secondary_dns/tsigs/{tsig_id} | Update TSIG |\n| GET | /accounts/{account_id}/secrets_store/quota | View secret usage |\n| GET | /accounts/{account_id}/secrets_store/stores | List account stores |\n| POST | /accounts/{account_id}/secrets_store/stores | Create a store |\n| DELETE | /accounts/{account_id}/secrets_store/stores/{store_id} | Delete a store |\n| GET | /accounts/{account_id}/secrets_store/stores/{store_id} | Get a store by ID |\n| DELETE | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets | Delete secrets |\n| GET | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets | List store secrets |\n| POST | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets | Create a secret |\n| DELETE | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id} | Delete a secret |\n| GET | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id} | Get a secret by ID |\n| PATCH | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id} | Patch a secret |\n| POST | /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}/duplicate | Duplicate Secret |\n| GET | /accounts/{account_id}/security-center/insights | Retrieves Security Center Insights |\n| GET | /accounts/{account_id}/security-center/insights/class | Retrieves Security Center Insight Counts by Class |\n| GET | /accounts/{account_id}/security-center/insights/severity | Retrieves Security Center Insight Counts by Severity |\n| GET | /accounts/{account_id}/security-center/insights/type | Retrieves Security Center Insight Counts by Type |\n| GET | /accounts/{account_id}/security-center/insights/{issue_id}/context | Retrieves Security Center Insight Context |\n| PUT | /accounts/{account_id}/security-center/insights/{issue_id}/dismiss | Archives Security Center Insight |\n| GET | /accounts/{account_id}/shares | List account shares |\n| POST | /accounts/{account_id}/shares | Create a new share |\n| DELETE | /accounts/{account_id}/shares/{share_id} | Delete a share |\n| GET | /accounts/{account_id}/shares/{share_id} | Get account share by ID |\n| PUT | /accounts/{account_id}/shares/{share_id} | Update a share |\n| GET | /accounts/{account_id}/shares/{share_id}/recipients | List share recipients by share ID |\n| POST | /accounts/{account_id}/shares/{share_id}/recipients | Create a new share recipient |\n| PUT | /accounts/{account_id}/shares/{share_id}/recipients | Update a share's recipients |\n| DELETE | /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id} | Delete a share recipient |\n| GET | /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id} | Get share recipient by ID |\n| GET | /accounts/{account_id}/shares/{share_id}/resources | List share resources by share ID |\n| POST | /accounts/{account_id}/shares/{share_id}/resources | Create a new share resource |\n| DELETE | /accounts/{account_id}/shares/{share_id}/resources/{resource_id} | Delete a share resource |\n| GET | /accounts/{account_id}/shares/{share_id}/resources/{resource_id} | Get share resource by ID |\n| PUT | /accounts/{account_id}/shares/{share_id}/resources/{resource_id} | Update a share resource |\n| GET | /accounts/{account_id}/slurper/jobs | List jobs |\n| POST | /accounts/{account_id}/slurper/jobs | Create a job |\n| PUT | /accounts/{account_id}/slurper/jobs/abortAll | Abort all jobs |\n| GET | /accounts/{account_id}/slurper/jobs/{job_id} | Get job details |\n| PUT | /accounts/{account_id}/slurper/jobs/{job_id}/abort | Abort a job |\n| GET | /accounts/{account_id}/slurper/jobs/{job_id}/logs | Get job logs |\n| PUT | /accounts/{account_id}/slurper/jobs/{job_id}/pause | Pause a job |\n| GET | /accounts/{account_id}/slurper/jobs/{job_id}/progress | Get job progress |\n| PUT | /accounts/{account_id}/slurper/jobs/{job_id}/resume | Resume a job |\n| PUT | /accounts/{account_id}/slurper/source/connectivity-precheck | Check source connectivity |\n| PUT | /accounts/{account_id}/slurper/target/connectivity-precheck | Check target connectivity |\n| GET | /accounts/{account_id}/sso_connectors | Get all SSO connectors |\n| POST | /accounts/{account_id}/sso_connectors | Initialize new SSO connector |\n| DELETE | /accounts/{account_id}/sso_connectors/{sso_connector_id} | Delete SSO connector |\n| GET | /accounts/{account_id}/sso_connectors/{sso_connector_id} | Get single SSO connector |\n| PATCH | /accounts/{account_id}/sso_connectors/{sso_connector_id} | Update SSO connector state |\n| POST | /accounts/{account_id}/sso_connectors/{sso_connector_id}/begin_verification | Begin SSO connector verification |\n| GET | /accounts/{account_id}/storage/kv/namespaces | List Namespaces |\n| POST | /accounts/{account_id}/storage/kv/namespaces | Create a Namespace |\n| DELETE | /accounts/{account_id}/storage/kv/namespaces/{namespace_id} | Remove a Namespace |\n| GET | /accounts/{account_id}/storage/kv/namespaces/{namespace_id} | Get a Namespace |\n| PUT | /accounts/{account_id}/storage/kv/namespaces/{namespace_id} | Rename a Namespace |\n| DELETE | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk | Delete multiple key-value pairs |\n| PUT | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk | Write multiple key-value pairs |\n| POST | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/delete | Delete multiple key-value pairs |\n| POST | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/get | Get multiple key-value pairs |\n| GET | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/keys | List a Namespace's Keys |\n| GET | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name} | Read the metadata for a key |\n| DELETE | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name} | Delete key-value pair |\n| GET | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name} | Read key-value pair |\n| PUT | /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name} | Write key-value pair with optional metadata |\n| GET | /accounts/{account_id}/stream | List videos |\n| POST | /accounts/{account_id}/stream | Initiate video uploads using TUS |\n| POST | /accounts/{account_id}/stream/clip | Clip videos given a start and end time |\n| POST | /accounts/{account_id}/stream/copy | Upload videos from a URL |\n| POST | /accounts/{account_id}/stream/direct_upload | Upload videos via direct upload URLs |\n| GET | /accounts/{account_id}/stream/keys | List signing keys |\n| POST | /accounts/{account_id}/stream/keys | Create signing keys |\n| DELETE | /accounts/{account_id}/stream/keys/{identifier} | Delete signing keys |\n| GET | /accounts/{account_id}/stream/live_inputs | List live inputs |\n| POST | /accounts/{account_id}/stream/live_inputs | Create a live input |\n| DELETE | /accounts/{account_id}/stream/live_inputs/{live_input_identifier} | Delete a live input |\n| GET | /accounts/{account_id}/stream/live_inputs/{live_input_identifier} | Retrieve a live input |\n| PUT | /accounts/{account_id}/stream/live_inputs/{live_input_identifier} | Update a live input |\n| POST | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/disable | Disable a live input |\n| POST | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/enable | Enable a live input |\n| GET | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs | List all outputs associated with a specified live input |\n| POST | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs | Create a new output, connected to a live input |\n| DELETE | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier} | Delete an output |\n| PUT | /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier} | Update an output |\n| GET | /accounts/{account_id}/stream/storage-usage | Storage use |\n| GET | /accounts/{account_id}/stream/watermarks | List watermark profiles |\n| POST | /accounts/{account_id}/stream/watermarks | Create watermark profiles via basic upload |\n| DELETE | /accounts/{account_id}/stream/watermarks/{identifier} | Delete watermark profiles |\n| GET | /accounts/{account_id}/stream/watermarks/{identifier} | Watermark profile details |\n| DELETE | /accounts/{account_id}/stream/webhook | Delete webhooks |\n| GET | /accounts/{account_id}/stream/webhook | View webhooks |\n| PUT | /accounts/{account_id}/stream/webhook | Create webhooks |\n| DELETE | /accounts/{account_id}/stream/{identifier} | Delete video |\n| GET | /accounts/{account_id}/stream/{identifier} | Retrieve video details |\n| POST | /accounts/{account_id}/stream/{identifier} | Edit video details |\n| GET | /accounts/{account_id}/stream/{identifier}/audio | List additional audio tracks on a video |\n| POST | /accounts/{account_id}/stream/{identifier}/audio/copy | Add audio tracks to a video |\n| DELETE | /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier} | Delete additional audio tracks on a video |\n| PATCH | /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier} | Edit additional audio tracks on a video |\n| GET | /accounts/{account_id}/stream/{identifier}/captions | List captions or subtitles |\n| DELETE | /accounts/{account_id}/stream/{identifier}/captions/{language} | Delete captions or subtitles |\n| GET | /accounts/{account_id}/stream/{identifier}/captions/{language} | List captions or subtitles for a provided language |\n| PUT | /accounts/{account_id}/stream/{identifier}/captions/{language} | Upload captions or subtitles |\n| POST | /accounts/{account_id}/stream/{identifier}/captions/{language}/generate | Generate captions or subtitles for a provided language via AI |\n| GET | /accounts/{account_id}/stream/{identifier}/captions/{language}/vtt | Return WebVTT captions for a provided language |\n| DELETE | /accounts/{account_id}/stream/{identifier}/downloads | Delete downloads |\n| GET | /accounts/{account_id}/stream/{identifier}/downloads | List downloads |\n| POST | /accounts/{account_id}/stream/{identifier}/downloads | Create downloads |\n| DELETE | /accounts/{account_id}/stream/{identifier}/downloads/{download_type} | Delete download |\n| POST | /accounts/{account_id}/stream/{identifier}/downloads/{download_type} | Create download |\n| GET | /accounts/{account_id}/stream/{identifier}/embed | Retrieve embed Code HTML |\n| POST | /accounts/{account_id}/stream/{identifier}/token | Create signed URL tokens for videos |\n| GET | /accounts/{account_id}/subscriptions | List Subscriptions |\n| POST | /accounts/{account_id}/subscriptions | Create Subscription |\n| DELETE | /accounts/{account_id}/subscriptions/{subscription_identifier} | Delete Subscription |\n| PUT | /accounts/{account_id}/subscriptions/{subscription_identifier} | Update Subscription |\n| DELETE | /accounts/{account_id}/tags | Delete tags from an account-level resource |\n| GET | /accounts/{account_id}/tags | Get tags for an account-level resource |\n| PUT | /accounts/{account_id}/tags | Set tags for an account-level resource |\n| GET | /accounts/{account_id}/tags/keys | List tag keys |\n| GET | /accounts/{account_id}/tags/resources | List tagged resources |\n| GET | /accounts/{account_id}/tags/values/{tag_key} | List tag values |\n| GET | /accounts/{account_id}/teamnet/routes | List tunnel routes |\n| POST | /accounts/{account_id}/teamnet/routes | Create a tunnel route |\n| GET | /accounts/{account_id}/teamnet/routes/ip/{ip} | Get tunnel route by IP |\n| DELETE | /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} | Delete a tunnel route (CIDR Endpoint) |\n| PATCH | /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} | Update a tunnel route (CIDR Endpoint) |\n| POST | /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} | Create a tunnel route (CIDR Endpoint) |\n| DELETE | /accounts/{account_id}/teamnet/routes/{route_id} | Delete a tunnel route |\n| GET | /accounts/{account_id}/teamnet/routes/{route_id} | Get tunnel route |\n| PATCH | /accounts/{account_id}/teamnet/routes/{route_id} | Update a tunnel route |\n| GET | /accounts/{account_id}/teamnet/virtual_networks | List virtual networks |\n| POST | /accounts/{account_id}/teamnet/virtual_networks | Create a virtual network |\n| DELETE | /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} | Delete a virtual network |\n| GET | /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} | Get a virtual network |\n| PATCH | /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} | Update a virtual network |\n| GET | /accounts/{account_id}/tokens | List Tokens |\n| POST | /accounts/{account_id}/tokens | Create Token |\n| GET | /accounts/{account_id}/tokens/permission_groups | List Permission Groups |\n| GET | /accounts/{account_id}/tokens/verify | Verify Token |\n| DELETE | /accounts/{account_id}/tokens/{token_id} | Delete Token |\n| GET | /accounts/{account_id}/tokens/{token_id} | Token Details |\n| PUT | /accounts/{account_id}/tokens/{token_id} | Update Token |\n| PUT | /accounts/{account_id}/tokens/{token_id}/value | Roll Token |\n| GET | /accounts/{account_id}/tunnels | List All Tunnels |\n| GET | /accounts/{account_id}/urlscanner/response/{response_id} | Get raw response |\n| GET | /accounts/{account_id}/urlscanner/scan | Search URL scans |\n| POST | /accounts/{account_id}/urlscanner/scan | Create URL Scan |\n| GET | /accounts/{account_id}/urlscanner/scan/{scan_id} | Get URL scan |\n| GET | /accounts/{account_id}/urlscanner/scan/{scan_id}/har | Get URL scan's HAR |\n| GET | /accounts/{account_id}/urlscanner/scan/{scan_id}/screenshot | Get screenshot |\n| POST | /accounts/{account_id}/urlscanner/v2/bulk | Bulk create URL Scans |\n| GET | /accounts/{account_id}/urlscanner/v2/dom/{scan_id} | Get URL scan's DOM |\n| GET | /accounts/{account_id}/urlscanner/v2/har/{scan_id} | Get URL scan's HAR |\n| GET | /accounts/{account_id}/urlscanner/v2/responses/{response_id} | Get raw response |\n| GET | /accounts/{account_id}/urlscanner/v2/result/{scan_id} | Get URL scan |\n| POST | /accounts/{account_id}/urlscanner/v2/scan | Create URL Scan |\n| GET | /accounts/{account_id}/urlscanner/v2/screenshots/{scan_id}.png | Get screenshot |\n| GET | /accounts/{account_id}/urlscanner/v2/search | Search URL scans |\n| GET | /accounts/{account_id}/vectorize/indexes | List Vectorize Indexes (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes | Create Vectorize Index (Deprecated) |\n| DELETE | /accounts/{account_id}/vectorize/indexes/{index_name} | Delete Vectorize Index (Deprecated) |\n| GET | /accounts/{account_id}/vectorize/indexes/{index_name} | Get Vectorize Index (Deprecated) |\n| PUT | /accounts/{account_id}/vectorize/indexes/{index_name} | Update Vectorize Index (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes/{index_name}/delete-by-ids | Delete Vectors By Identifier (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes/{index_name}/get-by-ids | Get Vectors By Identifier (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes/{index_name}/insert | Insert Vectors (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes/{index_name}/query | Query Vectors (Deprecated) |\n| POST | /accounts/{account_id}/vectorize/indexes/{index_name}/upsert | Upsert Vectors (Deprecated) |\n| GET | /accounts/{account_id}/vectorize/v2/indexes | List Vectorize Indexes |\n| POST | /accounts/{account_id}/vectorize/v2/indexes | Create Vectorize Index |\n| DELETE | /accounts/{account_id}/vectorize/v2/indexes/{index_name} | Delete Vectorize Index |\n| GET | /accounts/{account_id}/vectorize/v2/indexes/{index_name} | Get Vectorize Index |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/delete_by_ids | Delete Vectors By Identifier |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/get_by_ids | Get Vectors By Identifier |\n| GET | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/info | Get Vectorize Index Info |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/insert | Insert Vectors |\n| GET | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/list | List Vectors |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/create | Create Metadata Index |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/delete | Delete Metadata Index |\n| GET | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/list | List Metadata Indexes |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/query | Query Vectors |\n| POST | /accounts/{account_id}/vectorize/v2/indexes/{index_name}/upsert | Upsert Vectors |\n| GET | /accounts/{account_id}/waiting_rooms | List waiting rooms for account |\n| GET | /accounts/{account_id}/warp_connector | List Warp Connector Tunnels |\n| POST | /accounts/{account_id}/warp_connector | Create a Warp Connector Tunnel |\n| DELETE | /accounts/{account_id}/warp_connector/{tunnel_id} | Delete a Warp Connector Tunnel |\n| GET | /accounts/{account_id}/warp_connector/{tunnel_id} | Get a Warp Connector Tunnel |\n| PATCH | /accounts/{account_id}/warp_connector/{tunnel_id} | Update a Warp Connector Tunnel |\n| GET | /accounts/{account_id}/warp_connector/{tunnel_id}/connections | List WARP Connector Tunnel connections |\n| GET | /accounts/{account_id}/warp_connector/{tunnel_id}/connectors/{connector_id} | Get WARP Connector Tunnel connector |\n| PUT | /accounts/{account_id}/warp_connector/{tunnel_id}/failover | Trigger a manual failover for a WARP Connector Tunnel |\n| GET | /accounts/{account_id}/warp_connector/{tunnel_id}/token | Get a Warp Connector Tunnel token |\n| GET | /accounts/{account_id}/workers/account-settings | Fetch Worker Account Settings |\n| PUT | /accounts/{account_id}/workers/account-settings | Create Worker Account Settings |\n| POST | /accounts/{account_id}/workers/assets/upload | Upload Assets |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces | List dispatch namespaces |\n| POST | /accounts/{account_id}/workers/dispatch/namespaces | Create dispatch namespace |\n| DELETE | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace} | Delete dispatch namespace |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace} | Get dispatch namespace |\n| PATCH | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace} | Patch dispatch namespace |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace} | Update dispatch namespace |\n| DELETE | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts | Delete Scripts in Namespace |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts | List Scripts in Namespace |\n| DELETE | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name} | Delete Worker |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name} | Worker Details |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name} | Upload Worker Module |\n| POST | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/assets-upload-session | Create Assets Upload Session |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/bindings | Get Script Bindings |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content | Get Script Content |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content | Put Script Content |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets | List Script Secrets |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets | Add script secret |\n| DELETE | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name} | Delete script secret |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name} | Get secret binding |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings | Get Script Settings |\n| PATCH | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings | Patch Script Settings |\n| GET | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags | Get Script Tags |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags | Put Script Tags |\n| DELETE | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags/{tag} | Delete Script Tag |\n| PUT | /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags/{tag} | Put Script Tag |\n| GET | /accounts/{account_id}/workers/domains | List Domains |\n| PUT | /accounts/{account_id}/workers/domains | Attach Domain |\n| DELETE | /accounts/{account_id}/workers/domains/{domain_id} | Detach Domain |\n| GET | /accounts/{account_id}/workers/domains/{domain_id} | Get Domain |\n| GET | /accounts/{account_id}/workers/durable_objects/namespaces | List Namespaces |\n| GET | /accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects | List Objects |\n| GET | /accounts/{account_id}/workers/observability/destinations | Get Destinations |\n| POST | /accounts/{account_id}/workers/observability/destinations | Create Destination |\n| DELETE | /accounts/{account_id}/workers/observability/destinations/{slug} | Delete Destination |\n| PATCH | /accounts/{account_id}/workers/observability/destinations/{slug} | Update Destination |\n| GET | /accounts/{account_id}/workers/observability/queries | List queries |\n| POST | /accounts/{account_id}/workers/observability/queries | Save query |\n| DELETE | /accounts/{account_id}/workers/observability/queries/{queryId} | Delete query |\n| GET | /accounts/{account_id}/workers/observability/queries/{queryId} | Get query |\n| PATCH | /accounts/{account_id}/workers/observability/queries/{queryId} | Update query |\n| POST | /accounts/{account_id}/workers/observability/telemetry/keys | List keys |\n| POST | /accounts/{account_id}/workers/observability/telemetry/query | Run a query |\n| POST | /accounts/{account_id}/workers/observability/telemetry/values | List values |\n| GET | /accounts/{account_id}/workers/placement/regions | List Placement Regions |\n| GET | /accounts/{account_id}/workers/scripts | List Workers |\n| GET | /accounts/{account_id}/workers/scripts-search | Search Workers |\n| DELETE | /accounts/{account_id}/workers/scripts/{script_name} | Delete Worker |\n| GET | /accounts/{account_id}/workers/scripts/{script_name} | Download Worker |\n| PUT | /accounts/{account_id}/workers/scripts/{script_name} | Upload Worker Module |\n| POST | /accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session | Create Assets Upload Session |\n| PUT | /accounts/{account_id}/workers/scripts/{script_name}/content | Put script content |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/content/v2 | Get script content |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/deployments | List Deployments |\n| POST | /accounts/{account_id}/workers/scripts/{script_name}/deployments | Create Deployment |\n| DELETE | /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id} | Delete Deployment |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id} | Get Deployment |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/schedules | Get Cron Triggers |\n| PUT | /accounts/{account_id}/workers/scripts/{script_name}/schedules | Update Cron Triggers |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/script-settings | Get Script Settings |\n| PATCH | /accounts/{account_id}/workers/scripts/{script_name}/script-settings | Patch Script Settings |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/secrets | List script secrets |\n| PUT | /accounts/{account_id}/workers/scripts/{script_name}/secrets | Add script secret |\n| DELETE | /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name} | Delete script secret |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name} | Get secret binding |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/settings | Get Settings |\n| PATCH | /accounts/{account_id}/workers/scripts/{script_name}/settings | Patch Settings |\n| DELETE | /accounts/{account_id}/workers/scripts/{script_name}/subdomain | Delete Worker subdomain |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/subdomain | Get Worker subdomain |\n| POST | /accounts/{account_id}/workers/scripts/{script_name}/subdomain | Post Worker subdomain |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/tails | List Tails |\n| POST | /accounts/{account_id}/workers/scripts/{script_name}/tails | Start Tail |\n| DELETE | /accounts/{account_id}/workers/scripts/{script_name}/tails/{id} | Delete Tail |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/usage-model | Fetch Usage Model |\n| PUT | /accounts/{account_id}/workers/scripts/{script_name}/usage-model | Update Usage Model |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/versions | List Versions |\n| POST | /accounts/{account_id}/workers/scripts/{script_name}/versions | Upload Version |\n| GET | /accounts/{account_id}/workers/scripts/{script_name}/versions/{version_id} | Get Version Detail |\n| GET | /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content | Get script content |\n| PUT | /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content | Put script content |\n| GET | /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings | Get Script Settings |\n| PATCH | /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings | Patch Script Settings |\n| DELETE | /accounts/{account_id}/workers/subdomain | Delete Subdomain |\n| GET | /accounts/{account_id}/workers/subdomain | Get Subdomain |\n| PUT | /accounts/{account_id}/workers/subdomain | Create Subdomain |\n| GET | /accounts/{account_id}/workers/workers | List Workers |\n| POST | /accounts/{account_id}/workers/workers | Create Worker |\n| DELETE | /accounts/{account_id}/workers/workers/{worker_id} | Delete Worker |\n| GET | /accounts/{account_id}/workers/workers/{worker_id} | Get Worker |\n| PATCH | /accounts/{account_id}/workers/workers/{worker_id} | Edit Worker |\n| PUT | /accounts/{account_id}/workers/workers/{worker_id} | Update Worker |\n| GET | /accounts/{account_id}/workers/workers/{worker_id}/versions | List Versions |\n| POST | /accounts/{account_id}/workers/workers/{worker_id}/versions | Create Version |\n| DELETE | /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id} | Delete Version |\n| GET | /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id} | Get Version |\n| GET | /accounts/{account_id}/workflows | List all Workflows |\n| DELETE | /accounts/{account_id}/workflows/{workflow_name} | Deletes a Workflow |\n| GET | /accounts/{account_id}/workflows/{workflow_name} | Get Workflow details |\n| PUT | /accounts/{account_id}/workflows/{workflow_name} | Create/modify Workflow |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/instances | List of workflow instances |\n| POST | /accounts/{account_id}/workflows/{workflow_name}/instances | Create a new workflow instance |\n| POST | /accounts/{account_id}/workflows/{workflow_name}/instances/batch | Batch create new Workflow instances |\n| POST | /accounts/{account_id}/workflows/{workflow_name}/instances/batch/terminate | Batch terminate instances of a workflow |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/instances/terminate | Get status of the job responsible for terminate all instances of a workflow |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id} | Get logs and status from instance |\n| POST | /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}/events/{event_type} | Send event to instance |\n| PATCH | /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}/status | Change status of instance |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/versions | List deployed Workflow versions |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id} | Get Workflow version details |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/dag | Get Workflow version dag |\n| GET | /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph | Get Workflow version graph |\n| GET | /accounts/{account_id}/zerotrust/connectivity_settings | Get Zero Trust Connectivity Settings |\n| PATCH | /accounts/{account_id}/zerotrust/connectivity_settings | Updates the Zero Trust Connectivity Settings |\n| GET | /accounts/{account_id}/zerotrust/routes/hostname | List hostname routes |\n| POST | /accounts/{account_id}/zerotrust/routes/hostname | Create hostname route |\n| DELETE | /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} | Delete hostname route |\n| GET | /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} | Get hostname route |\n| PATCH | /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} | Update hostname route |\n| GET | /accounts/{account_id}/zerotrust/subnets | List Subnets |\n| PATCH | /accounts/{account_id}/zerotrust/subnets/cloudflare_source/{address_family} | Update Cloudflare Source Subnet |\n| POST | /accounts/{account_id}/zerotrust/subnets/warp | Create WARP IP subnet |\n| DELETE | /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} | Delete WARP IP subnet |\n| GET | /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} | Get WARP IP subnet |\n| PATCH | /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} | Update WARP IP subnet |\n| GET | /accounts/{account_id}/zt_risk_scoring/behaviors | Get all behaviors and associated configuration |\n| PUT | /accounts/{account_id}/zt_risk_scoring/behaviors | Update configuration for risk behaviors |\n| GET | /accounts/{account_id}/zt_risk_scoring/integrations | List all risk score integrations for the account. |\n| POST | /accounts/{account_id}/zt_risk_scoring/integrations | Create new risk score integration. |\n| GET | /accounts/{account_id}/zt_risk_scoring/integrations/reference_id/{reference_id} | Get risk score integration by reference id. |\n| DELETE | /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id} | Delete a risk score integration. |\n| GET | /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id} | Get risk score integration by id. |\n| PUT | /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id} | Update a risk score integration. |\n| GET | /accounts/{account_id}/zt_risk_scoring/summary | Get risk score info for all users in the account |\n| GET | /accounts/{account_id}/zt_risk_scoring/{user_id} | Get risk event/score information for a specific user |\n| POST | /accounts/{account_id}/zt_risk_scoring/{user_id}/reset | Clear the risk score for a particular user |\n\n### Certificates\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /certificates | List Certificates |\n| POST | /certificates | Create Certificate |\n| DELETE | /certificates/{certificate_id} | Revoke Certificate |\n| GET | /certificates/{certificate_id} | Get Certificate |\n\n### Internal\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /internal/submit | Internal route for testing URL submissions |\n\n### Ips\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /ips | Cloudflare/JD Cloud IP Details |\n\n### Live\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /live | Run liveness checks |\n\n### Memberships\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /memberships | List Memberships |\n| DELETE | /memberships/{membership_id} | Delete Membership |\n| GET | /memberships/{membership_id} | Membership Details |\n| PUT | /memberships/{membership_id} | Update Membership |\n\n### Organizations\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /organizations | List organizations the user has access to |\n| POST | /organizations | Create organization |\n| DELETE | /organizations/{organization_id} | Delete organization. |\n| GET | /organizations/{organization_id} | Get organization |\n| PUT | /organizations/{organization_id} | Modify organization. |\n| GET | /organizations/{organization_id}/accounts | Get organization accounts |\n| GET | /organizations/{organization_id}/logs/audit | Get organization audit logs (Version 2, Beta release) |\n| GET | /organizations/{organization_id}/members | List organization members |\n| POST | /organizations/{organization_id}/members | Create organization member |\n| DELETE | /organizations/{organization_id}/members/{member_id} | Delete organization member |\n| GET | /organizations/{organization_id}/members/{member_id} | Get organization member |\n| POST | /organizations/{organization_id}/members:batchCreate | Batch create organization members |\n| GET | /organizations/{organization_id}/profile | Get organization profile |\n| PUT | /organizations/{organization_id}/profile | Modify organization profile. |\n| GET | /organizations/{organization_id}/shares | List organization shares |\n\n### Radar\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /radar/ai/bots/summary/user_agent | Get AI user agents summary |\n| GET | /radar/ai/bots/summary/{dimension} | Get AI bots HTTP requests distribution by dimension |\n| GET | /radar/ai/bots/timeseries | Get AI bots HTTP requests time series |\n| GET | /radar/ai/bots/timeseries_groups/user_agent | Get AI user agents time series |\n| GET | /radar/ai/bots/timeseries_groups/{dimension} | Get time series distribution of AI bots HTTP requests by dimension. |\n| GET | /radar/ai/inference/summary/model | Get Workers AI models summary |\n| GET | /radar/ai/inference/summary/task | Get Workers AI tasks summary |\n| GET | /radar/ai/inference/summary/{dimension} | Get Workers AI inference distribution by dimension |\n| GET | /radar/ai/inference/timeseries_groups/model | Get Workers AI models time series |\n| GET | /radar/ai/inference/timeseries_groups/task | Get Workers AI tasks time series |\n| GET | /radar/ai/inference/timeseries_groups/{dimension} | Get time series distribution of Workers AI inference by dimension. |\n| GET | /radar/annotations | Get latest annotations |\n| GET | /radar/annotations/outages | Get latest Internet outages and anomalies |\n| GET | /radar/annotations/outages/locations | Get the number of outages by location |\n| GET | /radar/as112/summary/dnssec | Get AS112 DNS queries by DNSSEC summary |\n| GET | /radar/as112/summary/edns | Get AS112 DNS queries by EDNS summary |\n| GET | /radar/as112/summary/ip_version | Get AS112 DNS queries by IP version summary |\n| GET | /radar/as112/summary/protocol | Get AS112 DNS queries by DNS protocol summary |\n| GET | /radar/as112/summary/query_type | Get AS112 DNS queries by type summary |\n| GET | /radar/as112/summary/response_codes | Get AS112 DNS queries by response code summary |\n| GET | /radar/as112/summary/{dimension} | Get AS112 summary by dimension |\n| GET | /radar/as112/timeseries | Get AS112 DNS queries time series |\n| GET | /radar/as112/timeseries_groups/dnssec | Get AS112 DNS queries by DNSSEC support time series |\n| GET | /radar/as112/timeseries_groups/edns | Get AS112 DNS queries by EDNS support summary |\n| GET | /radar/as112/timeseries_groups/ip_version | Get AS112 DNS queries by IP version time series |\n| GET | /radar/as112/timeseries_groups/protocol | Get AS112 DNS queries by DNS protocol time series |\n| GET | /radar/as112/timeseries_groups/query_type | Get AS112 DNS queries by type time series |\n| GET | /radar/as112/timeseries_groups/response_codes | Get AS112 DNS queries by response code time series |\n| GET | /radar/as112/timeseries_groups/{dimension} | Get AS112 time series grouped by dimension |\n| GET | /radar/as112/top/locations | Get top locations by AS112 DNS queries |\n| GET | /radar/as112/top/locations/dnssec/{dnssec} | Get top locations by AS112 DNS queries with DNSSEC support |\n| GET | /radar/as112/top/locations/edns/{edns} | Get top locations by AS112 DNS queries with EDNS support |\n| GET | /radar/as112/top/locations/ip_version/{ip_version} | Get top locations by AS112 DNS queries for an IP version |\n| GET | /radar/attacks/layer3/summary/bitrate | Get layer 3 attacks by bitrate summary |\n| GET | /radar/attacks/layer3/summary/duration | Get layer 3 attacks by duration summary |\n| GET | /radar/attacks/layer3/summary/industry | Get layer 3 attacks by targeted industry summary |\n| GET | /radar/attacks/layer3/summary/ip_version | Get layer 3 attacks by IP version summary |\n| GET | /radar/attacks/layer3/summary/protocol | Get layer 3 attacks by protocol summary |\n| GET | /radar/attacks/layer3/summary/vector | Get layer 3 attacks by vector summary |\n| GET | /radar/attacks/layer3/summary/vertical | Get layer 3 attacks by targeted vertical summary |\n| GET | /radar/attacks/layer3/summary/{dimension} | Get layer 3 attacks summary by dimension |\n| GET | /radar/attacks/layer3/timeseries | Get layer 3 attacks by bytes time series |\n| GET | /radar/attacks/layer3/timeseries_groups/bitrate | Get layer 3 attacks by bitrate time series |\n| GET | /radar/attacks/layer3/timeseries_groups/duration | Get layer 3 attacks by duration time series |\n| GET | /radar/attacks/layer3/timeseries_groups/industry | Get layer 3 attacks by target industries time series |\n| GET | /radar/attacks/layer3/timeseries_groups/ip_version | Get layer 3 attacks by IP version time series |\n| GET | /radar/attacks/layer3/timeseries_groups/protocol | Get layer 3 attacks by protocol time series |\n| GET | /radar/attacks/layer3/timeseries_groups/vector | Get layer 3 attacks by vector time series |\n| GET | /radar/attacks/layer3/timeseries_groups/vertical | Get layer 3 attacks by vertical time series |\n| GET | /radar/attacks/layer3/timeseries_groups/{dimension} | Get layer 3 attacks time series grouped by dimension |\n| GET | /radar/attacks/layer3/top/attacks | Get top layer 3 attack pairs (origin and target locations) |\n| GET | /radar/attacks/layer3/top/industry | Get top industries targeted by layer 3 attacks |\n| GET | /radar/attacks/layer3/top/locations/origin | Get top origin locations of layer 3 attacks |\n| GET | /radar/attacks/layer3/top/locations/target | Get top target locations of layer 3 attacks |\n| GET | /radar/attacks/layer3/top/vertical | Get top verticals targeted by layer 3 attacks |\n| GET | /radar/attacks/layer7/summary/http_method | Get layer 7 attacks by HTTP method summary |\n| GET | /radar/attacks/layer7/summary/http_version | Get layer 7 attacks by HTTP version summary |\n| GET | /radar/attacks/layer7/summary/industry | Get layer 7 attacks by targeted industry summary |\n| GET | /radar/attacks/layer7/summary/ip_version | Get layer 7 attacks by IP version summary |\n| GET | /radar/attacks/layer7/summary/managed_rules | Get layer 7 attacks by managed rules summary |\n| GET | /radar/attacks/layer7/summary/mitigation_product | Get layer 7 attacks by mitigation product summary |\n| GET | /radar/attacks/layer7/summary/vertical | Get layer 7 attacks by targeted vertical summary |\n| GET | /radar/attacks/layer7/summary/{dimension} | Get layer 7 attacks summary by dimension |\n| GET | /radar/attacks/layer7/timeseries | Get layer 7 attacks time series |\n| GET | /radar/attacks/layer7/timeseries_groups/http_method | Get layer 7 attacks by HTTP method time series |\n| GET | /radar/attacks/layer7/timeseries_groups/http_version | Get layer 7 attacks by HTTP version time series |\n| GET | /radar/attacks/layer7/timeseries_groups/industry | Get layer 7 attacks by target industries time series |\n| GET | /radar/attacks/layer7/timeseries_groups/ip_version | Get layer 7 attacks by IP version time series |\n| GET | /radar/attacks/layer7/timeseries_groups/managed_rules | Get layer 7 attacks by managed rules time series |\n| GET | /radar/attacks/layer7/timeseries_groups/mitigation_product | Get layer 7 attacks by mitigation product time series |\n| GET | /radar/attacks/layer7/timeseries_groups/vertical | Get layer 7 attacks by vertical time series |\n| GET | /radar/attacks/layer7/timeseries_groups/{dimension} | Get layer 7 attacks time series grouped by dimension |\n| GET | /radar/attacks/layer7/top/ases/origin | Get top origin ASes of layer 7 attacks |\n| GET | /radar/attacks/layer7/top/attacks | Get top layer 7 attack pairs (origin and target locations) |\n| GET | /radar/attacks/layer7/top/industry | Get top industries targeted by layer 7 attacks |\n| GET | /radar/attacks/layer7/top/locations/origin | Get top origin locations of layer 7 attacks |\n| GET | /radar/attacks/layer7/top/locations/target | Get top target locations of layer 7 attacks |\n| GET | /radar/attacks/layer7/top/vertical | Get top verticals targeted by layer 7 attacks |\n| GET | /radar/bgp/hijacks/events | Get BGP hijack events |\n| GET | /radar/bgp/ips/timeseries | Get announced IP address space time series |\n| GET | /radar/bgp/leaks/events | Get BGP route leak events |\n| GET | /radar/bgp/routes/ases | List ASes from global routing tables |\n| GET | /radar/bgp/routes/moas | Get Multi-Origin AS (MOAS) prefixes |\n| GET | /radar/bgp/routes/pfx2as | Get prefix-to-ASN mapping |\n| GET | /radar/bgp/routes/realtime | Get real-time BGP routes for a prefix |\n| GET | /radar/bgp/routes/stats | Get BGP routing table stats |\n| GET | /radar/bgp/rpki/aspa/changes | Get ASPA changes over time |\n| GET | /radar/bgp/rpki/aspa/snapshot | Get ASPA objects snapshot |\n| GET | /radar/bgp/rpki/aspa/timeseries | Get ASPA count time series |\n| GET | /radar/bgp/timeseries | Get BGP time series |\n| GET | /radar/bgp/top/ases | Get top ASes by BGP updates |\n| GET | /radar/bgp/top/ases/prefixes | Get top ASes by prefix count |\n| GET | /radar/bgp/top/prefixes | Get top prefixes by BGP updates |\n| GET | /radar/bots | List bots |\n| GET | /radar/bots/crawlers/summary/{dimension} | Get crawler HTTP request distribution by dimension |\n| GET | /radar/bots/crawlers/timeseries_groups/{dimension} | Get time series of crawler HTTP request distribution by dimension |\n| GET | /radar/bots/summary/{dimension} | Get bots HTTP requests distribution by dimension |\n| GET | /radar/bots/timeseries | Get bots HTTP requests time series |\n| GET | /radar/bots/timeseries_groups/{dimension} | Get time series distribution of bots HTTP requests by dimension. |\n| GET | /radar/bots/{bot_slug} | Get bot details |\n| GET | /radar/ct/authorities | List certificate authorities |\n| GET | /radar/ct/authorities/{ca_slug} | Get certificate authority details |\n| GET | /radar/ct/logs | List certificate logs |\n| GET | /radar/ct/logs/{log_slug} | Get certificate log details |\n| GET | /radar/ct/summary/{dimension} | Get certificate distribution by dimension |\n| GET | /radar/ct/timeseries | Get certificates time series |\n| GET | /radar/ct/timeseries_groups/{dimension} | Get time series of certificate distribution by dimension |\n| GET | /radar/datasets | List datasets |\n| POST | /radar/datasets/download | Get dataset download URL |\n| GET | /radar/datasets/{alias} | Get dataset CSV stream |\n| GET | /radar/dns/summary/cache_hit | Get DNS queries by cache status summary |\n| GET | /radar/dns/summary/dnssec | Get DNS queries by DNSSEC support summary |\n| GET | /radar/dns/summary/dnssec_aware | Get DNS queries by DNSSEC awareness summary |\n| GET | /radar/dns/summary/dnssec_e2e | Get DNS queries by DNSSEC end-to-end summary |\n| GET | /radar/dns/summary/ip_version | Get DNS queries by IP version summary |\n| GET | /radar/dns/summary/matching_answer | Get DNS queries by matching answer summary |\n| GET | /radar/dns/summary/protocol | Get DNS queries by protocol summary |\n| GET | /radar/dns/summary/query_type | Get DNS queries by type summary |\n| GET | /radar/dns/summary/response_code | Get DNS queries by response code summary |\n| GET | /radar/dns/summary/response_ttl | Get DNS queries by response TTL summary |\n| GET | /radar/dns/summary/{dimension} | Get DNS summary by dimension |\n| GET | /radar/dns/timeseries | Get DNS queries time series |\n| GET | /radar/dns/timeseries_groups/cache_hit | Get DNS queries by cache status time series |\n| GET | /radar/dns/timeseries_groups/dnssec | Get DNS queries by DNSSEC support time series |\n| GET | /radar/dns/timeseries_groups/dnssec_aware | Get DNS queries by DNSSEC awareness time series |\n| GET | /radar/dns/timeseries_groups/dnssec_e2e | Get DNS queries by DNSSEC end-to-end time series |\n| GET | /radar/dns/timeseries_groups/ip_version | Get DNS queries by IP version time series |\n| GET | /radar/dns/timeseries_groups/matching_answer | Get DNS queries by matching answer time series |\n| GET | /radar/dns/timeseries_groups/protocol | Get DNS queries by protocol time series |\n| GET | /radar/dns/timeseries_groups/query_type | Get DNS queries by type time series |\n| GET | /radar/dns/timeseries_groups/response_code | Get DNS queries by response code time series |\n| GET | /radar/dns/timeseries_groups/response_ttl | Get DNS queries by response TTL time series |\n| GET | /radar/dns/timeseries_groups/{dimension} | Get DNS time series grouped by dimension |\n| GET | /radar/dns/top/ases | Get top ASes by DNS queries |\n| GET | /radar/dns/top/locations | Get top locations by DNS queries |\n| GET | /radar/email/routing/summary/arc | Get email ARC validation summary |\n| GET | /radar/email/routing/summary/dkim | Get email DKIM validation summary |\n| GET | /radar/email/routing/summary/dmarc | Get email DMARC validation summary |\n| GET | /radar/email/routing/summary/encrypted | Get email encryption status summary |\n| GET | /radar/email/routing/summary/ip_version | Get email IP version summary |\n| GET | /radar/email/routing/summary/spf | Get email SPF validation summary |\n| GET | /radar/email/routing/summary/{dimension} | Get email routing summary by dimension |\n| GET | /radar/email/routing/timeseries_groups/arc | Get email ARC validation time series |\n| GET | /radar/email/routing/timeseries_groups/dkim | Get email DKIM validation time series |\n| GET | /radar/email/routing/timeseries_groups/dmarc | Get email DMARC validation time series |\n| GET | /radar/email/routing/timeseries_groups/encrypted | Get email encryption status time series |\n| GET | /radar/email/routing/timeseries_groups/ip_version | Get email IP version time series |\n| GET | /radar/email/routing/timeseries_groups/spf | Get email SPF validation time series |\n| GET | /radar/email/routing/timeseries_groups/{dimension} | Get email routing time series grouped by dimension |\n| GET | /radar/email/security/summary/arc | Get email ARC validation summary |\n| GET | /radar/email/security/summary/dkim | Get email DKIM validation summary |\n| GET | /radar/email/security/summary/dmarc | Get email DMARC validation summary |\n| GET | /radar/email/security/summary/malicious | Get email malicious classification summary |\n| GET | /radar/email/security/summary/spam | Get email spam classification summary |\n| GET | /radar/email/security/summary/spf | Get email SPF validation summary |\n| GET | /radar/email/security/summary/spoof | Get email spoof classification summary |\n| GET | /radar/email/security/summary/threat_category | Get email threat category summary |\n| GET | /radar/email/security/summary/tls_version | Get email TLS version summary |\n| GET | /radar/email/security/summary/{dimension} | Get email security summary by dimension |\n| GET | /radar/email/security/timeseries_groups/arc | Get email ARC validation time series |\n| GET | /radar/email/security/timeseries_groups/dkim | Get email DKIM validation time series |\n| GET | /radar/email/security/timeseries_groups/dmarc | Get email DMARC validation time series |\n| GET | /radar/email/security/timeseries_groups/malicious | Get email malicious classification time series |\n| GET | /radar/email/security/timeseries_groups/spam | Get email spam classification time series |\n| GET | /radar/email/security/timeseries_groups/spf | Get email SPF validation time series |\n| GET | /radar/email/security/timeseries_groups/spoof | Get email spoof classification time series |\n| GET | /radar/email/security/timeseries_groups/threat_category | Get email threat category time series |\n| GET | /radar/email/security/timeseries_groups/tls_version | Get email TLS version time series |\n| GET | /radar/email/security/timeseries_groups/{dimension} | Get email security time series grouped by dimension |\n| GET | /radar/email/security/top/tlds | Get top TLDs by email message volume |\n| GET | /radar/email/security/top/tlds/malicious/{malicious} | Get top TLDs by email malicious classification |\n| GET | /radar/email/security/top/tlds/spam/{spam} | Get top TLDs by email spam classification |\n| GET | /radar/email/security/top/tlds/spoof/{spoof} | Get top TLDs by email spoof classification |\n| GET | /radar/entities/asns | List autonomous systems |\n| GET | /radar/entities/asns/botnet_threat_feed | Get AS rankings by botnet threat feed activity |\n| GET | /radar/entities/asns/ip | Get AS details by IP address |\n| GET | /radar/entities/asns/{asn} | Get AS details by ASN |\n| GET | /radar/entities/asns/{asn}/as_set | Get IRR AS-SETs that an AS is a member of |\n| GET | /radar/entities/asns/{asn}/rel | Get AS-level relationships by ASN |\n| GET | /radar/entities/ip | Get IP address details |\n| GET | /radar/entities/locations | List locations |\n| GET | /radar/entities/locations/{location} | Get location details |\n| GET | /radar/geolocations | List Geolocations |\n| GET | /radar/geolocations/{geo_id} | Get Geolocation details |\n| GET | /radar/http/summary/bot_class | Get HTTP requests by bot class summary |\n| GET | /radar/http/summary/device_type | Get HTTP requests by device type summary |\n| GET | /radar/http/summary/http_protocol | Get HTTP requests by HTTP/HTTPS summary |\n| GET | /radar/http/summary/http_version | Get HTTP requests by HTTP version summary |\n| GET | /radar/http/summary/ip_version | Get HTTP requests by IP version summary |\n| GET | /radar/http/summary/os | Get HTTP requests by OS summary |\n| GET | /radar/http/summary/post_quantum | Get HTTP requests by post-quantum support summary |\n| GET | /radar/http/summary/tls_version | Get HTTP requests by TLS version summary |\n| GET | /radar/http/summary/{dimension} | Get HTTP requests summary by dimension |\n| GET | /radar/http/timeseries | Get HTTP requests time series |\n| GET | /radar/http/timeseries_groups/bot_class | Get HTTP requests by bot class time series |\n| GET | /radar/http/timeseries_groups/browser | Get HTTP requests by user agent time series |\n| GET | /radar/http/timeseries_groups/browser_family | Get HTTP requests by user agent family time series |\n| GET | /radar/http/timeseries_groups/device_type | Get HTTP requests by device type time series |\n| GET | /radar/http/timeseries_groups/http_protocol | Get HTTP requests by HTTP/HTTPS time series |\n| GET | /radar/http/timeseries_groups/http_version | Get HTTP requests by HTTP version time series |\n| GET | /radar/http/timeseries_groups/ip_version | Get HTTP requests by IP version time series |\n| GET | /radar/http/timeseries_groups/os | Get HTTP requests by OS time series |\n| GET | /radar/http/timeseries_groups/post_quantum | Get HTTP requests by post-quantum support time series |\n| GET | /radar/http/timeseries_groups/tls_version | Get HTTP requests by TLS version time series |\n| GET | /radar/http/timeseries_groups/{dimension} | Get HTTP requests time series grouped by dimension |\n| GET | /radar/http/top/ases | Get top ASes by HTTP requests |\n| GET | /radar/http/top/ases/bot_class/{bot_class} | Get top ASes by HTTP requests for a bot class |\n| GET | /radar/http/top/ases/browser_family/{browser_family} | Get top ASes by HTTP requests for a browser family |\n| GET | /radar/http/top/ases/device_type/{device_type} | Get top ASes by HTTP requests for a device type |\n| GET | /radar/http/top/ases/http_protocol/{http_protocol} | Get top ASes by HTTP requests for an HTTP protocol |\n| GET | /radar/http/top/ases/http_version/{http_version} | Get top ASes by HTTP requests for an HTTP version |\n| GET | /radar/http/top/ases/ip_version/{ip_version} | Get top ASes by HTTP requests for an IP version |\n| GET | /radar/http/top/ases/os/{os} | Get top ASes by HTTP requests for an OS |\n| GET | /radar/http/top/ases/tls_version/{tls_version} | Get top ASes by HTTP requests for a TLS version |\n| GET | /radar/http/top/browser | Get top user agents by HTTP requests |\n| GET | /radar/http/top/browser_family | Get top user agent families by HTTP requests |\n| GET | /radar/http/top/locations | Get top locations by HTTP requests |\n| GET | /radar/http/top/locations/bot_class/{bot_class} | Get top locations by HTTP requests for a bot class |\n| GET | /radar/http/top/locations/browser_family/{browser_family} | Get top locations by HTTP requests for a browser family |\n| GET | /radar/http/top/locations/device_type/{device_type} | Get top locations by HTTP requests for a device type |\n| GET | /radar/http/top/locations/http_protocol/{http_protocol} | Get top locations by HTTP requests for an HTTP protocol |\n| GET | /radar/http/top/locations/http_version/{http_version} | Get top locations by HTTP requests for an HTTP version |\n| GET | /radar/http/top/locations/ip_version/{ip_version} | Get top locations by HTTP requests for an IP version |\n| GET | /radar/http/top/locations/os/{os} | Get top locations by HTTP requests for an OS |\n| GET | /radar/http/top/locations/tls_version/{tls_version} | Get top locations by HTTP requests for a TLS version |\n| GET | /radar/leaked_credential_checks/summary/bot_class | Get HTTP authentication requests by bot class summary |\n| GET | /radar/leaked_credential_checks/summary/compromised | Get HTTP authentication requests by compromised credential status summary |\n| GET | /radar/leaked_credential_checks/summary/{dimension} | Get HTTP authentication requests distribution by dimension |\n| GET | /radar/leaked_credential_checks/timeseries_groups/bot_class | Get HTTP authentication requests by bot class time series |\n| GET | /radar/leaked_credential_checks/timeseries_groups/compromised | Get HTTP authentication requests by compromised credential status time series |\n| GET | /radar/leaked_credential_checks/timeseries_groups/{dimension} | Get time series distribution of HTTP authentication requests by dimension. |\n| GET | /radar/netflows/summary | Get network traffic summary |\n| GET | /radar/netflows/summary/{dimension} | Get network traffic distribution by dimension |\n| GET | /radar/netflows/timeseries | Get network traffic time series |\n| GET | /radar/netflows/timeseries_groups/{dimension} | Get time series distribution of network traffic by dimension |\n| GET | /radar/netflows/top/ases | Get top ASes by network traffic |\n| GET | /radar/netflows/top/locations | Get top locations by network traffic |\n| GET | /radar/origins | List Origins |\n| GET | /radar/origins/summary/{dimension} | Get origin metrics distribution by dimension |\n| GET | /radar/origins/timeseries | Get origin metrics time series |\n| GET | /radar/origins/timeseries_groups/{dimension} | Get origin metrics time series grouped by dimension |\n| GET | /radar/origins/{slug} | Get Origin details |\n| GET | /radar/post_quantum/origin/summary/{dimension} | Get Origin Post-Quantum Data Summary |\n| GET | /radar/post_quantum/origin/timeseries_groups/{dimension} | Get Origin Post-Quantum Data Over Time |\n| GET | /radar/post_quantum/tls/support | Check Post-Quantum TLS support |\n| GET | /radar/quality/iqi/summary | Get Internet Quality Index (IQI) summary |\n| GET | /radar/quality/iqi/timeseries_groups | Get Internet Quality Index (IQI) time series |\n| GET | /radar/quality/speed/histogram | Get speed tests histogram |\n| GET | /radar/quality/speed/summary | Get speed tests summary |\n| GET | /radar/quality/speed/top/ases | Get top ASes by speed test results |\n| GET | /radar/quality/speed/top/locations | Get top locations by speed test results |\n| GET | /radar/ranking/domain/{domain} | Get domain rank details |\n| GET | /radar/ranking/internet_services/categories | List Internet services categories |\n| GET | /radar/ranking/internet_services/timeseries_groups | Get Internet services rank time series |\n| GET | /radar/ranking/internet_services/top | Get top Internet services |\n| GET | /radar/ranking/timeseries_groups | Get domains rank time series |\n| GET | /radar/ranking/top | Get top or trending domains |\n| GET | /radar/robots_txt/top/domain_categories | Get top domain categories by robots.txt files parsed |\n| GET | /radar/robots_txt/top/user_agents/directive | Get top user agents on robots.txt files |\n| GET | /radar/search/global | Search for locations, ASes, reports, and more |\n| GET | /radar/tcp_resets_timeouts/summary | Get TCP resets and timeouts summary |\n| GET | /radar/tcp_resets_timeouts/timeseries_groups | Get TCP resets and timeouts time series |\n| GET | /radar/tlds | List TLDs |\n| GET | /radar/tlds/{tld} | Get TLD details |\n| GET | /radar/traffic_anomalies | Get latest Internet traffic anomalies |\n| GET | /radar/traffic_anomalies/locations | Get top locations by total traffic anomalies |\n| GET | /radar/verified_bots/top/bots | Get top verified bots by HTTP requests |\n| GET | /radar/verified_bots/top/categories | Get top verified bot categories by HTTP requests |\n\n### Ready\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /ready | Run readiness checks |\n\n### Signed-url\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /signed-url | Internal route for testing signed URLs |\n\n### System\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /system/accounts/{account_tag}/stores | List account stores (System) |\n| POST | /system/accounts/{account_tag}/stores | Create a store (System) |\n| DELETE | /system/accounts/{account_tag}/stores/{store_id} | Delete a store (System) |\n| GET | /system/accounts/{account_tag}/stores/{store_id} | Get a store by ID (System) |\n| DELETE | /system/accounts/{account_tag}/stores/{store_id}/secrets | Delete secrets (System) |\n| GET | /system/accounts/{account_tag}/stores/{store_id}/secrets | List store secrets (System) |\n| POST | /system/accounts/{account_tag}/stores/{store_id}/secrets | Create secrets (System) |\n| DELETE | /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id} | Delete a secret (System) |\n| GET | /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id} | Get a secret by ID (System) |\n| PATCH | /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id} | Patch a secret (System) |\n| POST | /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}/duplicate | Duplicate secret (System) |\n\n### Tenants\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /tenants/{tenant_id} | Get tenant |\n| GET | /tenants/{tenant_id}/account_types | Get tenant account types |\n| GET | /tenants/{tenant_id}/accounts | List tenant accounts |\n| GET | /tenants/{tenant_id}/entitlements | List tenant entitlements |\n| GET | /tenants/{tenant_id}/memberships | List tenant memberships |\n\n### User\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /user | User Details |\n| PATCH | /user | Edit User |\n| GET | /user/audit_logs | Get user audit logs |\n| GET | /user/billing/history | Billing History Details |\n| GET | /user/billing/profile | Billing Profile Details |\n| GET | /user/firewall/access_rules/rules | List IP Access rules |\n| POST | /user/firewall/access_rules/rules | Create an IP Access rule |\n| DELETE | /user/firewall/access_rules/rules/{rule_id} | Delete an IP Access rule |\n| PATCH | /user/firewall/access_rules/rules/{rule_id} | Update an IP Access rule |\n| GET | /user/invites | List Invitations |\n| GET | /user/invites/{invite_id} | Invitation Details |\n| PATCH | /user/invites/{invite_id} | Respond to Invitation |\n| GET | /user/load_balancers/monitors | List Monitors |\n| POST | /user/load_balancers/monitors | Create Monitor |\n| DELETE | /user/load_balancers/monitors/{monitor_id} | Delete Monitor |\n| GET | /user/load_balancers/monitors/{monitor_id} | Monitor Details |\n| PATCH | /user/load_balancers/monitors/{monitor_id} | Patch Monitor |\n| PUT | /user/load_balancers/monitors/{monitor_id} | Update Monitor |\n| POST | /user/load_balancers/monitors/{monitor_id}/preview | Preview Monitor |\n| GET | /user/load_balancers/monitors/{monitor_id}/references | List Monitor References |\n| GET | /user/load_balancers/pools | List Pools |\n| PATCH | /user/load_balancers/pools | Patch Pools |\n| POST | /user/load_balancers/pools | Create Pool |\n| DELETE | /user/load_balancers/pools/{pool_id} | Delete Pool |\n| GET | /user/load_balancers/pools/{pool_id} | Pool Details |\n| PATCH | /user/load_balancers/pools/{pool_id} | Patch Pool |\n| PUT | /user/load_balancers/pools/{pool_id} | Update Pool |\n| GET | /user/load_balancers/pools/{pool_id}/health | Pool Health Details |\n| POST | /user/load_balancers/pools/{pool_id}/preview | Preview Pool |\n| GET | /user/load_balancers/pools/{pool_id}/references | List Pool References |\n| GET | /user/load_balancers/preview/{preview_id} | Preview Result |\n| GET | /user/load_balancing_analytics/events | List Healthcheck Events |\n| GET | /user/organizations | List Organizations |\n| DELETE | /user/organizations/{organization_id} | Leave Organization |\n| GET | /user/organizations/{organization_id} | Organization Details |\n| GET | /user/subscriptions | Get User Subscriptions |\n| DELETE | /user/subscriptions/{identifier} | Delete User Subscription |\n| PUT | /user/subscriptions/{identifier} | Update User Subscription |\n| GET | /user/tokens | List Tokens |\n| POST | /user/tokens | Create Token |\n| GET | /user/tokens/permission_groups | List Token Permission Groups |\n| GET | /user/tokens/verify | Verify Token |\n| DELETE | /user/tokens/{token_id} | Delete Token |\n| GET | /user/tokens/{token_id} | Token Details |\n| PUT | /user/tokens/{token_id} | Update Token |\n| PUT | /user/tokens/{token_id}/value | Roll Token |\n\n### Users\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /users/tenants | List user tenants |\n\n### Zones\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /zones | List Zones |\n| POST | /zones | Create Zone |\n| GET | /zones/{zone_identifier}/analytics/colos | Get analytics by Co-locations |\n| GET | /zones/{zone_identifier}/analytics/dashboard | Get dashboard |\n| GET | /zones/{zone_identifier}/custom_pages | List custom pages |\n| GET | /zones/{zone_identifier}/custom_pages/assets | List custom assets |\n| POST | /zones/{zone_identifier}/custom_pages/assets | Create a custom asset |\n| DELETE | /zones/{zone_identifier}/custom_pages/assets/{asset_name} | Delete a custom asset |\n| GET | /zones/{zone_identifier}/custom_pages/assets/{asset_name} | Get a custom asset |\n| PUT | /zones/{zone_identifier}/custom_pages/assets/{asset_name} | Update a custom asset |\n| GET | /zones/{zone_identifier}/custom_pages/{identifier} | Get a custom page |\n| PUT | /zones/{zone_identifier}/custom_pages/{identifier} | Update a custom page |\n| DELETE | /zones/{zone_id} | Delete Zone |\n| GET | /zones/{zone_id} | Zone Details |\n| PATCH | /zones/{zone_id} | Edit Zone |\n| GET | /zones/{zone_id}/access/apps | List Access Applications |\n| POST | /zones/{zone_id}/access/apps | Add an Access application |\n| GET | /zones/{zone_id}/access/apps/ca | List short-lived certificate CAs |\n| DELETE | /zones/{zone_id}/access/apps/{app_id} | Delete an Access application |\n| GET | /zones/{zone_id}/access/apps/{app_id} | Get an Access application |\n| PUT | /zones/{zone_id}/access/apps/{app_id} | Update an Access application |\n| DELETE | /zones/{zone_id}/access/apps/{app_id}/ca | Delete a short-lived certificate CA |\n| GET | /zones/{zone_id}/access/apps/{app_id}/ca | Get a short-lived certificate CA |\n| POST | /zones/{zone_id}/access/apps/{app_id}/ca | Create a short-lived certificate CA |\n| GET | /zones/{zone_id}/access/apps/{app_id}/policies | List Access policies |\n| POST | /zones/{zone_id}/access/apps/{app_id}/policies | Create an Access policy |\n| DELETE | /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id} | Delete an Access policy |\n| GET | /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id} | Get an Access policy |\n| PUT | /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id} | Update an Access policy |\n| POST | /zones/{zone_id}/access/apps/{app_id}/revoke_tokens | Revoke application tokens |\n| PATCH | /zones/{zone_id}/access/apps/{app_id}/settings | Update application settings |\n| PUT | /zones/{zone_id}/access/apps/{app_id}/settings | Update application settings |\n| GET | /zones/{zone_id}/access/apps/{app_id}/user_policy_checks | Test Access policies |\n| GET | /zones/{zone_id}/access/certificates | List mTLS certificates |\n| POST | /zones/{zone_id}/access/certificates | Add an mTLS certificate |\n| GET | /zones/{zone_id}/access/certificates/settings | List all mTLS hostname settings |\n| PUT | /zones/{zone_id}/access/certificates/settings | Update an mTLS certificate's hostname settings |\n| DELETE | /zones/{zone_id}/access/certificates/{certificate_id} | Delete an mTLS certificate |\n| GET | /zones/{zone_id}/access/certificates/{certificate_id} | Get an mTLS certificate |\n| PUT | /zones/{zone_id}/access/certificates/{certificate_id} | Update an mTLS certificate |\n| GET | /zones/{zone_id}/access/groups | List Access groups |\n| POST | /zones/{zone_id}/access/groups | Create an Access group |\n| DELETE | /zones/{zone_id}/access/groups/{group_id} | Delete an Access group |\n| GET | /zones/{zone_id}/access/groups/{group_id} | Get an Access group |\n| PUT | /zones/{zone_id}/access/groups/{group_id} | Update an Access group |\n| GET | /zones/{zone_id}/access/identity_providers | List Access identity providers |\n| POST | /zones/{zone_id}/access/identity_providers | Add an Access identity provider |\n| DELETE | /zones/{zone_id}/access/identity_providers/{identity_provider_id} | Delete an Access identity provider |\n| GET | /zones/{zone_id}/access/identity_providers/{identity_provider_id} | Get an Access identity provider |\n| PUT | /zones/{zone_id}/access/identity_providers/{identity_provider_id} | Update an Access identity provider |\n| GET | /zones/{zone_id}/access/organizations | Get your Zero Trust organization |\n| POST | /zones/{zone_id}/access/organizations | Create your Zero Trust organization |\n| PUT | /zones/{zone_id}/access/organizations | Update your Zero Trust organization |\n| POST | /zones/{zone_id}/access/organizations/revoke_user | Revoke all Access tokens for a user |\n| GET | /zones/{zone_id}/access/service_tokens | List service tokens |\n| POST | /zones/{zone_id}/access/service_tokens | Create a service token |\n| DELETE | /zones/{zone_id}/access/service_tokens/{service_token_id} | Delete a service token |\n| GET | /zones/{zone_id}/access/service_tokens/{service_token_id} | Get a service token |\n| PUT | /zones/{zone_id}/access/service_tokens/{service_token_id} | Update a service token |\n| GET | /zones/{zone_id}/acm/custom_trust_store | List Custom Origin Trust Store Details |\n| POST | /zones/{zone_id}/acm/custom_trust_store | Upload Custom Origin Trust Store |\n| DELETE | /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id} | Delete Custom Origin Trust Store |\n| GET | /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id} | Custom Origin Trust Store Details |\n| GET | /zones/{zone_id}/acm/total_tls | Total TLS Settings Details |\n| POST | /zones/{zone_id}/acm/total_tls | Enable or Disable Total TLS |\n| PUT | /zones/{zone_id}/activation_check | Rerun the Activation Check |\n| GET | /zones/{zone_id}/addressing/regional_hostnames | List Regional Hostnames |\n| POST | /zones/{zone_id}/addressing/regional_hostnames | Create Regional Hostname |\n| DELETE | /zones/{zone_id}/addressing/regional_hostnames/{hostname} | Delete Regional Hostname |\n| GET | /zones/{zone_id}/addressing/regional_hostnames/{hostname} | Fetch Regional Hostname |\n| PATCH | /zones/{zone_id}/addressing/regional_hostnames/{hostname} | Update Regional Hostname |\n| GET | /zones/{zone_id}/analytics/latency | Argo Analytics for a zone |\n| GET | /zones/{zone_id}/analytics/latency/colos | Argo Analytics for a zone at different PoPs |\n| GET | /zones/{zone_id}/api_gateway/configuration | Retrieve information about specific configuration properties |\n| PUT | /zones/{zone_id}/api_gateway/configuration | Update configuration properties |\n| GET | /zones/{zone_id}/api_gateway/discovery | Retrieve discovered operations on a zone rendered as OpenAPI schemas |\n| GET | /zones/{zone_id}/api_gateway/discovery/operations | Retrieve discovered operations on a zone |\n| PATCH | /zones/{zone_id}/api_gateway/discovery/operations | Patch discovered operations |\n| PATCH | /zones/{zone_id}/api_gateway/discovery/operations/{operation_id} | Patch discovered operation |\n| POST | /zones/{zone_id}/api_gateway/expression-template/fallthrough | Generate fallthrough WAF expression template from a set of API hosts |\n| GET | /zones/{zone_id}/api_gateway/labels | Retrieve all labels |\n| GET | /zones/{zone_id}/api_gateway/labels/managed/{name} | Retrieve managed label |\n| PUT | /zones/{zone_id}/api_gateway/labels/managed/{name}/resources/operation | Replace operation(s) attached to a managed label |\n| DELETE | /zones/{zone_id}/api_gateway/labels/user | Delete user labels |\n| POST | /zones/{zone_id}/api_gateway/labels/user | Create user labels |\n| DELETE | /zones/{zone_id}/api_gateway/labels/user/{name} | Delete user label |\n| GET | /zones/{zone_id}/api_gateway/labels/user/{name} | Retrieve user label |\n| PATCH | /zones/{zone_id}/api_gateway/labels/user/{name} | Patch user label |\n| PUT | /zones/{zone_id}/api_gateway/labels/user/{name} | Update user label |\n| PUT | /zones/{zone_id}/api_gateway/labels/user/{name}/resources/operation | Replace operation(s) attached to a user label |\n| DELETE | /zones/{zone_id}/api_gateway/operations | Delete multiple operations |\n| GET | /zones/{zone_id}/api_gateway/operations | Retrieve information about all operations on a zone |\n| POST | /zones/{zone_id}/api_gateway/operations | Add operations to a zone |\n| POST | /zones/{zone_id}/api_gateway/operations/item | Add one operation to a zone |\n| DELETE | /zones/{zone_id}/api_gateway/operations/labels | Bulk remove label(s) on operation(s) in endpoint management |\n| POST | /zones/{zone_id}/api_gateway/operations/labels | Bulk attach label(s) on operation(s) in endpoint management |\n| PUT | /zones/{zone_id}/api_gateway/operations/labels | Bulk replace label(s) on operation(s) in endpoint management |\n| PATCH | /zones/{zone_id}/api_gateway/operations/schema_validation | Update multiple operation-level schema validation settings |\n| DELETE | /zones/{zone_id}/api_gateway/operations/{operation_id} | Delete an operation |\n| GET | /zones/{zone_id}/api_gateway/operations/{operation_id} | Retrieve information about an operation |\n| DELETE | /zones/{zone_id}/api_gateway/operations/{operation_id}/labels | Remove label(s) on an operation in endpoint management |\n| POST | /zones/{zone_id}/api_gateway/operations/{operation_id}/labels | Attach label(s) on an operation in endpoint management |\n| PUT | /zones/{zone_id}/api_gateway/operations/{operation_id}/labels | Replace label(s) on an operation in endpoint management |\n| GET | /zones/{zone_id}/api_gateway/operations/{operation_id}/schema_validation | Retrieve operation-level schema validation settings |\n| PUT | /zones/{zone_id}/api_gateway/operations/{operation_id}/schema_validation | Update operation-level schema validation settings |\n| GET | /zones/{zone_id}/api_gateway/schemas | Retrieve operations and features as OpenAPI schemas |\n| GET | /zones/{zone_id}/api_gateway/settings/schema_validation | Retrieve zone level schema validation settings |\n| PATCH | /zones/{zone_id}/api_gateway/settings/schema_validation | Update zone level schema validation settings |\n| PUT | /zones/{zone_id}/api_gateway/settings/schema_validation | Update zone level schema validation settings |\n| GET | /zones/{zone_id}/api_gateway/user_schemas | Retrieve information about all schemas on a zone |\n| POST | /zones/{zone_id}/api_gateway/user_schemas | Upload a schema to a zone |\n| GET | /zones/{zone_id}/api_gateway/user_schemas/hosts | Retrieve schema hosts in a zone |\n| DELETE | /zones/{zone_id}/api_gateway/user_schemas/{schema_id} | Delete a schema |\n| GET | /zones/{zone_id}/api_gateway/user_schemas/{schema_id} | Retrieve information about a specific schema on a zone |\n| PATCH | /zones/{zone_id}/api_gateway/user_schemas/{schema_id} | Enable validation for a schema |\n| GET | /zones/{zone_id}/api_gateway/user_schemas/{schema_id}/operations | Retrieve all operations from a schema. |\n| GET | /zones/{zone_id}/argo/smart_routing | Get Argo Smart Routing setting |\n| PATCH | /zones/{zone_id}/argo/smart_routing | Patch Argo Smart Routing setting |\n| GET | /zones/{zone_id}/argo/tiered_caching | Get Tiered Caching setting |\n| PATCH | /zones/{zone_id}/argo/tiered_caching | Patch Tiered Caching setting |\n| GET | /zones/{zone_id}/available_plans | List Available Plans |\n| GET | /zones/{zone_id}/available_plans/{plan_identifier} | Available Plan Details |\n| GET | /zones/{zone_id}/available_rate_plans | List Available Rate Plans |\n| GET | /zones/{zone_id}/bot_management | Get Zone Bot Management Config |\n| PUT | /zones/{zone_id}/bot_management | Update Zone Bot Management Config |\n| GET | /zones/{zone_id}/bot_management/feedback | List zone feedback reports |\n| POST | /zones/{zone_id}/bot_management/feedback | Submit a feedback report |\n| GET | /zones/{zone_id}/cache/cache_reserve | Get Cache Reserve setting |\n| PATCH | /zones/{zone_id}/cache/cache_reserve | Change Cache Reserve setting |\n| GET | /zones/{zone_id}/cache/cache_reserve_clear | Get Cache Reserve Clear |\n| POST | /zones/{zone_id}/cache/cache_reserve_clear | Start Cache Reserve Clear |\n| GET | /zones/{zone_id}/cache/origin_post_quantum_encryption | Get Origin Post-Quantum Encryption setting |\n| PUT | /zones/{zone_id}/cache/origin_post_quantum_encryption | Change Origin Post-Quantum Encryption setting |\n| GET | /zones/{zone_id}/cache/regional_tiered_cache | Get Regional Tiered Cache setting |\n| PATCH | /zones/{zone_id}/cache/regional_tiered_cache | Change Regional Tiered Cache setting |\n| DELETE | /zones/{zone_id}/cache/tiered_cache_smart_topology_enable | Delete Smart Tiered Cache setting |\n| GET | /zones/{zone_id}/cache/tiered_cache_smart_topology_enable | Get Smart Tiered Cache setting |\n| PATCH | /zones/{zone_id}/cache/tiered_cache_smart_topology_enable | Patch Smart Tiered Cache setting |\n| DELETE | /zones/{zone_id}/cache/variants | Delete variants setting |\n| GET | /zones/{zone_id}/cache/variants | Get variants setting |\n| PATCH | /zones/{zone_id}/cache/variants | Change variants setting |\n| GET | /zones/{zone_id}/certificate_authorities/hostname_associations | List Hostname Associations |\n| PUT | /zones/{zone_id}/certificate_authorities/hostname_associations | Replace Hostname Associations |\n| GET | /zones/{zone_id}/client_certificates | List Client Certificates |\n| POST | /zones/{zone_id}/client_certificates | Create Client Certificate |\n| DELETE | /zones/{zone_id}/client_certificates/{client_certificate_id} | Revoke Client Certificate |\n| GET | /zones/{zone_id}/client_certificates/{client_certificate_id} | Client Certificate Details |\n| PATCH | /zones/{zone_id}/client_certificates/{client_certificate_id} | Reactivate Client Certificate |\n| GET | /zones/{zone_id}/cloud_connector/rules | Rules |\n| PUT | /zones/{zone_id}/cloud_connector/rules | Put Rules |\n| POST | /zones/{zone_id}/content-upload-scan/disable | Disable Content Scanning |\n| POST | /zones/{zone_id}/content-upload-scan/enable | Enable Content Scanning |\n| GET | /zones/{zone_id}/content-upload-scan/payloads | List Existing Custom Scan Expressions |\n| POST | /zones/{zone_id}/content-upload-scan/payloads | Add Custom Scan Expressions |\n| DELETE | /zones/{zone_id}/content-upload-scan/payloads/{expression_id} | Delete a Custom Scan Expression |\n| GET | /zones/{zone_id}/content-upload-scan/settings | Get Content Scanning Status |\n| PUT | /zones/{zone_id}/content-upload-scan/settings | Update Content Scanning Status |\n| GET | /zones/{zone_id}/custom_certificates | List SSL Configurations |\n| POST | /zones/{zone_id}/custom_certificates | Create SSL Configuration |\n| PUT | /zones/{zone_id}/custom_certificates/prioritize | Re-prioritize SSL Certificates |\n| DELETE | /zones/{zone_id}/custom_certificates/{custom_certificate_id} | Delete SSL Configuration |\n| GET | /zones/{zone_id}/custom_certificates/{custom_certificate_id} | SSL Configuration Details |\n| PATCH | /zones/{zone_id}/custom_certificates/{custom_certificate_id} | Edit SSL Configuration |\n| GET | /zones/{zone_id}/custom_hostnames | List Custom Hostnames |\n| POST | /zones/{zone_id}/custom_hostnames | Create Custom Hostname |\n| DELETE | /zones/{zone_id}/custom_hostnames/fallback_origin | Delete Fallback Origin for Custom Hostnames |\n| GET | /zones/{zone_id}/custom_hostnames/fallback_origin | Get Fallback Origin for Custom Hostnames |\n| PUT | /zones/{zone_id}/custom_hostnames/fallback_origin | Update Fallback Origin for Custom Hostnames |\n| DELETE | /zones/{zone_id}/custom_hostnames/{custom_hostname_id} | Delete Custom Hostname (and any issued SSL certificates) |\n| GET | /zones/{zone_id}/custom_hostnames/{custom_hostname_id} | Custom Hostname Details |\n| PATCH | /zones/{zone_id}/custom_hostnames/{custom_hostname_id} | Edit Custom Hostname |\n| DELETE | /zones/{zone_id}/custom_hostnames/{custom_hostname_id}/certificate_pack/{certificate_pack_id}/certificates/{certificate_id} | Delete Single Certificate And Key For Custom Hostname |\n| PUT | /zones/{zone_id}/custom_hostnames/{custom_hostname_id}/certificate_pack/{certificate_pack_id}/certificates/{certificate_id} | Replace Custom Certificate and Custom Key In Custom Hostname |\n| GET | /zones/{zone_id}/custom_ns | Get Account Custom Nameserver Related Zone Metadata |\n| PUT | /zones/{zone_id}/custom_ns | Set Account Custom Nameserver Related Zone Metadata |\n| GET | /zones/{zone_id}/dcv_delegation/uuid | Retrieve the DCV Delegation unique identifier. |\n| GET | /zones/{zone_id}/devices/policy/certificates | Get device certificate provisioning status |\n| PATCH | /zones/{zone_id}/devices/policy/certificates | Update device certificate provisioning status |\n| GET | /zones/{zone_id}/dns_analytics/report | Table |\n| GET | /zones/{zone_id}/dns_analytics/report/bytime | By Time |\n| GET | /zones/{zone_id}/dns_records | List DNS Records |\n| POST | /zones/{zone_id}/dns_records | Create DNS Record |\n| POST | /zones/{zone_id}/dns_records/batch | Batch DNS Records |\n| GET | /zones/{zone_id}/dns_records/export | Export DNS Records |\n| POST | /zones/{zone_id}/dns_records/import | Import DNS Records |\n| POST | /zones/{zone_id}/dns_records/scan | Scan DNS Records |\n| GET | /zones/{zone_id}/dns_records/scan/review | List Scanned DNS Records |\n| POST | /zones/{zone_id}/dns_records/scan/review | Review Scanned DNS Records |\n| POST | /zones/{zone_id}/dns_records/scan/trigger | Trigger DNS Record Scan |\n| GET | /zones/{zone_id}/dns_records/usage | Get DNS Record Usage |\n| DELETE | /zones/{zone_id}/dns_records/{dns_record_id} | Delete DNS Record |\n| GET | /zones/{zone_id}/dns_records/{dns_record_id} | DNS Record Details |\n| PATCH | /zones/{zone_id}/dns_records/{dns_record_id} | Update DNS Record |\n| PUT | /zones/{zone_id}/dns_records/{dns_record_id} | Overwrite DNS Record |\n| GET | /zones/{zone_id}/dns_settings | Show DNS Settings |\n| PATCH | /zones/{zone_id}/dns_settings | Update DNS Settings |\n| DELETE | /zones/{zone_id}/dnssec | Delete DNSSEC records |\n| GET | /zones/{zone_id}/dnssec | DNSSEC Details |\n| PATCH | /zones/{zone_id}/dnssec | Edit DNSSEC Status |\n| GET | /zones/{zone_id}/email/routing | Get Email Routing settings |\n| POST | /zones/{zone_id}/email/routing/disable | Disable Email Routing |\n| DELETE | /zones/{zone_id}/email/routing/dns | Disable Email Routing |\n| GET | /zones/{zone_id}/email/routing/dns | Email Routing - DNS settings |\n| PATCH | /zones/{zone_id}/email/routing/dns | Unlock Email Routing |\n| POST | /zones/{zone_id}/email/routing/dns | Enable Email Routing |\n| POST | /zones/{zone_id}/email/routing/enable | Enable Email Routing |\n| GET | /zones/{zone_id}/email/routing/rules | List routing rules |\n| POST | /zones/{zone_id}/email/routing/rules | Create routing rule |\n| GET | /zones/{zone_id}/email/routing/rules/catch_all | Get catch-all rule |\n| PUT | /zones/{zone_id}/email/routing/rules/catch_all | Update catch-all rule |\n| DELETE | /zones/{zone_id}/email/routing/rules/{rule_identifier} | Delete routing rule |\n| GET | /zones/{zone_id}/email/routing/rules/{rule_identifier} | Get routing rule |\n| PUT | /zones/{zone_id}/email/routing/rules/{rule_identifier} | Update routing rule |\n| GET | /zones/{zone_id}/email/sending/subdomains | List sending subdomains |\n| POST | /zones/{zone_id}/email/sending/subdomains | Create a sending subdomain |\n| POST | /zones/{zone_id}/email/sending/subdomains/preview | Preview sending subdomain DNS |\n| DELETE | /zones/{zone_id}/email/sending/subdomains/{subdomain_id} | Delete a sending subdomain |\n| GET | /zones/{zone_id}/email/sending/subdomains/{subdomain_id} | Get a sending subdomain |\n| GET | /zones/{zone_id}/email/sending/subdomains/{subdomain_id}/dns | Get sending subdomain DNS records |\n| GET | /zones/{zone_id}/environments | List zone environments |\n| PATCH | /zones/{zone_id}/environments | Partially update zone environments |\n| POST | /zones/{zone_id}/environments | Create zone environments |\n| PUT | /zones/{zone_id}/environments | Upsert zone environments |\n| DELETE | /zones/{zone_id}/environments/{environment_id} | Delete zone environment |\n| POST | /zones/{zone_id}/environments/{environment_id}/rollback | Roll back zone environment |\n| DELETE | /zones/{zone_id}/filters | Delete filters |\n| GET | /zones/{zone_id}/filters | List filters |\n| POST | /zones/{zone_id}/filters | Create filters |\n| PUT | /zones/{zone_id}/filters | Update filters |\n| DELETE | /zones/{zone_id}/filters/{filter_id} | Delete a filter |\n| GET | /zones/{zone_id}/filters/{filter_id} | Get a filter |\n| PUT | /zones/{zone_id}/filters/{filter_id} | Update a filter |\n| GET | /zones/{zone_id}/firewall-for-ai/custom-topics | Get Firewall for AI Custom Topics |\n| PUT | /zones/{zone_id}/firewall-for-ai/custom-topics | Set Firewall for AI Custom Topics |\n| GET | /zones/{zone_id}/firewall-for-ai/settings | Get Firewall for AI Status |\n| PUT | /zones/{zone_id}/firewall-for-ai/settings | Set Firewall for AI Status |\n| GET | /zones/{zone_id}/firewall/access_rules/rules | List IP Access rules |\n| POST | /zones/{zone_id}/firewall/access_rules/rules | Create an IP Access rule |\n| DELETE | /zones/{zone_id}/firewall/access_rules/rules/{rule_id} | Delete an IP Access rule |\n| PATCH | /zones/{zone_id}/firewall/access_rules/rules/{rule_id} | Update an IP Access rule |\n| GET | /zones/{zone_id}/firewall/lockdowns | List Zone Lockdown rules |\n| POST | /zones/{zone_id}/firewall/lockdowns | Create a Zone Lockdown rule |\n| DELETE | /zones/{zone_id}/firewall/lockdowns/{lock_downs_id} | Delete a Zone Lockdown rule |\n| GET | /zones/{zone_id}/firewall/lockdowns/{lock_downs_id} | Get a Zone Lockdown rule |\n| PUT | /zones/{zone_id}/firewall/lockdowns/{lock_downs_id} | Update a Zone Lockdown rule |\n| DELETE | /zones/{zone_id}/firewall/rules | Delete firewall rules |\n| GET | /zones/{zone_id}/firewall/rules | List firewall rules |\n| PATCH | /zones/{zone_id}/firewall/rules | Update priority of firewall rules |\n| POST | /zones/{zone_id}/firewall/rules | Create firewall rules |\n| PUT | /zones/{zone_id}/firewall/rules | Update firewall rules |\n| DELETE | /zones/{zone_id}/firewall/rules/{rule_id} | Delete a firewall rule |\n| GET | /zones/{zone_id}/firewall/rules/{rule_id} | Get a firewall rule |\n| PATCH | /zones/{zone_id}/firewall/rules/{rule_id} | Update priority of a firewall rule |\n| PUT | /zones/{zone_id}/firewall/rules/{rule_id} | Update a firewall rule |\n| GET | /zones/{zone_id}/firewall/ua_rules | List User Agent Blocking rules |\n| POST | /zones/{zone_id}/firewall/ua_rules | Create a User Agent Blocking rule |\n| DELETE | /zones/{zone_id}/firewall/ua_rules/{ua_rule_id} | Delete a User Agent Blocking rule |\n| GET | /zones/{zone_id}/firewall/ua_rules/{ua_rule_id} | Get a User Agent Blocking rule |\n| PUT | /zones/{zone_id}/firewall/ua_rules/{ua_rule_id} | Update a User Agent Blocking rule |\n| GET | /zones/{zone_id}/firewall/waf/overrides | List WAF overrides |\n| POST | /zones/{zone_id}/firewall/waf/overrides | Create a WAF override |\n| DELETE | /zones/{zone_id}/firewall/waf/overrides/{overrides_id} | Delete a WAF override |\n| GET | /zones/{zone_id}/firewall/waf/overrides/{overrides_id} | Get a WAF override |\n| PUT | /zones/{zone_id}/firewall/waf/overrides/{overrides_id} | Update WAF override |\n| GET | /zones/{zone_id}/firewall/waf/packages | List WAF packages |\n| GET | /zones/{zone_id}/firewall/waf/packages/{package_id} | Get a WAF package |\n| PATCH | /zones/{zone_id}/firewall/waf/packages/{package_id} | Update a WAF package |\n| GET | /zones/{zone_id}/firewall/waf/packages/{package_id}/groups | List WAF rule groups |\n| GET | /zones/{zone_id}/firewall/waf/packages/{package_id}/groups/{group_id} | Get a WAF rule group |\n| PATCH | /zones/{zone_id}/firewall/waf/packages/{package_id}/groups/{group_id} | Update a WAF rule group |\n| GET | /zones/{zone_id}/firewall/waf/packages/{package_id}/rules | List WAF rules |\n| GET | /zones/{zone_id}/firewall/waf/packages/{package_id}/rules/{rule_id} | Get a WAF rule |\n| PATCH | /zones/{zone_id}/firewall/waf/packages/{package_id}/rules/{rule_id} | Update a WAF rule |\n| GET | /zones/{zone_id}/fraud_detection/settings | Get Fraud Detection Settings |\n| PUT | /zones/{zone_id}/fraud_detection/settings | Update Fraud Detection Settings |\n| GET | /zones/{zone_id}/healthchecks | List Health Checks |\n| POST | /zones/{zone_id}/healthchecks | Create Health Check |\n| POST | /zones/{zone_id}/healthchecks/preview | Create Preview Health Check |\n| DELETE | /zones/{zone_id}/healthchecks/preview/{healthcheck_id} | Delete Preview Health Check |\n| GET | /zones/{zone_id}/healthchecks/preview/{healthcheck_id} | Health Check Preview Details |\n| DELETE | /zones/{zone_id}/healthchecks/{healthcheck_id} | Delete Health Check |\n| GET | /zones/{zone_id}/healthchecks/{healthcheck_id} | Health Check Details |\n| PATCH | /zones/{zone_id}/healthchecks/{healthcheck_id} | Patch Health Check |\n| PUT | /zones/{zone_id}/healthchecks/{healthcheck_id} | Update Health Check |\n| DELETE | /zones/{zone_id}/hold | Remove Zone Hold |\n| GET | /zones/{zone_id}/hold | Get Zone Hold |\n| PATCH | /zones/{zone_id}/hold | Update Zone Hold |\n| POST | /zones/{zone_id}/hold | Create Zone Hold |\n| GET | /zones/{zone_id}/hostnames/settings/{setting_id} | List TLS setting for hostnames |\n| DELETE | /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname} | Delete TLS setting for hostname |\n| GET | /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname} | Get TLS setting for hostname |\n| PUT | /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname} | Edit TLS setting for hostname |\n| GET | /zones/{zone_id}/keyless_certificates | List Keyless SSL Configurations |\n| POST | /zones/{zone_id}/keyless_certificates | Create Keyless SSL Configuration |\n| DELETE | /zones/{zone_id}/keyless_certificates/{keyless_certificate_id} | Delete Keyless SSL Configuration |\n| GET | /zones/{zone_id}/keyless_certificates/{keyless_certificate_id} | Get Keyless SSL Configuration |\n| PATCH | /zones/{zone_id}/keyless_certificates/{keyless_certificate_id} | Edit Keyless SSL Configuration |\n| GET | /zones/{zone_id}/leaked-credential-checks | Get Leaked Credential Checks Status |\n| POST | /zones/{zone_id}/leaked-credential-checks | Set Leaked Credential Checks Status |\n| GET | /zones/{zone_id}/leaked-credential-checks/detections | List Leaked Credential Checks Custom Detections |\n| POST | /zones/{zone_id}/leaked-credential-checks/detections | Create Leaked Credential Checks Custom Detection |\n| DELETE | /zones/{zone_id}/leaked-credential-checks/detections/{detection_id} | Delete Leaked Credential Checks Custom Detection |\n| GET | /zones/{zone_id}/leaked-credential-checks/detections/{detection_id} | Get Leaked Credential Checks Custom Detection |\n| PUT | /zones/{zone_id}/leaked-credential-checks/detections/{detection_id} | Update Leaked Credential Checks Custom Detection |\n| GET | /zones/{zone_id}/load_balancers | List Load Balancers |\n| POST | /zones/{zone_id}/load_balancers | Create Load Balancer |\n| DELETE | /zones/{zone_id}/load_balancers/{load_balancer_id} | Delete Load Balancer |\n| GET | /zones/{zone_id}/load_balancers/{load_balancer_id} | Load Balancer Details |\n| PATCH | /zones/{zone_id}/load_balancers/{load_balancer_id} | Patch Load Balancer |\n| PUT | /zones/{zone_id}/load_balancers/{load_balancer_id} | Update Load Balancer |\n| GET | /zones/{zone_id}/logpush/datasets/{dataset_id}/fields | List fields |\n| GET | /zones/{zone_id}/logpush/datasets/{dataset_id}/jobs | List Logpush jobs for a dataset |\n| GET | /zones/{zone_id}/logpush/edge/jobs | List Instant Logs jobs |\n| POST | /zones/{zone_id}/logpush/edge/jobs | Create Instant Logs job |\n| GET | /zones/{zone_id}/logpush/jobs | List Logpush jobs |\n| POST | /zones/{zone_id}/logpush/jobs | Create Logpush job |\n| DELETE | /zones/{zone_id}/logpush/jobs/{job_id} | Delete Logpush job |\n| GET | /zones/{zone_id}/logpush/jobs/{job_id} | Get Logpush job details |\n| PUT | /zones/{zone_id}/logpush/jobs/{job_id} | Update Logpush job |\n| POST | /zones/{zone_id}/logpush/ownership | Get ownership challenge |\n| POST | /zones/{zone_id}/logpush/ownership/validate | Validate ownership challenge |\n| POST | /zones/{zone_id}/logpush/validate/destination | Validate destination |\n| POST | /zones/{zone_id}/logpush/validate/destination/exists | Check destination exists |\n| POST | /zones/{zone_id}/logpush/validate/origin | Validate origin |\n| GET | /zones/{zone_id}/logs/control/retention/flag | Get log retention flag |\n| POST | /zones/{zone_id}/logs/control/retention/flag | Update log retention flag |\n| GET | /zones/{zone_id}/logs/rayids/{ray_id} | Get logs RayIDs |\n| GET | /zones/{zone_id}/logs/received | Get logs received |\n| GET | /zones/{zone_id}/logs/received/fields | List fields |\n| DELETE | /zones/{zone_id}/managed_headers | Delete Managed Transforms |\n| GET | /zones/{zone_id}/managed_headers | List Managed Transforms |\n| PATCH | /zones/{zone_id}/managed_headers | Update Managed Transforms |\n| GET | /zones/{zone_id}/origin_tls_client_auth | List Certificates |\n| POST | /zones/{zone_id}/origin_tls_client_auth | Upload Certificate |\n| GET | /zones/{zone_id}/origin_tls_client_auth/hostnames | List Hostname Associations |\n| PUT | /zones/{zone_id}/origin_tls_client_auth/hostnames | Enable or Disable a Hostname for Client Authentication |\n| GET | /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates | List Certificates |\n| POST | /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates | Upload a Hostname Client Certificate |\n| DELETE | /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id} | Delete Hostname Client Certificate |\n| GET | /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id} | Get the Hostname Client Certificate |\n| GET | /zones/{zone_id}/origin_tls_client_auth/hostnames/{hostname} | Get the Hostname Status for Client Authentication |\n| GET | /zones/{zone_id}/origin_tls_client_auth/settings | Get Enablement Setting for Zone |\n| PUT | /zones/{zone_id}/origin_tls_client_auth/settings | Set Enablement for Zone |\n| DELETE | /zones/{zone_id}/origin_tls_client_auth/{certificate_id} | Delete Certificate |\n| GET | /zones/{zone_id}/origin_tls_client_auth/{certificate_id} | Get Certificate Details |\n| GET | /zones/{zone_id}/page_shield | Get Page Shield settings |\n| PUT | /zones/{zone_id}/page_shield | Update Page Shield settings |\n| GET | /zones/{zone_id}/page_shield/connections | List Page Shield connections |\n| GET | /zones/{zone_id}/page_shield/connections/{connection_id} | Get a Page Shield connection |\n| GET | /zones/{zone_id}/page_shield/cookies | List Page Shield Cookies |\n| GET | /zones/{zone_id}/page_shield/cookies/{cookie_id} | Get a Page Shield cookie |\n| GET | /zones/{zone_id}/page_shield/policies | List Page Shield policies |\n| POST | /zones/{zone_id}/page_shield/policies | Create a Page Shield policy |\n| DELETE | /zones/{zone_id}/page_shield/policies/{policy_id} | Delete a Page Shield policy |\n| GET | /zones/{zone_id}/page_shield/policies/{policy_id} | Get a Page Shield policy |\n| PUT | /zones/{zone_id}/page_shield/policies/{policy_id} | Update a Page Shield policy |\n| GET | /zones/{zone_id}/page_shield/scripts | List Page Shield scripts |\n| GET | /zones/{zone_id}/page_shield/scripts/{script_id} | Get a Page Shield script |\n| GET | /zones/{zone_id}/pagerules | List Page Rules |\n| POST | /zones/{zone_id}/pagerules | Create a Page Rule |\n| GET | /zones/{zone_id}/pagerules/settings | List available Page Rules settings |\n| DELETE | /zones/{zone_id}/pagerules/{pagerule_id} | Delete a Page Rule |\n| GET | /zones/{zone_id}/pagerules/{pagerule_id} | Get a Page Rule |\n| PATCH | /zones/{zone_id}/pagerules/{pagerule_id} | Edit a Page Rule |\n| PUT | /zones/{zone_id}/pagerules/{pagerule_id} | Update a Page Rule |\n| GET | /zones/{zone_id}/pay-per-crawl/configuration | Get the pay-per-crawl config |\n| PATCH | /zones/{zone_id}/pay-per-crawl/configuration | Changes pay-per-crawl config for a zone |\n| POST | /zones/{zone_id}/pay-per-crawl/configuration | Creates pay-per-crawl config for a zone |\n| POST | /zones/{zone_id}/purge_cache | Purge Cached Content |\n| GET | /zones/{zone_id}/rate_limits | List rate limits |\n| POST | /zones/{zone_id}/rate_limits | Create a rate limit |\n| DELETE | /zones/{zone_id}/rate_limits/{rate_limit_id} | Delete a rate limit |\n| GET | /zones/{zone_id}/rate_limits/{rate_limit_id} | Get a rate limit |\n| PUT | /zones/{zone_id}/rate_limits/{rate_limit_id} | Update a rate limit |\n| GET | /zones/{zone_id}/rulesets | List zone rulesets |\n| POST | /zones/{zone_id}/rulesets | Create a zone ruleset |\n| GET | /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint | Get a zone entry point ruleset |\n| PUT | /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint | Update a zone entry point ruleset |\n| GET | /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions | List a zone entry point ruleset's versions |\n| GET | /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version} | Get a zone entry point ruleset version |\n| DELETE | /zones/{zone_id}/rulesets/{ruleset_id} | Delete a zone ruleset |\n| GET | /zones/{zone_id}/rulesets/{ruleset_id} | Get a zone ruleset |\n| PUT | /zones/{zone_id}/rulesets/{ruleset_id} | Update a zone ruleset |\n| POST | /zones/{zone_id}/rulesets/{ruleset_id}/rules | Create a zone ruleset rule |\n| DELETE | /zones/{zone_id}/rulesets/{ruleset_id}/rules/{rule_id} | Delete a zone ruleset rule |\n| PATCH | /zones/{zone_id}/rulesets/{ruleset_id}/rules/{rule_id} | Update a zone ruleset rule |\n| GET | /zones/{zone_id}/rulesets/{ruleset_id}/versions | List a zone ruleset's versions |\n| DELETE | /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version} | Delete a zone ruleset version |\n| GET | /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version} | Get a zone ruleset version |\n| GET | /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag} | List a zone ruleset version's rules by tag |\n| GET | /zones/{zone_id}/schema_validation/schemas | List all uploaded schemas |\n| POST | /zones/{zone_id}/schema_validation/schemas | Upload a schema |\n| GET | /zones/{zone_id}/schema_validation/schemas/hosts | List hosts covered by uploaded schemas |\n| DELETE | /zones/{zone_id}/schema_validation/schemas/{schema_id} | Delete a schema |\n| GET | /zones/{zone_id}/schema_validation/schemas/{schema_id} | Get details of a schema |\n| PATCH | /zones/{zone_id}/schema_validation/schemas/{schema_id} | Edit details of a schema to enable validation |\n| GET | /zones/{zone_id}/schema_validation/schemas/{schema_id}/operations | Retrieve all operations from the schema. |\n| GET | /zones/{zone_id}/schema_validation/settings | Get global schema validation settings |\n| PATCH | /zones/{zone_id}/schema_validation/settings | Edit global schema validation settings |\n| PUT | /zones/{zone_id}/schema_validation/settings | Update global schema validation settings |\n| GET | /zones/{zone_id}/schema_validation/settings/operations | List per-operation schema validation settings |\n| PATCH | /zones/{zone_id}/schema_validation/settings/operations | Bulk edit per-operation schema validation settings |\n| DELETE | /zones/{zone_id}/schema_validation/settings/operations/{operation_id} | Delete per-operation schema validation setting |\n| GET | /zones/{zone_id}/schema_validation/settings/operations/{operation_id} | Get per-operation schema validation setting |\n| PUT | /zones/{zone_id}/schema_validation/settings/operations/{operation_id} | Update per-operation schema validation setting |\n| POST | /zones/{zone_id}/secondary_dns/force_axfr | Force AXFR |\n| DELETE | /zones/{zone_id}/secondary_dns/incoming | Delete Secondary Zone Configuration |\n| GET | /zones/{zone_id}/secondary_dns/incoming | Secondary Zone Configuration Details |\n| POST | /zones/{zone_id}/secondary_dns/incoming | Create Secondary Zone Configuration |\n| PUT | /zones/{zone_id}/secondary_dns/incoming | Update Secondary Zone Configuration |\n| DELETE | /zones/{zone_id}/secondary_dns/outgoing | Delete Primary Zone Configuration |\n| GET | /zones/{zone_id}/secondary_dns/outgoing | Primary Zone Configuration Details |\n| POST | /zones/{zone_id}/secondary_dns/outgoing | Create Primary Zone Configuration |\n| PUT | /zones/{zone_id}/secondary_dns/outgoing | Update Primary Zone Configuration |\n| POST | /zones/{zone_id}/secondary_dns/outgoing/disable | Disable Outgoing Zone Transfers |\n| POST | /zones/{zone_id}/secondary_dns/outgoing/enable | Enable Outgoing Zone Transfers |\n| POST | /zones/{zone_id}/secondary_dns/outgoing/force_notify | Force DNS NOTIFY |\n| GET | /zones/{zone_id}/secondary_dns/outgoing/status | Get Outgoing Zone Transfer Status |\n| GET | /zones/{zone_id}/security-center/insights | Retrieves Zone Security Center Insights |\n| GET | /zones/{zone_id}/security-center/insights/class | Retrieves Zone Security Center Insight Counts by Class |\n| GET | /zones/{zone_id}/security-center/insights/severity | Retrieves Zone Security Center Insight Counts by Severity |\n| GET | /zones/{zone_id}/security-center/insights/type | Retrieves Zone Security Center Insight Counts by Type |\n| PUT | /zones/{zone_id}/security-center/insights/{issue_id}/dismiss | Archives Zone Security Center Insight |\n| DELETE | /zones/{zone_id}/security-center/securitytxt | Deletes security.txt |\n| GET | /zones/{zone_id}/security-center/securitytxt | Retrieves security.txt |\n| PUT | /zones/{zone_id}/security-center/securitytxt | Updates security.txt |\n| GET | /zones/{zone_id}/settings | Get all zone settings |\n| PATCH | /zones/{zone_id}/settings | Edit multiple zone settings |\n| GET | /zones/{zone_id}/settings/aegis | Get aegis setting |\n| PATCH | /zones/{zone_id}/settings/aegis | Change aegis setting |\n| GET | /zones/{zone_id}/settings/fonts | Get Cloudflare Fonts setting |\n| PATCH | /zones/{zone_id}/settings/fonts | Change Cloudflare Fonts setting |\n| GET | /zones/{zone_id}/settings/google-tag-gateway/config | Get Google Tag Gateway configuration |\n| PUT | /zones/{zone_id}/settings/google-tag-gateway/config | Update Google Tag Gateway configuration |\n| GET | /zones/{zone_id}/settings/origin_h2_max_streams | Get Origin H2 Max Streams Setting |\n| PATCH | /zones/{zone_id}/settings/origin_h2_max_streams | Change Origin H2 Max Streams Setting |\n| GET | /zones/{zone_id}/settings/origin_max_http_version | Get Origin Max HTTP Version Setting |\n| PATCH | /zones/{zone_id}/settings/origin_max_http_version | Change Origin Max HTTP Version Setting |\n| GET | /zones/{zone_id}/settings/rum | Get RUM status for a zone |\n| PATCH | /zones/{zone_id}/settings/rum | Toggle RUM on/off for a zone |\n| GET | /zones/{zone_id}/settings/speed_brain | Get Cloudflare Speed Brain setting |\n| PATCH | /zones/{zone_id}/settings/speed_brain | Change Cloudflare Speed Brain setting |\n| GET | /zones/{zone_id}/settings/ssl_automatic_mode | Get Automatic SSL/TLS enrollment status for the given zone |\n| PATCH | /zones/{zone_id}/settings/ssl_automatic_mode | Patch Automatic SSL/TLS Enrollment status for given zone |\n| GET | /zones/{zone_id}/settings/zaraz/config | Get Zaraz configuration |\n| PUT | /zones/{zone_id}/settings/zaraz/config | Update Zaraz configuration |\n| GET | /zones/{zone_id}/settings/zaraz/default | Get default Zaraz configuration |\n| GET | /zones/{zone_id}/settings/zaraz/export | Export Zaraz configuration |\n| GET | /zones/{zone_id}/settings/zaraz/history | List Zaraz historical configuration records |\n| PUT | /zones/{zone_id}/settings/zaraz/history | Restore Zaraz historical configuration by ID |\n| GET | /zones/{zone_id}/settings/zaraz/history/configs | Get Zaraz historical configurations by ID(s) |\n| POST | /zones/{zone_id}/settings/zaraz/publish | Publish Zaraz preview configuration |\n| GET | /zones/{zone_id}/settings/zaraz/workflow | Get Zaraz workflow |\n| PUT | /zones/{zone_id}/settings/zaraz/workflow | Update Zaraz workflow |\n| GET | /zones/{zone_id}/settings/{setting_id} | Get zone setting |\n| PATCH | /zones/{zone_id}/settings/{setting_id} | Edit zone setting |\n| GET | /zones/{zone_id}/smart_shield | Get Smart Shield Settings |\n| PATCH | /zones/{zone_id}/smart_shield | Patch Smart Shield Settings |\n| GET | /zones/{zone_id}/smart_shield/cache_reserve_clear | Get Cache Reserve Clear |\n| POST | /zones/{zone_id}/smart_shield/cache_reserve_clear | Start Cache Reserve Clear |\n| GET | /zones/{zone_id}/smart_shield/healthchecks | List Health Checks |\n| POST | /zones/{zone_id}/smart_shield/healthchecks | Create Health Check |\n| DELETE | /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id} | Delete Health Check |\n| GET | /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id} | Health Check Details |\n| PATCH | /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id} | Patch Health Check |\n| PUT | /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id} | Update Health Check |\n| GET | /zones/{zone_id}/snippets | List zone snippets |\n| DELETE | /zones/{zone_id}/snippets/snippet_rules | Delete zone snippet rules |\n| GET | /zones/{zone_id}/snippets/snippet_rules | List zone snippet rules |\n| PUT | /zones/{zone_id}/snippets/snippet_rules | Update zone snippet rules |\n| DELETE | /zones/{zone_id}/snippets/{snippet_name} | Delete a zone snippet |\n| GET | /zones/{zone_id}/snippets/{snippet_name} | Get a zone snippet |\n| PUT | /zones/{zone_id}/snippets/{snippet_name} | Update a zone snippet |\n| GET | /zones/{zone_id}/snippets/{snippet_name}/content | Get a zone snippet content |\n| GET | /zones/{zone_id}/spectrum/analytics/aggregate/current | Get current aggregated analytics |\n| GET | /zones/{zone_id}/spectrum/analytics/events/bytime | Get analytics by time |\n| GET | /zones/{zone_id}/spectrum/analytics/events/summary | Get analytics summary |\n| GET | /zones/{zone_id}/spectrum/apps | List Spectrum applications |\n| POST | /zones/{zone_id}/spectrum/apps | Create Spectrum application using a name for the origin |\n| DELETE | /zones/{zone_id}/spectrum/apps/{app_id} | Delete Spectrum application |\n| GET | /zones/{zone_id}/spectrum/apps/{app_id} | Get Spectrum application configuration |\n| PUT | /zones/{zone_id}/spectrum/apps/{app_id} | Update Spectrum application configuration using a name for the origin |\n| GET | /zones/{zone_id}/speed_api/availabilities | Get quota and availability |\n| GET | /zones/{zone_id}/speed_api/pages | List tested webpages |\n| DELETE | /zones/{zone_id}/speed_api/pages/{url}/tests | Delete all page tests |\n| GET | /zones/{zone_id}/speed_api/pages/{url}/tests | List page test history |\n| POST | /zones/{zone_id}/speed_api/pages/{url}/tests | Start page test |\n| GET | /zones/{zone_id}/speed_api/pages/{url}/tests/{test_id} | Get a page test result |\n| GET | /zones/{zone_id}/speed_api/pages/{url}/trend | List core web vital metrics trend |\n| DELETE | /zones/{zone_id}/speed_api/schedule/{url} | Delete scheduled page test |\n| GET | /zones/{zone_id}/speed_api/schedule/{url} | Get a page test schedule |\n| POST | /zones/{zone_id}/speed_api/schedule/{url} | Create scheduled page test |\n| POST | /zones/{zone_id}/ssl/analyze | Analyze Certificate |\n| GET | /zones/{zone_id}/ssl/certificate_packs | List Certificate Packs |\n| POST | /zones/{zone_id}/ssl/certificate_packs/order | Order Advanced Certificate Manager Certificate Pack |\n| GET | /zones/{zone_id}/ssl/certificate_packs/quota | Get Certificate Pack Quotas |\n| DELETE | /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id} | Delete Advanced Certificate Manager Certificate Pack |\n| GET | /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id} | Get Certificate Pack |\n| PATCH | /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id} | Restart Validation or Update Advanced Certificate Manager Certificate Pack |\n| GET | /zones/{zone_id}/ssl/recommendation | SSL/TLS Recommendation |\n| GET | /zones/{zone_id}/ssl/universal/settings | Universal SSL Settings Details |\n| PATCH | /zones/{zone_id}/ssl/universal/settings | Edit Universal SSL Settings |\n| GET | /zones/{zone_id}/ssl/verification | SSL Verification Details |\n| PATCH | /zones/{zone_id}/ssl/verification/{certificate_pack_id} | Edit SSL Certificate Pack Validation Method |\n| GET | /zones/{zone_id}/subscription | Zone Subscription Details |\n| POST | /zones/{zone_id}/subscription | Create Zone Subscription |\n| PUT | /zones/{zone_id}/subscription | Update Zone Subscription |\n| DELETE | /zones/{zone_id}/tags | Delete tags from a zone-level resource |\n| GET | /zones/{zone_id}/tags | Get tags for a zone-level resource |\n| PUT | /zones/{zone_id}/tags | Set tags for a zone-level resource |\n| GET | /zones/{zone_id}/token_validation/config | List token validation configurations |\n| POST | /zones/{zone_id}/token_validation/config | Create a new Token Validation configuration |\n| DELETE | /zones/{zone_id}/token_validation/config/{config_id} | Delete Token Configuration |\n| GET | /zones/{zone_id}/token_validation/config/{config_id} | Get a single Token Configuration |\n| PATCH | /zones/{zone_id}/token_validation/config/{config_id} | Edit an existing Token Configuration |\n| PUT | /zones/{zone_id}/token_validation/config/{config_id}/credentials | Update Token Configuration credentials |\n| GET | /zones/{zone_id}/token_validation/rules | List token validation rules |\n| POST | /zones/{zone_id}/token_validation/rules | Create a token validation rule |\n| PATCH | /zones/{zone_id}/token_validation/rules/bulk | Bulk edit token validation rules |\n| POST | /zones/{zone_id}/token_validation/rules/bulk | Bulk create token validation rules |\n| POST | /zones/{zone_id}/token_validation/rules/preview | Preview operations covered by a Token Validation rule |\n| DELETE | /zones/{zone_id}/token_validation/rules/{rule_id} | Delete a zone token validation rule |\n| GET | /zones/{zone_id}/token_validation/rules/{rule_id} | Get a zone token validation rule |\n| PATCH | /zones/{zone_id}/token_validation/rules/{rule_id} | Edit a zone token validation rule |\n| DELETE | /zones/{zone_id}/url_normalization | Delete URL Normalization settings |\n| GET | /zones/{zone_id}/url_normalization | Get URL Normalization settings |\n| PUT | /zones/{zone_id}/url_normalization | Update URL Normalization settings |\n| GET | /zones/{zone_id}/waiting_rooms | List waiting rooms for zone |\n| POST | /zones/{zone_id}/waiting_rooms | Create waiting room |\n| POST | /zones/{zone_id}/waiting_rooms/preview | Create a custom waiting room page preview |\n| GET | /zones/{zone_id}/waiting_rooms/settings | Get zone-level Waiting Room settings |\n| PATCH | /zones/{zone_id}/waiting_rooms/settings | Patch zone-level Waiting Room settings |\n| PUT | /zones/{zone_id}/waiting_rooms/settings | Update zone-level Waiting Room settings |\n| DELETE | /zones/{zone_id}/waiting_rooms/{waiting_room_id} | Delete waiting room |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id} | Waiting room details |\n| PATCH | /zones/{zone_id}/waiting_rooms/{waiting_room_id} | Patch waiting room |\n| PUT | /zones/{zone_id}/waiting_rooms/{waiting_room_id} | Update waiting room |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events | List events |\n| POST | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events | Create event |\n| DELETE | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id} | Delete event |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id} | Event details |\n| PATCH | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id} | Patch event |\n| PUT | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id} | Update event |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}/details | Preview active event details |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules | List Waiting Room Rules |\n| POST | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules | Create Waiting Room Rule |\n| PUT | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules | Replace Waiting Room Rules |\n| DELETE | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules/{rule_id} | Delete Waiting Room Rule |\n| PATCH | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules/{rule_id} | Patch Waiting Room Rule |\n| GET | /zones/{zone_id}/waiting_rooms/{waiting_room_id}/status | Get waiting room status |\n| GET | /zones/{zone_id}/web3/hostnames | List Web3 Hostnames |\n| POST | /zones/{zone_id}/web3/hostnames | Create Web3 Hostname |\n| DELETE | /zones/{zone_id}/web3/hostnames/{identifier} | Delete Web3 Hostname |\n| GET | /zones/{zone_id}/web3/hostnames/{identifier} | Web3 Hostname Details |\n| PATCH | /zones/{zone_id}/web3/hostnames/{identifier} | Edit Web3 Hostname |\n| GET | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list | IPFS Universal Path Gateway Content List Details |\n| PUT | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list | Update IPFS Universal Path Gateway Content List |\n| GET | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries | List IPFS Universal Path Gateway Content List Entries |\n| POST | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries | Create IPFS Universal Path Gateway Content List Entry |\n| DELETE | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier} | Delete IPFS Universal Path Gateway Content List Entry |\n| GET | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier} | IPFS Universal Path Gateway Content List Entry Details |\n| PUT | /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier} | Edit IPFS Universal Path Gateway Content List Entry |\n| GET | /zones/{zone_id}/workers/routes | List Routes |\n| POST | /zones/{zone_id}/workers/routes | Create Route |\n| DELETE | /zones/{zone_id}/workers/routes/{route_id} | Delete Route |\n| GET | /zones/{zone_id}/workers/routes/{route_id} | Get Route |\n| PUT | /zones/{zone_id}/workers/routes/{route_id} | Update Route |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all accounts?\" -> GET /accounts\n- \"Create a account?\" -> POST /accounts\n- \"Create a move?\" -> POST /accounts/move\n- \"List all applications?\" -> GET /accounts/{accountId}/resource-library/applications\n- \"Create a application?\" -> POST /accounts/{accountId}/resource-library/applications\n- \"Get application details?\" -> GET /accounts/{accountId}/resource-library/applications/{id}\n- \"Partially update a application?\" -> PATCH /accounts/{accountId}/resource-library/applications/{id}\n- \"List all categories?\" -> GET /accounts/{accountId}/resource-library/categories\n- \"Get category details?\" -> GET /accounts/{accountId}/resource-library/categories/{id}\n- \"List all custom_pages?\" -> GET /accounts/{account_identifier}/custom_pages\n- \"List all assets?\" -> GET /accounts/{account_identifier}/custom_pages/assets\n- \"Create a asset?\" -> POST /accounts/{account_identifier}/custom_pages/assets\n- \"Delete a asset?\" -> DELETE /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n- \"Get asset details?\" -> GET /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n- \"Update a asset?\" -> PUT /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n- \"Get custom_page details?\" -> GET /accounts/{account_identifier}/custom_pages/{identifier}\n- \"Update a custom_page?\" -> PUT /accounts/{account_identifier}/custom_pages/{identifier}\n- \"Delete a account?\" -> DELETE /accounts/{account_id}\n- \"Get account details?\" -> GET /accounts/{account_id}\n- \"Update a account?\" -> PUT /accounts/{account_id}\n- \"List all abuse-reports?\" -> GET /accounts/{account_id}/abuse-reports\n- \"List all emails?\" -> GET /accounts/{account_id}/abuse-reports/{report_id}/emails\n- \"List all mitigations?\" -> GET /accounts/{account_id}/abuse-reports/{report_id}/mitigations\n- \"Create a appeal?\" -> POST /accounts/{account_id}/abuse-reports/{report_id}/mitigations/appeal\n- \"Get abuse-report details?\" -> GET /accounts/{account_id}/abuse-reports/{report_param}\n- \"Search portals?\" -> GET /accounts/{account_id}/access/ai-controls/mcp/portals\n- \"Create a portal?\" -> POST /accounts/{account_id}/access/ai-controls/mcp/portals\n- \"Delete a portal?\" -> DELETE /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n- \"Get portal details?\" -> GET /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n- \"Update a portal?\" -> PUT /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n- \"Search servers?\" -> GET /accounts/{account_id}/access/ai-controls/mcp/servers\n- \"Create a server?\" -> POST /accounts/{account_id}/access/ai-controls/mcp/servers\n- \"Delete a server?\" -> DELETE /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n- \"Get server details?\" -> GET /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n- \"Update a server?\" -> PUT /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n- \"Create a sync?\" -> POST /accounts/{account_id}/access/ai-controls/mcp/servers/{id}/sync\n- \"Search apps?\" -> GET /accounts/{account_id}/access/apps\n- \"Create a app?\" -> POST /accounts/{account_id}/access/apps\n- \"List all ca?\" -> GET /accounts/{account_id}/access/apps/ca\n- \"Delete a app?\" -> DELETE /accounts/{account_id}/access/apps/{app_id}\n- \"Get app details?\" -> GET /accounts/{account_id}/access/apps/{app_id}\n- \"Update a app?\" -> PUT /accounts/{account_id}/access/apps/{app_id}\n- \"Create a ca?\" -> POST /accounts/{account_id}/access/apps/{app_id}/ca\n- \"List all policies?\" -> GET /accounts/{account_id}/access/apps/{app_id}/policies\n- \"Create a policy?\" -> POST /accounts/{account_id}/access/apps/{app_id}/policies\n- \"Delete a policy?\" -> DELETE /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n- \"Get policy details?\" -> GET /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n- \"Update a policy?\" -> PUT /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n- \"Create a revoke_token?\" -> POST /accounts/{account_id}/access/apps/{app_id}/revoke_tokens\n- \"List all user_policy_checks?\" -> GET /accounts/{account_id}/access/apps/{app_id}/user_policy_checks\n- \"List all bookmarks?\" -> GET /accounts/{account_id}/access/bookmarks\n- \"Delete a bookmark?\" -> DELETE /accounts/{account_id}/access/bookmarks/{bookmark_id}\n- \"Get bookmark details?\" -> GET /accounts/{account_id}/access/bookmarks/{bookmark_id}\n- \"Update a bookmark?\" -> PUT /accounts/{account_id}/access/bookmarks/{bookmark_id}\n- \"List all certificates?\" -> GET /accounts/{account_id}/access/certificates\n- \"Create a certificate?\" -> POST /accounts/{account_id}/access/certificates\n- \"List all settings?\" -> GET /accounts/{account_id}/access/certificates/settings\n- \"Delete a certificate?\" -> DELETE /accounts/{account_id}/access/certificates/{certificate_id}\n- \"Get certificate details?\" -> GET /accounts/{account_id}/access/certificates/{certificate_id}\n- \"Update a certificate?\" -> PUT /accounts/{account_id}/access/certificates/{certificate_id}\n- \"Create a custom_page?\" -> POST /accounts/{account_id}/access/custom_pages\n- \"Delete a custom_page?\" -> DELETE /accounts/{account_id}/access/custom_pages/{custom_page_id}\n- \"List all gateway_ca?\" -> GET /accounts/{account_id}/access/gateway_ca\n- \"Create a gateway_ca?\" -> POST /accounts/{account_id}/access/gateway_ca\n- \"Delete a gateway_ca?\" -> DELETE /accounts/{account_id}/access/gateway_ca/{certificate_id}\n- \"Search groups?\" -> GET /accounts/{account_id}/access/groups\n- \"Create a group?\" -> POST /accounts/{account_id}/access/groups\n- \"Delete a group?\" -> DELETE /accounts/{account_id}/access/groups/{group_id}\n- \"Get group details?\" -> GET /accounts/{account_id}/access/groups/{group_id}\n- \"Update a group?\" -> PUT /accounts/{account_id}/access/groups/{group_id}\n- \"List all identity_providers?\" -> GET /accounts/{account_id}/access/identity_providers\n- \"Create a identity_provider?\" -> POST /accounts/{account_id}/access/identity_providers\n- \"Delete a identity_provider?\" -> DELETE /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n- \"Get identity_provider details?\" -> GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n- \"Update a identity_provider?\" -> PUT /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n- \"List all groups?\" -> GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/groups\n- \"List all users?\" -> GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/users\n- \"List all keys?\" -> GET /accounts/{account_id}/access/keys\n- \"Create a rotate?\" -> POST /accounts/{account_id}/access/keys/rotate\n- \"List all access_requests?\" -> GET /accounts/{account_id}/access/logs/access_requests\n- \"List all updates?\" -> GET /accounts/{account_id}/access/logs/scim/updates\n- \"List all organizations?\" -> GET /accounts/{account_id}/access/organizations\n- \"Create a organization?\" -> POST /accounts/{account_id}/access/organizations\n- \"List all doh?\" -> GET /accounts/{account_id}/access/organizations/doh\n- \"Create a revoke_user?\" -> POST /accounts/{account_id}/access/organizations/revoke_user\n- \"Create a policy-test?\" -> POST /accounts/{account_id}/access/policy-tests\n- \"Get policy-test details?\" -> GET /accounts/{account_id}/access/policy-tests/{policy_test_id}\n- \"Search service_tokens?\" -> GET /accounts/{account_id}/access/service_tokens\n- \"Create a service_token?\" -> POST /accounts/{account_id}/access/service_tokens\n- \"Delete a service_token?\" -> DELETE /accounts/{account_id}/access/service_tokens/{service_token_id}\n- \"Get service_token details?\" -> GET /accounts/{account_id}/access/service_tokens/{service_token_id}\n- \"Update a service_token?\" -> PUT /accounts/{account_id}/access/service_tokens/{service_token_id}\n- \"Create a refresh?\" -> POST /accounts/{account_id}/access/service_tokens/{service_token_id}/refresh\n- \"List all tags?\" -> GET /accounts/{account_id}/access/tags\n- \"Create a tag?\" -> POST /accounts/{account_id}/access/tags\n- \"Delete a tag?\" -> DELETE /accounts/{account_id}/access/tags/{tag_name}\n- \"Get tag details?\" -> GET /accounts/{account_id}/access/tags/{tag_name}\n- \"Update a tag?\" -> PUT /accounts/{account_id}/access/tags/{tag_name}\n- \"Search users?\" -> GET /accounts/{account_id}/access/users\n- \"Create a user?\" -> POST /accounts/{account_id}/access/users\n- \"Delete a user?\" -> DELETE /accounts/{account_id}/access/users/{user_id}\n- \"Get user details?\" -> GET /accounts/{account_id}/access/users/{user_id}\n- \"Update a user?\" -> PUT /accounts/{account_id}/access/users/{user_id}\n- \"List all active_sessions?\" -> GET /accounts/{account_id}/access/users/{user_id}/active_sessions\n- \"Get active_session details?\" -> GET /accounts/{account_id}/access/users/{user_id}/active_sessions/{nonce}\n- \"List all failed_logins?\" -> GET /accounts/{account_id}/access/users/{user_id}/failed_logins\n- \"List all last_seen_identity?\" -> GET /accounts/{account_id}/access/users/{user_id}/last_seen_identity\n- \"Delete a mfa_authenticator?\" -> DELETE /accounts/{account_id}/access/users/{user_id}/mfa_authenticators/{authenticator_id}\n- \"List all address_maps?\" -> GET /accounts/{account_id}/addressing/address_maps\n- \"Create a address_map?\" -> POST /accounts/{account_id}/addressing/address_maps\n- \"Delete a address_map?\" -> DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}\n- \"Get address_map details?\" -> GET /accounts/{account_id}/addressing/address_maps/{address_map_id}\n- \"Partially update a address_map?\" -> PATCH /accounts/{account_id}/addressing/address_maps/{address_map_id}\n- \"Delete a ip?\" -> DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}\n- \"Update a ip?\" -> PUT /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}\n- \"Delete a zone?\" -> DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}\n- \"Update a zone?\" -> PUT /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}\n- \"List all leases?\" -> GET /accounts/{account_id}/addressing/leases\n- \"Create a loa_document?\" -> POST /accounts/{account_id}/addressing/loa_documents\n- \"List all download?\" -> GET /accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download\n- \"List all prefixes?\" -> GET /accounts/{account_id}/addressing/prefixes\n- \"Create a prefixe?\" -> POST /accounts/{account_id}/addressing/prefixes\n- \"Delete a prefixe?\" -> DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}\n- \"Get prefixe details?\" -> GET /accounts/{account_id}/addressing/prefixes/{prefix_id}\n- \"Partially update a prefixe?\" -> PATCH /accounts/{account_id}/addressing/prefixes/{prefix_id}\n- \"List all status?\" -> GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status\n- \"List all bindings?\" -> GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings\n- \"Create a binding?\" -> POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings\n- \"Delete a binding?\" -> DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}\n- \"Get binding details?\" -> GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}\n- \"List all delegations?\" -> GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations\n- \"Create a delegation?\" -> POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations\n- \"Delete a delegation?\" -> DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations/{delegation_id}\n- \"Create a validate?\" -> POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/validate\n- \"List all regions?\" -> GET /accounts/{account_id}/addressing/regional_hostnames/regions\n- \"List all services?\" -> GET /accounts/{account_id}/addressing/services\n- \"List all evaluation-types?\" -> GET /accounts/{account_id}/ai-gateway/evaluation-types\n- \"Search gateways?\" -> GET /accounts/{account_id}/ai-gateway/gateways\n- \"Create a gateway?\" -> POST /accounts/{account_id}/ai-gateway/gateways\n- \"Search datasets?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets\n- \"Create a dataset?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets\n- \"Delete a dataset?\" -> DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n- \"Get dataset details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n- \"Update a dataset?\" -> PUT /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n- \"Search evaluations?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations\n- \"Create a evaluation?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations\n- \"Delete a evaluation?\" -> DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}\n- \"Get evaluation details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}\n- \"Search logs?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs\n- \"Get log details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}\n- \"Partially update a log?\" -> PATCH /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}\n- \"List all request?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/request\n- \"List all response?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/response\n- \"List all provider_configs?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs\n- \"Create a provider_config?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs\n- \"Delete a provider_config?\" -> DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id}\n- \"Update a provider_config?\" -> PUT /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id}\n- \"List all routes?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes\n- \"Create a route?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes\n- \"Delete a route?\" -> DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n- \"Get route details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n- \"Partially update a route?\" -> PATCH /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n- \"List all deployments?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments\n- \"Create a deployment?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments\n- \"List all versions?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions\n- \"Create a version?\" -> POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions\n- \"Get version details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions/{version_id}\n- \"Get url details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/url/{provider}\n- \"Delete a gateway?\" -> DELETE /accounts/{account_id}/ai-gateway/gateways/{id}\n- \"Get gateway details?\" -> GET /accounts/{account_id}/ai-gateway/gateways/{id}\n- \"Update a gateway?\" -> PUT /accounts/{account_id}/ai-gateway/gateways/{id}\n- \"Search instances?\" -> GET /accounts/{account_id}/ai-search/instances\n- \"Create a instance?\" -> POST /accounts/{account_id}/ai-search/instances\n- \"Delete a instance?\" -> DELETE /accounts/{account_id}/ai-search/instances/{id}\n- \"Get instance details?\" -> GET /accounts/{account_id}/ai-search/instances/{id}\n- \"Update a instance?\" -> PUT /accounts/{account_id}/ai-search/instances/{id}\n- \"Create a completion?\" -> POST /accounts/{account_id}/ai-search/instances/{id}/chat/completions\n- \"List all jobs?\" -> GET /accounts/{account_id}/ai-search/instances/{id}/jobs\n- \"Create a job?\" -> POST /accounts/{account_id}/ai-search/instances/{id}/jobs\n- \"Get job details?\" -> GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}\n- \"Partially update a job?\" -> PATCH /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}\n- \"List all logs?\" -> GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}/logs\n- \"Create a search?\" -> POST /accounts/{account_id}/ai-search/instances/{id}/search\n- \"List all stats?\" -> GET /accounts/{account_id}/ai-search/instances/{id}/stats\n- \"List all tokens?\" -> GET /accounts/{account_id}/ai-search/tokens\n- \"Create a token?\" -> POST /accounts/{account_id}/ai-search/tokens\n- \"Delete a token?\" -> DELETE /accounts/{account_id}/ai-search/tokens/{id}\n- \"Get token details?\" -> GET /accounts/{account_id}/ai-search/tokens/{id}\n- \"Update a token?\" -> PUT /accounts/{account_id}/ai-search/tokens/{id}\n- \"List all search?\" -> GET /accounts/{account_id}/ai/authors/search\n- \"List all finetunes?\" -> GET /accounts/{account_id}/ai/finetunes\n- \"Create a finetune?\" -> POST /accounts/{account_id}/ai/finetunes\n- \"List all public?\" -> GET /accounts/{account_id}/ai/finetunes/public\n- \"Create a finetune-asset?\" -> POST /accounts/{account_id}/ai/finetunes/{finetune_id}/finetune-assets\n- \"List all schema?\" -> GET /accounts/{account_id}/ai/models/schema\n- \"Search search?\" -> GET /accounts/{account_id}/ai/models/search\n- \"Create a indictrans2-en-indic-1B?\" -> POST /accounts/{account_id}/ai/run/@cf/ai4bharat/indictrans2-en-indic-1B\n- \"Create a nonomni-indictrans2-en-indic-1b?\" -> POST /accounts/{account_id}/ai/run/@cf/ai4bharat/nonomni-indictrans2-en-indic-1b\n- \"Create a gemma-sea-lion-v4-27b-it?\" -> POST /accounts/{account_id}/ai/run/@cf/aisingapore/gemma-sea-lion-v4-27b-it\n- \"Create a bge-base-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/bge-base-en-v1.5\n- \"Create a bge-large-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/bge-large-en-v1.5\n- \"Create a bge-m3?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/bge-m3\n- \"Create a bge-reranker-base?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/bge-reranker-base\n- \"Create a bge-small-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/bge-small-en-v1.5\n- \"Create a nonomni-bge-base-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-base-en-v1.5\n- \"Create a nonomni-bge-large-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-large-en-v1.5\n- \"Create a nonomni-bge-m3?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-m3\n- \"Create a nonomni-bge-small-en-v1.5?\" -> POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-small-en-v1.5\n- \"Create a flux-1-schnell?\" -> POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-1-schnell\n- \"Create a flux-2-dev?\" -> POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-dev\n- \"Create a flux-2-klein-4b?\" -> POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-4b\n- \"Create a flux-2-klein-9b?\" -> POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-9b\n- \"Create a stable-diffusion-xl-lightning?\" -> POST /accounts/{account_id}/ai/run/@cf/bytedance/stable-diffusion-xl-lightning\n- \"List all aura?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura\n- \"List all aura-1?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1\n- \"Create a aura-1?\" -> POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-1\n- \"List all aura-1-internal?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1-internal\n- \"List all aura-2?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2\n- \"List all aura-2-en?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en\n- \"Create a aura-2-en?\" -> POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en\n- \"List all aura-2-es?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es\n- \"Create a aura-2-e?\" -> POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es\n- \"List all flux?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/flux\n- \"Create a flux?\" -> POST /accounts/{account_id}/ai/run/@cf/deepgram/flux\n- \"List all nova-3?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3\n- \"Create a nova-3?\" -> POST /accounts/{account_id}/ai/run/@cf/deepgram/nova-3\n- \"List all nova-3-internal?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-internal\n- \"List all nova-3-ws?\" -> GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-ws\n- \"Create a deepseek-math-7b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-math-7b-instruct\n- \"Create a deepseek-r1-distill-qwen-32b?\" -> POST /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\n- \"Create a sqlcoder-7b-2?\" -> POST /accounts/{account_id}/ai/run/@cf/defog/sqlcoder-7b-2\n- \"Create a bart-large-cnn?\" -> POST /accounts/{account_id}/ai/run/@cf/facebook/bart-large-cnn\n- \"Create a nonomni-bart-large-cnn?\" -> POST /accounts/{account_id}/ai/run/@cf/facebook/nonomni-bart-large-cnn\n- \"Create a nonomni-detr-resnet-50?\" -> POST /accounts/{account_id}/ai/run/@cf/facebook/nonomni-detr-resnet-50\n- \"Create a una-cybertron-7b-v2-bf16?\" -> POST /accounts/{account_id}/ai/run/@cf/fblgit/una-cybertron-7b-v2-bf16\n- \"Create a embeddinggemma-300m?\" -> POST /accounts/{account_id}/ai/run/@cf/google/embeddinggemma-300m\n- \"Create a gemma-2b-it-lora?\" -> POST /accounts/{account_id}/ai/run/@cf/google/gemma-2b-it-lora\n- \"Create a gemma-3-12b-it?\" -> POST /accounts/{account_id}/ai/run/@cf/google/gemma-3-12b-it\n- \"Create a gemma-7b-it-lora?\" -> POST /accounts/{account_id}/ai/run/@cf/google/gemma-7b-it-lora\n- \"Create a nonomni-embeddinggemma-300m?\" -> POST /accounts/{account_id}/ai/run/@cf/google/nonomni-embeddinggemma-300m\n- \"Create a distilbert-sst-2-int8?\" -> POST /accounts/{account_id}/ai/run/@cf/huggingface/distilbert-sst-2-int8\n- \"Create a nonomni-distilbert-sst-2-int8?\" -> POST /accounts/{account_id}/ai/run/@cf/huggingface/nonomni-distilbert-sst-2-int8\n- \"Create a granite-4.0-h-micro?\" -> POST /accounts/{account_id}/ai/run/@cf/ibm-granite/granite-4.0-h-micro\n- \"Create a lucid-origin?\" -> POST /accounts/{account_id}/ai/run/@cf/leonardo/lucid-origin\n- \"Create a phoenix-1.0?\" -> POST /accounts/{account_id}/ai/run/@cf/leonardo/phoenix-1.0\n- \"Create a dreamshaper-8-lcm?\" -> POST /accounts/{account_id}/ai/run/@cf/lykon/dreamshaper-8-lcm\n- \"Create a llama-2-7b-chat-hf-lora?\" -> POST /accounts/{account_id}/ai/run/@cf/meta-llama/llama-2-7b-chat-hf-lora\n- \"Create a llama-2-7b-chat-fp16?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-fp16\n- \"Create a llama-2-7b-chat-int8?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-int8\n- \"Create a llama-3-8b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct\n- \"Create a llama-3-8b-instruct-awq?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct-awq\n- \"Create a llama-3.1-70b-instruct-fp8-fast?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-70b-instruct-fp8-fast\n- \"Create a llama-3.1-8b-instruct-awq?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-awq\n- \"Create a llama-3.1-8b-instruct-fp8?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8\n- \"Create a llama-3.1-8b-instruct-fp8-fast?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8-fast\n- \"Create a llama-3.2-11b-vision-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-11b-vision-instruct\n- \"Create a llama-3.2-1b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-1b-instruct\n- \"Create a llama-3.2-3b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-3b-instruct\n- \"Create a llama-3.3-70b-instruct-fp8-fast?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.3-70b-instruct-fp8-fast\n- \"Create a llama-4-scout-17b-16e-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-4-scout-17b-16e-instruct\n- \"Create a llama-guard-3-8b?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/llama-guard-3-8b\n- \"Create a m2m100-1.2b?\" -> POST /accounts/{account_id}/ai/run/@cf/meta/m2m100-1.2b\n- \"Create a nonomni-resnet-50?\" -> POST /accounts/{account_id}/ai/run/@cf/microsoft/nonomni-resnet-50\n- \"Create a phi-2?\" -> POST /accounts/{account_id}/ai/run/@cf/microsoft/phi-2\n- \"Create a resnet-50?\" -> POST /accounts/{account_id}/ai/run/@cf/microsoft/resnet-50\n- \"Create a mistral-7b-instruct-v0.1?\" -> POST /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.1\n- \"Create a mistral-7b-instruct-v0.2-lora?\" -> POST /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.2-lora\n- \"Create a mistral-small-3.1-24b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/mistralai/mistral-small-3.1-24b-instruct\n- \"Create a kimi-k2.5?\" -> POST /accounts/{account_id}/ai/run/@cf/moonshotai/kimi-k2.5\n- \"Create a melott?\" -> POST /accounts/{account_id}/ai/run/@cf/myshell-ai/melotts\n- \"Create a nemotron-3-120b-a12b?\" -> POST /accounts/{account_id}/ai/run/@cf/nvidia/nemotron-3-120b-a12b\n- \"Create a gpt-oss-120b?\" -> POST /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-120b\n- \"Create a gpt-oss-20b?\" -> POST /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-20b\n- \"Create a whisper?\" -> POST /accounts/{account_id}/ai/run/@cf/openai/whisper\n- \"Create a whisper-large-v3-turbo?\" -> POST /accounts/{account_id}/ai/run/@cf/openai/whisper-large-v3-turbo\n- \"Create a whisper-tiny-en?\" -> POST /accounts/{account_id}/ai/run/@cf/openai/whisper-tiny-en\n- \"Create a openchat-3.5-0106?\" -> POST /accounts/{account_id}/ai/run/@cf/openchat/openchat-3.5-0106\n- \"Create a plamo-embedding-1b?\" -> POST /accounts/{account_id}/ai/run/@cf/pfnet/plamo-embedding-1b\n- \"List all smart-turn-v2?\" -> GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v2\n- \"List all smart-turn-v3?\" -> GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v3\n- \"Create a qwen1.5-0.5b-chat?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-0.5b-chat\n- \"Create a qwen1.5-1.8b-chat?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-1.8b-chat\n- \"Create a qwen1.5-14b-chat-awq?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-14b-chat-awq\n- \"Create a qwen1.5-7b-chat-awq?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-7b-chat-awq\n- \"Create a qwen2.5-coder-32b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen2.5-coder-32b-instruct\n- \"Create a qwen3-30b-a3b-fp8?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen3-30b-a3b-fp8\n- \"Create a qwen3-embedding-0.6b?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwen3-embedding-0.6b\n- \"Create a qwq-32b?\" -> POST /accounts/{account_id}/ai/run/@cf/qwen/qwq-32b\n- \"Create a stable-diffusion-v1-5-img2img?\" -> POST /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-img2img\n- \"Create a stable-diffusion-v1-5-inpainting?\" -> POST /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-inpainting\n- \"Create a stable-diffusion-xl-base-1.0?\" -> POST /accounts/{account_id}/ai/run/@cf/stabilityai/stable-diffusion-xl-base-1.0\n- \"List all test-pipe-http?\" -> GET /accounts/{account_id}/ai/run/@cf/sven/test-pipe-http\n- \"List all hello-world-cog?\" -> GET /accounts/{account_id}/ai/run/@cf/test/hello-world-cog\n- \"Create a discolm-german-7b-v1-awq?\" -> POST /accounts/{account_id}/ai/run/@cf/thebloke/discolm-german-7b-v1-awq\n- \"Create a falcon-7b-instruct?\" -> POST /accounts/{account_id}/ai/run/@cf/tiiuae/falcon-7b-instruct\n- \"Create a tinyllama-1.1b-chat-v1.0?\" -> POST /accounts/{account_id}/ai/run/@cf/tinyllama/tinyllama-1.1b-chat-v1.0\n- \"Create a glm-4.7-flash?\" -> POST /accounts/{account_id}/ai/run/@cf/zai-org/glm-4.7-flash\n- \"Create a gemma-7b-it?\" -> POST /accounts/{account_id}/ai/run/@hf/google/gemma-7b-it\n- \"Create a mistral-7b-instruct-v0.2?\" -> POST /accounts/{account_id}/ai/run/@hf/mistral/mistral-7b-instruct-v0.2\n- \"Create a starling-lm-7b-beta?\" -> POST /accounts/{account_id}/ai/run/@hf/nexusflow/starling-lm-7b-beta\n- \"Create a hermes-2-pro-mistral-7b?\" -> POST /accounts/{account_id}/ai/run/@hf/nousresearch/hermes-2-pro-mistral-7b\n- \"Create a deepseek-coder-6.7b-base-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-base-awq\n- \"Create a deepseek-coder-6.7b-instruct-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-instruct-awq\n- \"Create a llama-2-13b-chat-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/llama-2-13b-chat-awq\n- \"Create a mistral-7b-instruct-v0.1-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/mistral-7b-instruct-v0.1-awq\n- \"Create a neural-chat-7b-v3-1-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/neural-chat-7b-v3-1-awq\n- \"Create a openhermes-2.5-mistral-7b-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/openhermes-2.5-mistral-7b-awq\n- \"Create a zephyr-7b-beta-awq?\" -> POST /accounts/{account_id}/ai/run/@hf/thebloke/zephyr-7b-beta-awq\n- \"Create a tomarkdown?\" -> POST /accounts/{account_id}/ai/tomarkdown\n- \"List all supported?\" -> GET /accounts/{account_id}/ai/tomarkdown/supported\n- \"List all available_alerts?\" -> GET /accounts/{account_id}/alerting/v3/available_alerts\n- \"List all eligible?\" -> GET /accounts/{account_id}/alerting/v3/destinations/eligible\n- \"List all pagerduty?\" -> GET /accounts/{account_id}/alerting/v3/destinations/pagerduty\n- \"Create a connect?\" -> POST /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect\n- \"Get connect details?\" -> GET /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id}\n- \"List all webhooks?\" -> GET /accounts/{account_id}/alerting/v3/destinations/webhooks\n- \"Create a webhook?\" -> POST /accounts/{account_id}/alerting/v3/destinations/webhooks\n- \"Delete a webhook?\" -> DELETE /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n- \"Get webhook details?\" -> GET /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n- \"Update a webhook?\" -> PUT /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n- \"List all history?\" -> GET /accounts/{account_id}/alerting/v3/history\n- \"List all silences?\" -> GET /accounts/{account_id}/alerting/v3/silences\n- \"Create a silence?\" -> POST /accounts/{account_id}/alerting/v3/silences\n- \"Delete a silence?\" -> DELETE /accounts/{account_id}/alerting/v3/silences/{silence_id}\n- \"Get silence details?\" -> GET /accounts/{account_id}/alerting/v3/silences/{silence_id}\n- \"List all audit_logs?\" -> GET /accounts/{account_id}/audit_logs\n- \"Create a ai-search?\" -> POST /accounts/{account_id}/autorag/rags/{id}/ai-search\n- \"Search files?\" -> GET /accounts/{account_id}/autorag/rags/{id}/files\n- \"List all profile?\" -> GET /accounts/{account_id}/billing/profile\n- \"List all paygo?\" -> GET /accounts/{account_id}/billing/usage/paygo\n- \"List all day_report?\" -> GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/day_report\n- \"List all full_report?\" -> GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/full_report\n- \"List all asn?\" -> GET /accounts/{account_id}/botnet_feed/configs/asn\n- \"Delete a asn?\" -> DELETE /accounts/{account_id}/botnet_feed/configs/asn/{asn_id}\n- \"List all alerts?\" -> GET /accounts/{account_id}/brand-protection/alerts\n- \"List all brands?\" -> GET /accounts/{account_id}/brand-protection/brands\n- \"Create a brand?\" -> POST /accounts/{account_id}/brand-protection/brands\n- \"List all patterns?\" -> GET /accounts/{account_id}/brand-protection/brands/patterns\n- \"Create a pattern?\" -> POST /accounts/{account_id}/brand-protection/brands/patterns\n- \"List all domain-info?\" -> GET /accounts/{account_id}/brand-protection/domain-info\n- \"List all logo-matches?\" -> GET /accounts/{account_id}/brand-protection/logo-matches\n- \"List all logos?\" -> GET /accounts/{account_id}/brand-protection/logos\n- \"Create a logo?\" -> POST /accounts/{account_id}/brand-protection/logos\n- \"Delete a logo?\" -> DELETE /accounts/{account_id}/brand-protection/logos/{logo_id}\n- \"Get logo details?\" -> GET /accounts/{account_id}/brand-protection/logos/{logo_id}\n- \"List all matches?\" -> GET /accounts/{account_id}/brand-protection/matches\n- \"List all queries?\" -> GET /accounts/{account_id}/brand-protection/queries\n- \"Create a query?\" -> POST /accounts/{account_id}/brand-protection/queries\n- \"Create a bulk?\" -> POST /accounts/{account_id}/brand-protection/queries/bulk\n- \"List all recent-submissions?\" -> GET /accounts/{account_id}/brand-protection/recent-submissions\n- \"Create a scan-logo?\" -> POST /accounts/{account_id}/brand-protection/scan-logo\n- \"Create a scan-page?\" -> POST /accounts/{account_id}/brand-protection/scan-page\n- \"List all submission-info?\" -> GET /accounts/{account_id}/brand-protection/submission-info\n- \"Create a submit?\" -> POST /accounts/{account_id}/brand-protection/submit\n- \"List all total-queries?\" -> GET /accounts/{account_id}/brand-protection/total-queries\n- \"List all tracked-domains?\" -> GET /accounts/{account_id}/brand-protection/tracked-domains\n- \"List all url-info?\" -> GET /accounts/{account_id}/brand-protection/url-info\n- \"Create a content?\" -> POST /accounts/{account_id}/browser-rendering/content\n- \"Create a crawl?\" -> POST /accounts/{account_id}/browser-rendering/crawl\n- \"Delete a crawl?\" -> DELETE /accounts/{account_id}/browser-rendering/crawl/{job_id}\n- \"Get crawl details?\" -> GET /accounts/{account_id}/browser-rendering/crawl/{job_id}\n- \"Create a json?\" -> POST /accounts/{account_id}/browser-rendering/json\n- \"Create a link?\" -> POST /accounts/{account_id}/browser-rendering/links\n- \"Create a markdown?\" -> POST /accounts/{account_id}/browser-rendering/markdown\n- \"Create a pdf?\" -> POST /accounts/{account_id}/browser-rendering/pdf\n- \"Create a scrape?\" -> POST /accounts/{account_id}/browser-rendering/scrape\n- \"Create a screenshot?\" -> POST /accounts/{account_id}/browser-rendering/screenshot\n- \"Create a snapshot?\" -> POST /accounts/{account_id}/browser-rendering/snapshot\n- \"List all limits?\" -> GET /accounts/{account_id}/builds/account/limits\n- \"List all builds?\" -> GET /accounts/{account_id}/builds/builds\n- \"List all latest?\" -> GET /accounts/{account_id}/builds/builds/latest\n- \"Get build details?\" -> GET /accounts/{account_id}/builds/builds/{build_uuid}\n- \"Delete a connection?\" -> DELETE /accounts/{account_id}/builds/repos/connections/{repo_connection_uuid}\n- \"List all config_autofill?\" -> GET /accounts/{account_id}/builds/repos/{provider_type}/{provider_account_id}/{repo_id}/config_autofill\n- \"Create a trigger?\" -> POST /accounts/{account_id}/builds/triggers\n- \"Delete a trigger?\" -> DELETE /accounts/{account_id}/builds/triggers/{trigger_uuid}\n- \"Partially update a trigger?\" -> PATCH /accounts/{account_id}/builds/triggers/{trigger_uuid}\n- \"Create a build?\" -> POST /accounts/{account_id}/builds/triggers/{trigger_uuid}/builds\n- \"List all environment_variables?\" -> GET /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables\n- \"Delete a environment_variable?\" -> DELETE /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables/{environment_variable_key}\n- \"Create a purge_build_cache?\" -> POST /accounts/{account_id}/builds/triggers/{trigger_uuid}/purge_build_cache\n- \"List all triggers?\" -> GET /accounts/{account_id}/builds/workers/{external_script_id}/triggers\n- \"List all apps?\" -> GET /accounts/{account_id}/calls/apps\n- \"List all turn_keys?\" -> GET /accounts/{account_id}/calls/turn_keys\n- \"Create a turn_key?\" -> POST /accounts/{account_id}/calls/turn_keys\n- \"Delete a turn_key?\" -> DELETE /accounts/{account_id}/calls/turn_keys/{key_id}\n- \"Get turn_key details?\" -> GET /accounts/{account_id}/calls/turn_keys/{key_id}\n- \"Update a turn_key?\" -> PUT /accounts/{account_id}/calls/turn_keys/{key_id}\n- \"List all cfd_tunnel?\" -> GET /accounts/{account_id}/cfd_tunnel\n- \"Create a cfd_tunnel?\" -> POST /accounts/{account_id}/cfd_tunnel\n- \"Delete a cfd_tunnel?\" -> DELETE /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n- \"Get cfd_tunnel details?\" -> GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n- \"Partially update a cfd_tunnel?\" -> PATCH /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n- \"List all configurations?\" -> GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations\n- \"List all connections?\" -> GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections\n- \"Get connector details?\" -> GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id}\n- \"Create a management?\" -> POST /accounts/{account_id}/cfd_tunnel/{tunnel_id}/management\n- \"List all token?\" -> GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token\n- \"List all widgets?\" -> GET /accounts/{account_id}/challenges/widgets\n- \"Create a widget?\" -> POST /accounts/{account_id}/challenges/widgets\n- \"Delete a widget?\" -> DELETE /accounts/{account_id}/challenges/widgets/{sitekey}\n- \"Get widget details?\" -> GET /accounts/{account_id}/challenges/widgets/{sitekey}\n- \"Update a widget?\" -> PUT /accounts/{account_id}/challenges/widgets/{sitekey}\n- \"Create a rotate_secret?\" -> POST /accounts/{account_id}/challenges/widgets/{sitekey}/rotate_secret\n- \"Create a binary?\" -> POST /accounts/{account_id}/cloudforce-one/binary\n- \"Get binary details?\" -> GET /accounts/{account_id}/cloudforce-one/binary/{hash}\n- \"Search events?\" -> GET /accounts/{account_id}/cloudforce-one/events\n- \"List all aggregate?\" -> GET /accounts/{account_id}/cloudforce-one/events/aggregate\n- \"List all attackers?\" -> GET /accounts/{account_id}/cloudforce-one/events/attackers\n- \"List all catalog?\" -> GET /accounts/{account_id}/cloudforce-one/events/categories/catalog\n- \"Create a create?\" -> POST /accounts/{account_id}/cloudforce-one/events/categories/create\n- \"Delete a category?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n- \"Partially update a category?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n- \"List all countries?\" -> GET /accounts/{account_id}/cloudforce-one/events/countries\n- \"Create a relationship?\" -> POST /accounts/{account_id}/cloudforce-one/events/create/bulk/relationships\n- \"List all dataset?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset\n- \"List all members?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members\n- \"Create a member?\" -> POST /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members\n- \"Delete a member?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members/{member_id}\n- \"Partially update a dataset?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}\n- \"Create a copy?\" -> POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/copy\n- \"Get event details?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id}\n- \"List all indicators?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators\n- \"Delete a indicator?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n- \"Get indicator details?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n- \"Partially update a indicator?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n- \"List all permissions?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions\n- \"Create a permission?\" -> POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions\n- \"Delete a permission?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id}\n- \"Update a permission?\" -> PUT /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id}\n- \"List all targetIndustries?\" -> GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/targetIndustries\n- \"Create a populate?\" -> POST /accounts/{account_id}/cloudforce-one/events/datasets/populate\n- \"Delete a event_tag?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}\n- \"Create a graphql?\" -> POST /accounts/{account_id}/cloudforce-one/events/graphql\n- \"List all indicator-types?\" -> GET /accounts/{account_id}/cloudforce-one/events/indicator-types\n- \"List all indicatorTypes?\" -> GET /accounts/{account_id}/cloudforce-one/events/indicatorTypes\n- \"Search indicators?\" -> GET /accounts/{account_id}/cloudforce-one/events/indicators\n- \"Delete a alert?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n- \"Get alert details?\" -> GET /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n- \"Partially update a alert?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n- \"Delete a query?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n- \"Get query details?\" -> GET /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n- \"Partially update a query?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n- \"Get raw details?\" -> GET /accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id}\n- \"Delete a relate?\" -> DELETE /accounts/{account_id}/cloudforce-one/events/relate/{event_id}\n- \"Search tags?\" -> GET /accounts/{account_id}/cloudforce-one/events/tags\n- \"Search categories?\" -> GET /accounts/{account_id}/cloudforce-one/events/tags/categories\n- \"Partially update a tag?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/tags/{tag_uuid}\n- \"Create a revert-do?\" -> POST /accounts/{account_id}/cloudforce-one/events/{dataset_id}/revert-do\n- \"Partially update a event?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/{event_id}\n- \"Partially update a raw?\" -> PATCH /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}\n- \"List all relationships?\" -> GET /accounts/{account_id}/cloudforce-one/events/{event_id}/relationships\n- \"Create a request?\" -> POST /accounts/{account_id}/cloudforce-one/requests\n- \"List all constants?\" -> GET /accounts/{account_id}/cloudforce-one/requests/constants\n- \"Create a new?\" -> POST /accounts/{account_id}/cloudforce-one/requests/new\n- \"Create a priority?\" -> POST /accounts/{account_id}/cloudforce-one/requests/priority\n- \"List all quota?\" -> GET /accounts/{account_id}/cloudforce-one/requests/priority/quota\n- \"Delete a priority?\" -> DELETE /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n- \"Get priority details?\" -> GET /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n- \"Update a priority?\" -> PUT /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n- \"List all types?\" -> GET /accounts/{account_id}/cloudforce-one/requests/types\n- \"Delete a request?\" -> DELETE /accounts/{account_id}/cloudforce-one/requests/{request_id}\n- \"Get request details?\" -> GET /accounts/{account_id}/cloudforce-one/requests/{request_id}\n- \"Update a request?\" -> PUT /accounts/{account_id}/cloudforce-one/requests/{request_id}\n- \"Create a message?\" -> POST /accounts/{account_id}/cloudforce-one/requests/{request_id}/message\n- \"Delete a message?\" -> DELETE /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id}\n- \"Update a message?\" -> PUT /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id}\n- \"Search rules?\" -> GET /accounts/{account_id}/cloudforce-one/rules\n- \"Create a rule?\" -> POST /accounts/{account_id}/cloudforce-one/rules\n- \"List all tree?\" -> GET /accounts/{account_id}/cloudforce-one/rules/tree\n- \"Delete a rule?\" -> DELETE /accounts/{account_id}/cloudforce-one/rules/{id}\n- \"Get rule details?\" -> GET /accounts/{account_id}/cloudforce-one/rules/{id}\n- \"Update a rule?\" -> PUT /accounts/{account_id}/cloudforce-one/rules/{id}\n- \"List all config?\" -> GET /accounts/{account_id}/cloudforce-one/scans/config\n- \"Create a config?\" -> POST /accounts/{account_id}/cloudforce-one/scans/config\n- \"Delete a config?\" -> DELETE /accounts/{account_id}/cloudforce-one/scans/config/{config_id}\n- \"Partially update a config?\" -> PATCH /accounts/{account_id}/cloudforce-one/scans/config/{config_id}\n- \"Get result details?\" -> GET /accounts/{account_id}/cloudforce-one/scans/results/{config_id}\n- \"List all cnis?\" -> GET /accounts/{account_id}/cni/cnis\n- \"Create a cnis?\" -> POST /accounts/{account_id}/cni/cnis\n- \"Delete a cnis?\" -> DELETE /accounts/{account_id}/cni/cnis/{cni}\n- \"Get cnis details?\" -> GET /accounts/{account_id}/cni/cnis/{cni}\n- \"Update a cnis?\" -> PUT /accounts/{account_id}/cni/cnis/{cni}\n- \"List all interconnects?\" -> GET /accounts/{account_id}/cni/interconnects\n- \"Create a interconnect?\" -> POST /accounts/{account_id}/cni/interconnects\n- \"Delete a interconnect?\" -> DELETE /accounts/{account_id}/cni/interconnects/{icon}\n- \"Get interconnect details?\" -> GET /accounts/{account_id}/cni/interconnects/{icon}\n- \"List all loa?\" -> GET /accounts/{account_id}/cni/interconnects/{icon}/loa\n- \"List all slots?\" -> GET /accounts/{account_id}/cni/slots\n- \"Get slot details?\" -> GET /accounts/{account_id}/cni/slots/{slot}\n- \"Create a service?\" -> POST /accounts/{account_id}/connectivity/directory/services\n- \"Delete a service?\" -> DELETE /accounts/{account_id}/connectivity/directory/services/{service_id}\n- \"Get service details?\" -> GET /accounts/{account_id}/connectivity/directory/services/{service_id}\n- \"Update a service?\" -> PUT /accounts/{account_id}/connectivity/directory/services/{service_id}\n- \"List all containers?\" -> GET /accounts/{account_id}/containers\n- \"Create a credential?\" -> POST /accounts/{account_id}/containers/registries/{domain}/credentials\n- \"List all custom_ns?\" -> GET /accounts/{account_id}/custom_ns\n- \"Create a custom_n?\" -> POST /accounts/{account_id}/custom_ns\n- \"Delete a custom_n?\" -> DELETE /accounts/{account_id}/custom_ns/{custom_ns_id}\n- \"List all database?\" -> GET /accounts/{account_id}/d1/database\n- \"Create a database?\" -> POST /accounts/{account_id}/d1/database\n- \"Delete a database?\" -> DELETE /accounts/{account_id}/d1/database/{database_id}\n- \"Get database details?\" -> GET /accounts/{account_id}/d1/database/{database_id}\n- \"Partially update a database?\" -> PATCH /accounts/{account_id}/d1/database/{database_id}\n- \"Update a database?\" -> PUT /accounts/{account_id}/d1/database/{database_id}\n- \"Create a export?\" -> POST /accounts/{account_id}/d1/database/{database_id}/export\n- \"Create a import?\" -> POST /accounts/{account_id}/d1/database/{database_id}/import\n- \"Create a raw?\" -> POST /accounts/{account_id}/d1/database/{database_id}/raw\n- \"List all bookmark?\" -> GET /accounts/{account_id}/d1/database/{database_id}/time_travel/bookmark\n- \"Create a restore?\" -> POST /accounts/{account_id}/d1/database/{database_id}/time_travel/restore\n- \"List all devices?\" -> GET /accounts/{account_id}/devices\n- \"List all ip-profiles?\" -> GET /accounts/{account_id}/devices/ip-profiles\n- \"Create a ip-profile?\" -> POST /accounts/{account_id}/devices/ip-profiles\n- \"Delete a ip-profile?\" -> DELETE /accounts/{account_id}/devices/ip-profiles/{profile_id}\n- \"Get ip-profile details?\" -> GET /accounts/{account_id}/devices/ip-profiles/{profile_id}\n- \"Partially update a ip-profile?\" -> PATCH /accounts/{account_id}/devices/ip-profiles/{profile_id}\n- \"List all networks?\" -> GET /accounts/{account_id}/devices/networks\n- \"Create a network?\" -> POST /accounts/{account_id}/devices/networks\n- \"Delete a network?\" -> DELETE /accounts/{account_id}/devices/networks/{network_id}\n- \"Get network details?\" -> GET /accounts/{account_id}/devices/networks/{network_id}\n- \"Update a network?\" -> PUT /accounts/{account_id}/devices/networks/{network_id}\n- \"Search physical-devices?\" -> GET /accounts/{account_id}/devices/physical-devices\n- \"Delete a physical-device?\" -> DELETE /accounts/{account_id}/devices/physical-devices/{device_id}\n- \"Get physical-device details?\" -> GET /accounts/{account_id}/devices/physical-devices/{device_id}\n- \"Create a revoke?\" -> POST /accounts/{account_id}/devices/physical-devices/{device_id}/revoke\n- \"List all policy?\" -> GET /accounts/{account_id}/devices/policy\n- \"List all exclude?\" -> GET /accounts/{account_id}/devices/policy/exclude\n- \"List all fallback_domains?\" -> GET /accounts/{account_id}/devices/policy/fallback_domains\n- \"List all include?\" -> GET /accounts/{account_id}/devices/policy/include\n- \"Partially update a policy?\" -> PATCH /accounts/{account_id}/devices/policy/{policy_id}\n- \"List all posture?\" -> GET /accounts/{account_id}/devices/posture\n- \"Create a posture?\" -> POST /accounts/{account_id}/devices/posture\n- \"List all integration?\" -> GET /accounts/{account_id}/devices/posture/integration\n- \"Create a integration?\" -> POST /accounts/{account_id}/devices/posture/integration\n- \"Delete a integration?\" -> DELETE /accounts/{account_id}/devices/posture/integration/{integration_id}\n- \"Get integration details?\" -> GET /accounts/{account_id}/devices/posture/integration/{integration_id}\n- \"Partially update a integration?\" -> PATCH /accounts/{account_id}/devices/posture/integration/{integration_id}\n- \"Delete a posture?\" -> DELETE /accounts/{account_id}/devices/posture/{rule_id}\n- \"Get posture details?\" -> GET /accounts/{account_id}/devices/posture/{rule_id}\n- \"Update a posture?\" -> PUT /accounts/{account_id}/devices/posture/{rule_id}\n- \"Search registrations?\" -> GET /accounts/{account_id}/devices/registrations\n- \"Create a unrevoke?\" -> POST /accounts/{account_id}/devices/registrations/unrevoke\n- \"Delete a registration?\" -> DELETE /accounts/{account_id}/devices/registrations/{registration_id}\n- \"Get registration details?\" -> GET /accounts/{account_id}/devices/registrations/{registration_id}\n- \"List all override_codes?\" -> GET /accounts/{account_id}/devices/registrations/{registration_id}/override_codes\n- \"List all disconnect?\" -> GET /accounts/{account_id}/devices/resilience/disconnect\n- \"Create a disconnect?\" -> POST /accounts/{account_id}/devices/resilience/disconnect\n- \"Get device details?\" -> GET /accounts/{account_id}/devices/{device_id}\n- \"List all colos?\" -> GET /accounts/{account_id}/dex/colos\n- \"List all commands?\" -> GET /accounts/{account_id}/dex/commands\n- \"Create a command?\" -> POST /accounts/{account_id}/dex/commands\n- \"Search devices?\" -> GET /accounts/{account_id}/dex/commands/devices\n- \"Get download details?\" -> GET /accounts/{account_id}/dex/commands/{command_id}/downloads/{filename}\n- \"List all dex_tests?\" -> GET /accounts/{account_id}/dex/devices/dex_tests\n- \"Create a dex_test?\" -> POST /accounts/{account_id}/dex/devices/dex_tests\n- \"Delete a dex_test?\" -> DELETE /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n- \"Get dex_test details?\" -> GET /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n- \"Update a dex_test?\" -> PUT /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n- \"List all live?\" -> GET /accounts/{account_id}/dex/devices/{device_id}/fleet-status/live\n- \"List all over-time?\" -> GET /accounts/{account_id}/dex/fleet-status/over-time\n- \"Get http-test details?\" -> GET /accounts/{account_id}/dex/http-tests/{test_id}\n- \"List all percentiles?\" -> GET /accounts/{account_id}/dex/http-tests/{test_id}/percentiles\n- \"List all rules?\" -> GET /accounts/{account_id}/dex/rules\n- \"Partially update a rule?\" -> PATCH /accounts/{account_id}/dex/rules/{rule_id}\n- \"List all overview?\" -> GET /accounts/{account_id}/dex/tests/overview\n- \"List all unique-devices?\" -> GET /accounts/{account_id}/dex/tests/unique-devices\n- \"List all network-path?\" -> GET /accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path\n- \"Get traceroute-test details?\" -> GET /accounts/{account_id}/dex/traceroute-tests/{test_id}\n- \"List all warp-change-events?\" -> GET /accounts/{account_id}/dex/warp-change-events\n- \"List all endpoint-healthchecks?\" -> GET /accounts/{account_id}/diagnostics/endpoint-healthchecks\n- \"Create a endpoint-healthcheck?\" -> POST /accounts/{account_id}/diagnostics/endpoint-healthchecks\n- \"Delete a endpoint-healthcheck?\" -> DELETE /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n- \"Get endpoint-healthcheck details?\" -> GET /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n- \"Update a endpoint-healthcheck?\" -> PUT /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n- \"Create a traceroute?\" -> POST /accounts/{account_id}/diagnostics/traceroute\n- \"List all datasets?\" -> GET /accounts/{account_id}/dlp/datasets\n- \"Create a upload?\" -> POST /accounts/{account_id}/dlp/datasets/{dataset_id}/upload\n- \"List all document_fingerprints?\" -> GET /accounts/{account_id}/dlp/document_fingerprints\n- \"Create a document_fingerprint?\" -> POST /accounts/{account_id}/dlp/document_fingerprints\n- \"Delete a document_fingerprint?\" -> DELETE /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n- \"Get document_fingerprint details?\" -> GET /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n- \"Update a document_fingerprint?\" -> PUT /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n- \"List all account_mapping?\" -> GET /accounts/{account_id}/dlp/email/account_mapping\n- \"Create a account_mapping?\" -> POST /accounts/{account_id}/dlp/email/account_mapping\n- \"List all entries?\" -> GET /accounts/{account_id}/dlp/entries\n- \"Create a entry?\" -> POST /accounts/{account_id}/dlp/entries\n- \"Update a custom?\" -> PUT /accounts/{account_id}/dlp/entries/custom/{entry_id}\n- \"Update a integration?\" -> PUT /accounts/{account_id}/dlp/entries/integration/{entry_id}\n- \"Create a predefined?\" -> POST /accounts/{account_id}/dlp/entries/predefined\n- \"Delete a predefined?\" -> DELETE /accounts/{account_id}/dlp/entries/predefined/{entry_id}\n- \"Update a predefined?\" -> PUT /accounts/{account_id}/dlp/entries/predefined/{entry_id}\n- \"Delete a entry?\" -> DELETE /accounts/{account_id}/dlp/entries/{entry_id}\n- \"Get entry details?\" -> GET /accounts/{account_id}/dlp/entries/{entry_id}\n- \"Update a entry?\" -> PUT /accounts/{account_id}/dlp/entries/{entry_id}\n- \"List all payload_log?\" -> GET /accounts/{account_id}/dlp/payload_log\n- \"List all profiles?\" -> GET /accounts/{account_id}/dlp/profiles\n- \"List all custom?\" -> GET /accounts/{account_id}/dlp/profiles/custom\n- \"Create a custom?\" -> POST /accounts/{account_id}/dlp/profiles/custom\n- \"Delete a custom?\" -> DELETE /accounts/{account_id}/dlp/profiles/custom/{profile_id}\n- \"Get custom details?\" -> GET /accounts/{account_id}/dlp/profiles/custom/{profile_id}\n- \"Get predefined details?\" -> GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}\n- \"Get profile details?\" -> GET /accounts/{account_id}/dlp/profiles/{profile_id}\n- \"List all dns_firewall?\" -> GET /accounts/{account_id}/dns_firewall\n- \"Create a dns_firewall?\" -> POST /accounts/{account_id}/dns_firewall\n- \"Delete a dns_firewall?\" -> DELETE /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n- \"Get dns_firewall details?\" -> GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n- \"Partially update a dns_firewall?\" -> PATCH /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n- \"List all report?\" -> GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report\n- \"List all bytime?\" -> GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report/bytime\n- \"List all reverse_dns?\" -> GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns\n- \"List all usage?\" -> GET /accounts/{account_id}/dns_records/usage\n- \"List all dns_settings?\" -> GET /accounts/{account_id}/dns_settings\n- \"List all views?\" -> GET /accounts/{account_id}/dns_settings/views\n- \"Create a view?\" -> POST /accounts/{account_id}/dns_settings/views\n- \"Delete a view?\" -> DELETE /accounts/{account_id}/dns_settings/views/{view_id}\n- \"Get view details?\" -> GET /accounts/{account_id}/dns_settings/views/{view_id}\n- \"Partially update a view?\" -> PATCH /accounts/{account_id}/dns_settings/views/{view_id}\n- \"Search investigate?\" -> GET /accounts/{account_id}/email-security/investigate\n- \"Create a preview?\" -> POST /accounts/{account_id}/email-security/investigate/preview\n- \"Create a release?\" -> POST /accounts/{account_id}/email-security/investigate/release\n- \"Get investigate details?\" -> GET /accounts/{account_id}/email-security/investigate/{postfix_id}\n- \"List all detections?\" -> GET /accounts/{account_id}/email-security/investigate/{postfix_id}/detections\n- \"List all preview?\" -> GET /accounts/{account_id}/email-security/investigate/{postfix_id}/preview\n- \"List all raw?\" -> GET /accounts/{account_id}/email-security/investigate/{postfix_id}/raw\n- \"Create a reclassify?\" -> POST /accounts/{account_id}/email-security/investigate/{postfix_id}/reclassify\n- \"List all trace?\" -> GET /accounts/{account_id}/email-security/investigate/{postfix_id}/trace\n- \"List all reports?\" -> GET /accounts/{account_id}/email-security/phishguard/reports\n- \"Search allow_policies?\" -> GET /accounts/{account_id}/email-security/settings/allow_policies\n- \"Create a allow_policy?\" -> POST /accounts/{account_id}/email-security/settings/allow_policies\n- \"Create a batch?\" -> POST /accounts/{account_id}/email-security/settings/allow_policies/batch\n- \"Delete a allow_policy?\" -> DELETE /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n- \"Get allow_policy details?\" -> GET /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n- \"Partially update a allow_policy?\" -> PATCH /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n- \"Search block_senders?\" -> GET /accounts/{account_id}/email-security/settings/block_senders\n- \"Create a block_sender?\" -> POST /accounts/{account_id}/email-security/settings/block_senders\n- \"Delete a block_sender?\" -> DELETE /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n- \"Get block_sender details?\" -> GET /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n- \"Partially update a block_sender?\" -> PATCH /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n- \"Search domains?\" -> GET /accounts/{account_id}/email-security/settings/domains\n- \"Delete a domain?\" -> DELETE /accounts/{account_id}/email-security/settings/domains/{domain_id}\n- \"Get domain details?\" -> GET /accounts/{account_id}/email-security/settings/domains/{domain_id}\n- \"Partially update a domain?\" -> PATCH /accounts/{account_id}/email-security/settings/domains/{domain_id}\n- \"Search impersonation_registry?\" -> GET /accounts/{account_id}/email-security/settings/impersonation_registry\n- \"Create a impersonation_registry?\" -> POST /accounts/{account_id}/email-security/settings/impersonation_registry\n- \"Delete a impersonation_registry?\" -> DELETE /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n- \"Get impersonation_registry details?\" -> GET /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n- \"Partially update a impersonation_registry?\" -> PATCH /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n- \"Search trusted_domains?\" -> GET /accounts/{account_id}/email-security/settings/trusted_domains\n- \"Create a trusted_domain?\" -> POST /accounts/{account_id}/email-security/settings/trusted_domains\n- \"Delete a trusted_domain?\" -> DELETE /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n- \"Get trusted_domain details?\" -> GET /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n- \"Partially update a trusted_domain?\" -> PATCH /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n- \"Search submissions?\" -> GET /accounts/{account_id}/email-security/submissions\n- \"List all addresses?\" -> GET /accounts/{account_id}/email/routing/addresses\n- \"Create a addresse?\" -> POST /accounts/{account_id}/email/routing/addresses\n- \"Delete a addresse?\" -> DELETE /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}\n- \"Get addresse details?\" -> GET /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}\n- \"Create a send?\" -> POST /accounts/{account_id}/email/sending/send\n- \"Create a send_raw?\" -> POST /accounts/{account_id}/email/sending/send_raw\n- \"List all configuration?\" -> GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration\n- \"Delete a queue?\" -> DELETE /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n- \"Get queue details?\" -> GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n- \"Update a queue?\" -> PUT /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n- \"List all subscriptions?\" -> GET /accounts/{account_id}/event_subscriptions/subscriptions\n- \"Create a subscription?\" -> POST /accounts/{account_id}/event_subscriptions/subscriptions\n- \"Delete a subscription?\" -> DELETE /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n- \"Get subscription details?\" -> GET /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n- \"Partially update a subscription?\" -> PATCH /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n- \"List all gateway?\" -> GET /accounts/{account_id}/gateway\n- \"List all app_types?\" -> GET /accounts/{account_id}/gateway/app_types\n- \"List all review_status?\" -> GET /accounts/{account_id}/gateway/apps/review_status\n- \"List all audit_ssh_settings?\" -> GET /accounts/{account_id}/gateway/audit_ssh_settings\n- \"Create a rotate_seed?\" -> POST /accounts/{account_id}/gateway/audit_ssh_settings/rotate_seed\n- \"Create a activate?\" -> POST /accounts/{account_id}/gateway/certificates/{certificate_id}/activate\n- \"Create a deactivate?\" -> POST /accounts/{account_id}/gateway/certificates/{certificate_id}/deactivate\n- \"List all custom_certificate?\" -> GET /accounts/{account_id}/gateway/configuration/custom_certificate\n- \"List all lists?\" -> GET /accounts/{account_id}/gateway/lists\n- \"Create a list?\" -> POST /accounts/{account_id}/gateway/lists\n- \"Delete a list?\" -> DELETE /accounts/{account_id}/gateway/lists/{list_id}\n- \"Get list details?\" -> GET /accounts/{account_id}/gateway/lists/{list_id}\n- \"Partially update a list?\" -> PATCH /accounts/{account_id}/gateway/lists/{list_id}\n- \"Update a list?\" -> PUT /accounts/{account_id}/gateway/lists/{list_id}\n- \"List all items?\" -> GET /accounts/{account_id}/gateway/lists/{list_id}/items\n- \"List all locations?\" -> GET /accounts/{account_id}/gateway/locations\n- \"Create a location?\" -> POST /accounts/{account_id}/gateway/locations\n- \"Delete a location?\" -> DELETE /accounts/{account_id}/gateway/locations/{location_id}\n- \"Get location details?\" -> GET /accounts/{account_id}/gateway/locations/{location_id}\n- \"Update a location?\" -> PUT /accounts/{account_id}/gateway/locations/{location_id}\n- \"List all logging?\" -> GET /accounts/{account_id}/gateway/logging\n- \"List all pacfiles?\" -> GET /accounts/{account_id}/gateway/pacfiles\n- \"Create a pacfile?\" -> POST /accounts/{account_id}/gateway/pacfiles\n- \"Delete a pacfile?\" -> DELETE /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n- \"Get pacfile details?\" -> GET /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n- \"Update a pacfile?\" -> PUT /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n- \"List all proxy_endpoints?\" -> GET /accounts/{account_id}/gateway/proxy_endpoints\n- \"Create a proxy_endpoint?\" -> POST /accounts/{account_id}/gateway/proxy_endpoints\n- \"Delete a proxy_endpoint?\" -> DELETE /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n- \"Get proxy_endpoint details?\" -> GET /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n- \"Partially update a proxy_endpoint?\" -> PATCH /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n- \"List all tenant?\" -> GET /accounts/{account_id}/gateway/rules/tenant\n- \"Create a reset_expiration?\" -> POST /accounts/{account_id}/gateway/rules/{rule_id}/reset_expiration\n- \"List all configs?\" -> GET /accounts/{account_id}/hyperdrive/configs\n- \"Get config details?\" -> GET /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n- \"Update a config?\" -> PUT /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n- \"List all permission_groups?\" -> GET /accounts/{account_id}/iam/permission_groups\n- \"Get permission_group details?\" -> GET /accounts/{account_id}/iam/permission_groups/{permission_group_id}\n- \"List all resource_groups?\" -> GET /accounts/{account_id}/iam/resource_groups\n- \"Create a resource_group?\" -> POST /accounts/{account_id}/iam/resource_groups\n- \"Delete a resource_group?\" -> DELETE /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n- \"Get resource_group details?\" -> GET /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n- \"Update a resource_group?\" -> PUT /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n- \"List all user_groups?\" -> GET /accounts/{account_id}/iam/user_groups\n- \"Create a user_group?\" -> POST /accounts/{account_id}/iam/user_groups\n- \"Delete a user_group?\" -> DELETE /accounts/{account_id}/iam/user_groups/{user_group_id}\n- \"Get user_group details?\" -> GET /accounts/{account_id}/iam/user_groups/{user_group_id}\n- \"Update a user_group?\" -> PUT /accounts/{account_id}/iam/user_groups/{user_group_id}\n- \"List all images?\" -> GET /accounts/{account_id}/images/v1\n- \"Create a image?\" -> POST /accounts/{account_id}/images/v1\n- \"Delete a key?\" -> DELETE /accounts/{account_id}/images/v1/keys/{signing_key_name}\n- \"Update a key?\" -> PUT /accounts/{account_id}/images/v1/keys/{signing_key_name}\n- \"List all variants?\" -> GET /accounts/{account_id}/images/v1/variants\n- \"Create a variant?\" -> POST /accounts/{account_id}/images/v1/variants\n- \"Delete a variant?\" -> DELETE /accounts/{account_id}/images/v1/variants/{variant_id}\n- \"Get variant details?\" -> GET /accounts/{account_id}/images/v1/variants/{variant_id}\n- \"Partially update a variant?\" -> PATCH /accounts/{account_id}/images/v1/variants/{variant_id}\n- \"List all flat?\" -> GET /accounts/{account_id}/images/v1/variants/{variant_id}/flat\n- \"Delete a image?\" -> DELETE /accounts/{account_id}/images/v1/{image_id}\n- \"Get image details?\" -> GET /accounts/{account_id}/images/v1/{image_id}\n- \"Partially update a image?\" -> PATCH /accounts/{account_id}/images/v1/{image_id}\n- \"List all blob?\" -> GET /accounts/{account_id}/images/v1/{image_id}/blob\n- \"Create a direct_upload?\" -> POST /accounts/{account_id}/images/v2/direct_upload\n- \"List all targets?\" -> GET /accounts/{account_id}/infrastructure/targets\n- \"Create a target?\" -> POST /accounts/{account_id}/infrastructure/targets\n- \"Create a batch_delete?\" -> POST /accounts/{account_id}/infrastructure/targets/batch_delete\n- \"Delete a target?\" -> DELETE /accounts/{account_id}/infrastructure/targets/{target_id}\n- \"Get target details?\" -> GET /accounts/{account_id}/infrastructure/targets/{target_id}\n- \"Update a target?\" -> PUT /accounts/{account_id}/infrastructure/targets/{target_id}\n- \"Get asn details?\" -> GET /accounts/{account_id}/intel/asn/{asn}\n- \"List all subnets?\" -> GET /accounts/{account_id}/intel/asn/{asn}/subnets\n- \"List all issue-types?\" -> GET /accounts/{account_id}/intel/attack-surface-report/issue-types\n- \"List all issues?\" -> GET /accounts/{account_id}/intel/attack-surface-report/issues\n- \"List all class?\" -> GET /accounts/{account_id}/intel/attack-surface-report/issues/class\n- \"List all severity?\" -> GET /accounts/{account_id}/intel/attack-surface-report/issues/severity\n- \"List all type?\" -> GET /accounts/{account_id}/intel/attack-surface-report/issues/type\n- \"List all dns?\" -> GET /accounts/{account_id}/intel/dns\n- \"List all domain?\" -> GET /accounts/{account_id}/intel/domain\n- \"List all domain-history?\" -> GET /accounts/{account_id}/intel/domain-history\n- \"List all bulk?\" -> GET /accounts/{account_id}/intel/domain/bulk\n- \"List all indicator-feeds?\" -> GET /accounts/{account_id}/intel/indicator-feeds\n- \"Create a indicator-feed?\" -> POST /accounts/{account_id}/intel/indicator-feeds\n- \"List all view?\" -> GET /accounts/{account_id}/intel/indicator-feeds/permissions/view\n- \"Get indicator-feed details?\" -> GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}\n- \"Update a indicator-feed?\" -> PUT /accounts/{account_id}/intel/indicator-feeds/{feed_id}\n- \"List all data?\" -> GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/data\n- \"List all ip?\" -> GET /accounts/{account_id}/intel/ip\n- \"List all ip-lists?\" -> GET /accounts/{account_id}/intel/ip-lists\n- \"Create a miscategorization?\" -> POST /accounts/{account_id}/intel/miscategorization\n- \"List all sinkholes?\" -> GET /accounts/{account_id}/intel/sinkholes\n- \"List all whois?\" -> GET /accounts/{account_id}/intel/whois\n- \"List all monitor_groups?\" -> GET /accounts/{account_id}/load_balancers/monitor_groups\n- \"Create a monitor_group?\" -> POST /accounts/{account_id}/load_balancers/monitor_groups\n- \"Delete a monitor_group?\" -> DELETE /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n- \"Get monitor_group details?\" -> GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n- \"Partially update a monitor_group?\" -> PATCH /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n- \"Update a monitor_group?\" -> PUT /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n- \"List all references?\" -> GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}/references\n- \"List all monitors?\" -> GET /accounts/{account_id}/load_balancers/monitors\n- \"Create a monitor?\" -> POST /accounts/{account_id}/load_balancers/monitors\n- \"Delete a monitor?\" -> DELETE /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n- \"Get monitor details?\" -> GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n- \"Partially update a monitor?\" -> PATCH /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n- \"Update a monitor?\" -> PUT /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n- \"List all pools?\" -> GET /accounts/{account_id}/load_balancers/pools\n- \"Create a pool?\" -> POST /accounts/{account_id}/load_balancers/pools\n- \"Delete a pool?\" -> DELETE /accounts/{account_id}/load_balancers/pools/{pool_id}\n- \"Get pool details?\" -> GET /accounts/{account_id}/load_balancers/pools/{pool_id}\n- \"Partially update a pool?\" -> PATCH /accounts/{account_id}/load_balancers/pools/{pool_id}\n- \"Update a pool?\" -> PUT /accounts/{account_id}/load_balancers/pools/{pool_id}\n- \"List all health?\" -> GET /accounts/{account_id}/load_balancers/pools/{pool_id}/health\n- \"Get preview details?\" -> GET /accounts/{account_id}/load_balancers/preview/{preview_id}\n- \"Get region details?\" -> GET /accounts/{account_id}/load_balancers/regions/{region_id}\n- \"List all fields?\" -> GET /accounts/{account_id}/logpush/datasets/{dataset_id}/fields\n- \"Delete a job?\" -> DELETE /accounts/{account_id}/logpush/jobs/{job_id}\n- \"Update a job?\" -> PUT /accounts/{account_id}/logpush/jobs/{job_id}\n- \"Create a ownership?\" -> POST /accounts/{account_id}/logpush/ownership\n- \"Create a destination?\" -> POST /accounts/{account_id}/logpush/validate/destination\n- \"Create a exist?\" -> POST /accounts/{account_id}/logpush/validate/destination/exists\n- \"Create a origin?\" -> POST /accounts/{account_id}/logpush/validate/origin\n- \"List all audit?\" -> GET /accounts/{account_id}/logs/audit\n- \"List all allowlist?\" -> GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist\n- \"Create a allowlist?\" -> POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist\n- \"Delete a allowlist?\" -> DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n- \"Get allowlist details?\" -> GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n- \"Partially update a allowlist?\" -> PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n- \"List all filters?\" -> GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters\n- \"Create a filter?\" -> POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters\n- \"Delete a filter?\" -> DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n- \"Get filter details?\" -> GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n- \"Partially update a filter?\" -> PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n- \"List all tcp_protection_status?\" -> GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status\n- \"Partially update a app?\" -> PATCH /accounts/{account_id}/magic/apps/{account_app_id}\n- \"List all cf_interconnects?\" -> GET /accounts/{account_id}/magic/cf_interconnects\n- \"Get cf_interconnect details?\" -> GET /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}\n- \"Update a cf_interconnect?\" -> PUT /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}\n- \"List all catalog-syncs?\" -> GET /accounts/{account_id}/magic/cloud/catalog-syncs\n- \"Create a catalog-sync?\" -> POST /accounts/{account_id}/magic/cloud/catalog-syncs\n- \"List all prebuilt-policies?\" -> GET /accounts/{account_id}/magic/cloud/catalog-syncs/prebuilt-policies\n- \"Delete a catalog-sync?\" -> DELETE /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n- \"Get catalog-sync details?\" -> GET /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n- \"Partially update a catalog-sync?\" -> PATCH /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n- \"Update a catalog-sync?\" -> PUT /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n- \"List all onramps?\" -> GET /accounts/{account_id}/magic/cloud/onramps\n- \"Create a onramp?\" -> POST /accounts/{account_id}/magic/cloud/onramps\n- \"List all magic_wan_address_space?\" -> GET /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space\n- \"Delete a onramp?\" -> DELETE /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n- \"Get onramp details?\" -> GET /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n- \"Partially update a onramp?\" -> PATCH /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n- \"Update a onramp?\" -> PUT /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n- \"Create a apply?\" -> POST /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/apply\n- \"Create a plan?\" -> POST /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/plan\n- \"List all providers?\" -> GET /accounts/{account_id}/magic/cloud/providers\n- \"Create a provider?\" -> POST /accounts/{account_id}/magic/cloud/providers\n- \"Create a discover?\" -> POST /accounts/{account_id}/magic/cloud/providers/discover\n- \"Delete a provider?\" -> DELETE /accounts/{account_id}/magic/cloud/providers/{provider_id}\n- \"Get provider details?\" -> GET /accounts/{account_id}/magic/cloud/providers/{provider_id}\n- \"Partially update a provider?\" -> PATCH /accounts/{account_id}/magic/cloud/providers/{provider_id}\n- \"Update a provider?\" -> PUT /accounts/{account_id}/magic/cloud/providers/{provider_id}\n- \"List all initial_setup?\" -> GET /accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup\n- \"Search resources?\" -> GET /accounts/{account_id}/magic/cloud/resources\n- \"Search export?\" -> GET /accounts/{account_id}/magic/cloud/resources/export\n- \"Create a policy-preview?\" -> POST /accounts/{account_id}/magic/cloud/resources/policy-preview\n- \"Get resource details?\" -> GET /accounts/{account_id}/magic/cloud/resources/{resource_id}\n- \"List all connectors?\" -> GET /accounts/{account_id}/magic/connectors\n- \"Create a connector?\" -> POST /accounts/{account_id}/magic/connectors\n- \"Delete a connector?\" -> DELETE /accounts/{account_id}/magic/connectors/{connector_id}\n- \"Partially update a connector?\" -> PATCH /accounts/{account_id}/magic/connectors/{connector_id}\n- \"Update a connector?\" -> PUT /accounts/{account_id}/magic/connectors/{connector_id}\n- \"List all events?\" -> GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events\n- \"List all snapshots?\" -> GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots\n- \"Get snapshot details?\" -> GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/{snapshot_t}\n- \"List all gre_tunnels?\" -> GET /accounts/{account_id}/magic/gre_tunnels\n- \"Create a gre_tunnel?\" -> POST /accounts/{account_id}/magic/gre_tunnels\n- \"Delete a gre_tunnel?\" -> DELETE /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n- \"Get gre_tunnel details?\" -> GET /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n- \"Update a gre_tunnel?\" -> PUT /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n- \"List all ipsec_tunnels?\" -> GET /accounts/{account_id}/magic/ipsec_tunnels\n- \"Create a ipsec_tunnel?\" -> POST /accounts/{account_id}/magic/ipsec_tunnels\n- \"Delete a ipsec_tunnel?\" -> DELETE /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n- \"Get ipsec_tunnel details?\" -> GET /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n- \"Update a ipsec_tunnel?\" -> PUT /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n- \"Create a psk_generate?\" -> POST /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}/psk_generate\n- \"Update a route?\" -> PUT /accounts/{account_id}/magic/routes/{route_id}\n- \"List all sites?\" -> GET /accounts/{account_id}/magic/sites\n- \"Create a site?\" -> POST /accounts/{account_id}/magic/sites\n- \"Delete a site?\" -> DELETE /accounts/{account_id}/magic/sites/{site_id}\n- \"Get site details?\" -> GET /accounts/{account_id}/magic/sites/{site_id}\n- \"Partially update a site?\" -> PATCH /accounts/{account_id}/magic/sites/{site_id}\n- \"Update a site?\" -> PUT /accounts/{account_id}/magic/sites/{site_id}\n- \"List all acls?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/acls\n- \"Create a acl?\" -> POST /accounts/{account_id}/magic/sites/{site_id}/acls\n- \"Delete a acl?\" -> DELETE /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n- \"Get acl details?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n- \"Partially update a acl?\" -> PATCH /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n- \"Update a acl?\" -> PUT /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n- \"List all app_configs?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/app_configs\n- \"Create a app_config?\" -> POST /accounts/{account_id}/magic/sites/{site_id}/app_configs\n- \"Delete a app_config?\" -> DELETE /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n- \"Partially update a app_config?\" -> PATCH /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n- \"Update a app_config?\" -> PUT /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n- \"List all lans?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/lans\n- \"Create a lan?\" -> POST /accounts/{account_id}/magic/sites/{site_id}/lans\n- \"Delete a lan?\" -> DELETE /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n- \"Get lan details?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n- \"Partially update a lan?\" -> PATCH /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n- \"Update a lan?\" -> PUT /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n- \"List all netflow_config?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n- \"Create a netflow_config?\" -> POST /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n- \"List all wans?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/wans\n- \"Create a wan?\" -> POST /accounts/{account_id}/magic/sites/{site_id}/wans\n- \"Delete a wan?\" -> DELETE /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n- \"Get wan details?\" -> GET /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n- \"Partially update a wan?\" -> PATCH /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n- \"Update a wan?\" -> PUT /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n- \"Get member details?\" -> GET /accounts/{account_id}/members/{member_id}\n- \"Update a member?\" -> PUT /accounts/{account_id}/members/{member_id}\n- \"List all full?\" -> GET /accounts/{account_id}/mnm/config/full\n- \"List all mtls_certificates?\" -> GET /accounts/{account_id}/mtls_certificates\n- \"Create a mtls_certificate?\" -> POST /accounts/{account_id}/mtls_certificates\n- \"Delete a mtls_certificate?\" -> DELETE /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}\n- \"Get mtls_certificate details?\" -> GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}\n- \"List all associations?\" -> GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations\n- \"List all projects?\" -> GET /accounts/{account_id}/pages/projects\n- \"Create a project?\" -> POST /accounts/{account_id}/pages/projects\n- \"Delete a project?\" -> DELETE /accounts/{account_id}/pages/projects/{project_name}\n- \"Get project details?\" -> GET /accounts/{account_id}/pages/projects/{project_name}\n- \"Partially update a project?\" -> PATCH /accounts/{account_id}/pages/projects/{project_name}\n- \"Delete a deployment?\" -> DELETE /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}\n- \"Get deployment details?\" -> GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}\n- \"Create a retry?\" -> POST /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/retry\n- \"Create a rollback?\" -> POST /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/rollback\n- \"List all domains?\" -> GET /accounts/{account_id}/pages/projects/{project_name}/domains\n- \"Create a domain?\" -> POST /accounts/{account_id}/pages/projects/{project_name}/domains\n- \"List all stripe?\" -> GET /accounts/{account_id}/pay-per-crawl/crawler/stripe\n- \"Create a stripe?\" -> POST /accounts/{account_id}/pay-per-crawl/crawler/stripe\n- \"List all pcaps?\" -> GET /accounts/{account_id}/pcaps\n- \"Create a pcap?\" -> POST /accounts/{account_id}/pcaps\n- \"List all ownership?\" -> GET /accounts/{account_id}/pcaps/ownership\n- \"Delete a ownership?\" -> DELETE /accounts/{account_id}/pcaps/ownership/{ownership_id}\n- \"Get pcap details?\" -> GET /accounts/{account_id}/pcaps/{pcap_id}\n- \"Search pipelines?\" -> GET /accounts/{account_id}/pipelines\n- \"Create a pipeline?\" -> POST /accounts/{account_id}/pipelines\n- \"List all pipelines?\" -> GET /accounts/{account_id}/pipelines/v1/pipelines\n- \"Delete a pipeline?\" -> DELETE /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}\n- \"Get pipeline details?\" -> GET /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}\n- \"List all sinks?\" -> GET /accounts/{account_id}/pipelines/v1/sinks\n- \"Create a sink?\" -> POST /accounts/{account_id}/pipelines/v1/sinks\n- \"Delete a sink?\" -> DELETE /accounts/{account_id}/pipelines/v1/sinks/{sink_id}\n- \"Get sink details?\" -> GET /accounts/{account_id}/pipelines/v1/sinks/{sink_id}\n- \"List all streams?\" -> GET /accounts/{account_id}/pipelines/v1/streams\n- \"Create a stream?\" -> POST /accounts/{account_id}/pipelines/v1/streams\n- \"Delete a stream?\" -> DELETE /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n- \"Get stream details?\" -> GET /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n- \"Partially update a stream?\" -> PATCH /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n- \"Create a validate_sql?\" -> POST /accounts/{account_id}/pipelines/v1/validate_sql\n- \"Update a pipeline?\" -> PUT /accounts/{account_id}/pipelines/{pipeline_name}\n- \"List all queues?\" -> GET /accounts/{account_id}/queues\n- \"Create a queue?\" -> POST /accounts/{account_id}/queues\n- \"Partially update a queue?\" -> PATCH /accounts/{account_id}/queues/{queue_id}\n- \"List all consumers?\" -> GET /accounts/{account_id}/queues/{queue_id}/consumers\n- \"Create a consumer?\" -> POST /accounts/{account_id}/queues/{queue_id}/consumers\n- \"Delete a consumer?\" -> DELETE /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n- \"Get consumer details?\" -> GET /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n- \"Update a consumer?\" -> PUT /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n- \"Create a ack?\" -> POST /accounts/{account_id}/queues/{queue_id}/messages/ack\n- \"Create a pull?\" -> POST /accounts/{account_id}/queues/{queue_id}/messages/pull\n- \"List all purge?\" -> GET /accounts/{account_id}/queues/{queue_id}/purge\n- \"Create a purge?\" -> POST /accounts/{account_id}/queues/{queue_id}/purge\n- \"List all r2-catalog?\" -> GET /accounts/{account_id}/r2-catalog\n- \"Get r2-catalog details?\" -> GET /accounts/{account_id}/r2-catalog/{bucket_name}\n- \"Create a disable?\" -> POST /accounts/{account_id}/r2-catalog/{bucket_name}/disable\n- \"Create a enable?\" -> POST /accounts/{account_id}/r2-catalog/{bucket_name}/enable\n- \"List all maintenance-configs?\" -> GET /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs\n- \"Create a maintenance-config?\" -> POST /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs\n- \"List all namespaces?\" -> GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces\n- \"List all tables?\" -> GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables\n- \"List all buckets?\" -> GET /accounts/{account_id}/r2/buckets\n- \"Create a bucket?\" -> POST /accounts/{account_id}/r2/buckets\n- \"Delete a bucket?\" -> DELETE /accounts/{account_id}/r2/buckets/{bucket_name}\n- \"Get bucket details?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}\n- \"Partially update a bucket?\" -> PATCH /accounts/{account_id}/r2/buckets/{bucket_name}\n- \"List all cors?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/cors\n- \"List all managed?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed\n- \"List all lifecycle?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle\n- \"List all local-uploads?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads\n- \"List all lock?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/lock\n- \"List all sippy?\" -> GET /accounts/{account_id}/r2/buckets/{bucket_name}/sippy\n- \"List all metrics?\" -> GET /accounts/{account_id}/r2/metrics\n- \"Create a temp-access-credential?\" -> POST /accounts/{account_id}/r2/temp-access-credentials\n- \"List all daywise?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywise\n- \"List all overall?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall\n- \"List all livestreams?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams\n- \"Create a livestream?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/livestreams\n- \"Get session details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}\n- \"Get livestream details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}\n- \"List all active-livestream-session?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session\n- \"Search meetings?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings\n- \"Create a meeting?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings\n- \"Get meeting details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n- \"Partially update a meeting?\" -> PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n- \"Update a meeting?\" -> PUT /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n- \"List all active-livestream?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream\n- \"Create a stop?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream/stop\n- \"List all active-session?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session\n- \"Create a kick?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick\n- \"Create a kick-all?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick-all\n- \"Create a mute?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute\n- \"Create a mute-all?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute-all\n- \"Create a poll?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/poll\n- \"List all livestream?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream\n- \"List all participants?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants\n- \"Create a participant?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants\n- \"Delete a participant?\" -> DELETE /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n- \"Get participant details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n- \"Partially update a participant?\" -> PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n- \"List all presets?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/presets\n- \"Create a preset?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/presets\n- \"Delete a preset?\" -> DELETE /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n- \"Get preset details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n- \"Partially update a preset?\" -> PATCH /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n- \"Search recordings?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/recordings\n- \"Create a recording?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/recordings\n- \"Get active-recording details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id}\n- \"Create a track?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/recordings/track\n- \"Get recording details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}\n- \"Update a recording?\" -> PUT /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}\n- \"Search sessions?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions\n- \"Get peer-report details?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id}\n- \"List all chat?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat\n- \"List all livestream-sessions?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions\n- \"Search participants?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants\n- \"List all summary?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary\n- \"Create a summary?\" -> POST /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary\n- \"List all transcript?\" -> GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcript\n- \"Partially update a webhook?\" -> PATCH /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}\n- \"Update a domain?\" -> PUT /accounts/{account_id}/registrar/domains/{domain_name}\n- \"Create a trace?\" -> POST /accounts/{account_id}/request-tracer/trace\n- \"List all roles?\" -> GET /accounts/{account_id}/roles\n- \"Get role details?\" -> GET /accounts/{account_id}/roles/{role_id}\n- \"Get bulk_operation details?\" -> GET /accounts/{account_id}/rules/lists/bulk_operations/{operation_id}\n- \"Search items?\" -> GET /accounts/{account_id}/rules/lists/{list_id}/items\n- \"Create a item?\" -> POST /accounts/{account_id}/rules/lists/{list_id}/items\n- \"Get item details?\" -> GET /accounts/{account_id}/rules/lists/{list_id}/items/{item_id}\n- \"List all rulesets?\" -> GET /accounts/{account_id}/rulesets\n- \"Create a ruleset?\" -> POST /accounts/{account_id}/rulesets\n- \"List all entrypoint?\" -> GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint\n- \"Delete a ruleset?\" -> DELETE /accounts/{account_id}/rulesets/{ruleset_id}\n- \"Get ruleset details?\" -> GET /accounts/{account_id}/rulesets/{ruleset_id}\n- \"Update a ruleset?\" -> PUT /accounts/{account_id}/rulesets/{ruleset_id}\n- \"Delete a version?\" -> DELETE /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}\n- \"Get by_tag details?\" -> GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}\n- \"Create a site_info?\" -> POST /accounts/{account_id}/rum/site_info\n- \"List all list?\" -> GET /accounts/{account_id}/rum/site_info/list\n- \"Delete a site_info?\" -> DELETE /accounts/{account_id}/rum/site_info/{site_id}\n- \"Get site_info details?\" -> GET /accounts/{account_id}/rum/site_info/{site_id}\n- \"Update a site_info?\" -> PUT /accounts/{account_id}/rum/site_info/{site_id}\n- \"List all Groups?\" -> GET /accounts/{account_id}/scim/v2/Groups\n- \"Create a Group?\" -> POST /accounts/{account_id}/scim/v2/Groups\n- \"Delete a Group?\" -> DELETE /accounts/{account_id}/scim/v2/Groups/{group_id}\n- \"Get Group details?\" -> GET /accounts/{account_id}/scim/v2/Groups/{group_id}\n- \"Partially update a Group?\" -> PATCH /accounts/{account_id}/scim/v2/Groups/{group_id}\n- \"List all ResourceTypes?\" -> GET /accounts/{account_id}/scim/v2/ResourceTypes\n- \"Get ResourceType details?\" -> GET /accounts/{account_id}/scim/v2/ResourceTypes/{resource_type_id}\n- \"List all Schemas?\" -> GET /accounts/{account_id}/scim/v2/Schemas\n- \"Get Schema details?\" -> GET /accounts/{account_id}/scim/v2/Schemas/{schema_id}\n- \"List all ServiceProviderConfig?\" -> GET /accounts/{account_id}/scim/v2/ServiceProviderConfig\n- \"List all Users?\" -> GET /accounts/{account_id}/scim/v2/Users\n- \"Create a User?\" -> POST /accounts/{account_id}/scim/v2/Users\n- \"Get User details?\" -> GET /accounts/{account_id}/scim/v2/Users/{user_id}\n- \"Partially update a User?\" -> PATCH /accounts/{account_id}/scim/v2/Users/{user_id}\n- \"Update a User?\" -> PUT /accounts/{account_id}/scim/v2/Users/{user_id}\n- \"List all peers?\" -> GET /accounts/{account_id}/secondary_dns/peers\n- \"Create a peer?\" -> POST /accounts/{account_id}/secondary_dns/peers\n- \"Delete a peer?\" -> DELETE /accounts/{account_id}/secondary_dns/peers/{peer_id}\n- \"Get peer details?\" -> GET /accounts/{account_id}/secondary_dns/peers/{peer_id}\n- \"Update a peer?\" -> PUT /accounts/{account_id}/secondary_dns/peers/{peer_id}\n- \"List all tsigs?\" -> GET /accounts/{account_id}/secondary_dns/tsigs\n- \"Create a tsig?\" -> POST /accounts/{account_id}/secondary_dns/tsigs\n- \"Delete a tsig?\" -> DELETE /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n- \"Get tsig details?\" -> GET /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n- \"Update a tsig?\" -> PUT /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n- \"List all stores?\" -> GET /accounts/{account_id}/secrets_store/stores\n- \"Create a store?\" -> POST /accounts/{account_id}/secrets_store/stores\n- \"Delete a store?\" -> DELETE /accounts/{account_id}/secrets_store/stores/{store_id}\n- \"Get store details?\" -> GET /accounts/{account_id}/secrets_store/stores/{store_id}\n- \"Search secrets?\" -> GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets\n- \"Create a secret?\" -> POST /accounts/{account_id}/secrets_store/stores/{store_id}/secrets\n- \"Delete a secret?\" -> DELETE /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n- \"Get secret details?\" -> GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n- \"Partially update a secret?\" -> PATCH /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n- \"Create a duplicate?\" -> POST /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}/duplicate\n- \"List all insights?\" -> GET /accounts/{account_id}/security-center/insights\n- \"List all context?\" -> GET /accounts/{account_id}/security-center/insights/{issue_id}/context\n- \"List all shares?\" -> GET /accounts/{account_id}/shares\n- \"Create a share?\" -> POST /accounts/{account_id}/shares\n- \"Delete a share?\" -> DELETE /accounts/{account_id}/shares/{share_id}\n- \"Get share details?\" -> GET /accounts/{account_id}/shares/{share_id}\n- \"Update a share?\" -> PUT /accounts/{account_id}/shares/{share_id}\n- \"List all recipients?\" -> GET /accounts/{account_id}/shares/{share_id}/recipients\n- \"Create a recipient?\" -> POST /accounts/{account_id}/shares/{share_id}/recipients\n- \"Delete a recipient?\" -> DELETE /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}\n- \"Get recipient details?\" -> GET /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}\n- \"List all resources?\" -> GET /accounts/{account_id}/shares/{share_id}/resources\n- \"Create a resource?\" -> POST /accounts/{account_id}/shares/{share_id}/resources\n- \"Delete a resource?\" -> DELETE /accounts/{account_id}/shares/{share_id}/resources/{resource_id}\n- \"Update a resource?\" -> PUT /accounts/{account_id}/shares/{share_id}/resources/{resource_id}\n- \"List all progress?\" -> GET /accounts/{account_id}/slurper/jobs/{job_id}/progress\n- \"List all sso_connectors?\" -> GET /accounts/{account_id}/sso_connectors\n- \"Create a sso_connector?\" -> POST /accounts/{account_id}/sso_connectors\n- \"Delete a sso_connector?\" -> DELETE /accounts/{account_id}/sso_connectors/{sso_connector_id}\n- \"Get sso_connector details?\" -> GET /accounts/{account_id}/sso_connectors/{sso_connector_id}\n- \"Partially update a sso_connector?\" -> PATCH /accounts/{account_id}/sso_connectors/{sso_connector_id}\n- \"Create a begin_verification?\" -> POST /accounts/{account_id}/sso_connectors/{sso_connector_id}/begin_verification\n- \"Create a namespace?\" -> POST /accounts/{account_id}/storage/kv/namespaces\n- \"Delete a namespace?\" -> DELETE /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n- \"Get namespace details?\" -> GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n- \"Update a namespace?\" -> PUT /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n- \"Create a delete?\" -> POST /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/delete\n- \"Create a get?\" -> POST /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/get\n- \"Get metadata details?\" -> GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name}\n- \"Delete a value?\" -> DELETE /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n- \"Get value details?\" -> GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n- \"Update a value?\" -> PUT /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n- \"Search stream?\" -> GET /accounts/{account_id}/stream\n- \"Create a clip?\" -> POST /accounts/{account_id}/stream/clip\n- \"Create a key?\" -> POST /accounts/{account_id}/stream/keys\n- \"List all live_inputs?\" -> GET /accounts/{account_id}/stream/live_inputs\n- \"Create a live_input?\" -> POST /accounts/{account_id}/stream/live_inputs\n- \"Delete a live_input?\" -> DELETE /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n- \"Get live_input details?\" -> GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n- \"Update a live_input?\" -> PUT /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n- \"List all outputs?\" -> GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs\n- \"Create a output?\" -> POST /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs\n- \"Delete a output?\" -> DELETE /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}\n- \"Update a output?\" -> PUT /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}\n- \"List all storage-usage?\" -> GET /accounts/{account_id}/stream/storage-usage\n- \"List all watermarks?\" -> GET /accounts/{account_id}/stream/watermarks\n- \"Create a watermark?\" -> POST /accounts/{account_id}/stream/watermarks\n- \"Delete a watermark?\" -> DELETE /accounts/{account_id}/stream/watermarks/{identifier}\n- \"Get watermark details?\" -> GET /accounts/{account_id}/stream/watermarks/{identifier}\n- \"List all webhook?\" -> GET /accounts/{account_id}/stream/webhook\n- \"List all audio?\" -> GET /accounts/{account_id}/stream/{identifier}/audio\n- \"Delete a audio?\" -> DELETE /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}\n- \"Partially update a audio?\" -> PATCH /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}\n- \"List all captions?\" -> GET /accounts/{account_id}/stream/{identifier}/captions\n- \"Delete a caption?\" -> DELETE /accounts/{account_id}/stream/{identifier}/captions/{language}\n- \"Get caption details?\" -> GET /accounts/{account_id}/stream/{identifier}/captions/{language}\n- \"Update a caption?\" -> PUT /accounts/{account_id}/stream/{identifier}/captions/{language}\n- \"Create a generate?\" -> POST /accounts/{account_id}/stream/{identifier}/captions/{language}/generate\n- \"List all vtt?\" -> GET /accounts/{account_id}/stream/{identifier}/captions/{language}/vtt\n- \"List all downloads?\" -> GET /accounts/{account_id}/stream/{identifier}/downloads\n- \"Create a download?\" -> POST /accounts/{account_id}/stream/{identifier}/downloads\n- \"Delete a download?\" -> DELETE /accounts/{account_id}/stream/{identifier}/downloads/{download_type}\n- \"List all embed?\" -> GET /accounts/{account_id}/stream/{identifier}/embed\n- \"Update a subscription?\" -> PUT /accounts/{account_id}/subscriptions/{subscription_identifier}\n- \"Get ip details?\" -> GET /accounts/{account_id}/teamnet/routes/ip/{ip}\n- \"Partially update a network?\" -> PATCH /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}\n- \"List all virtual_networks?\" -> GET /accounts/{account_id}/teamnet/virtual_networks\n- \"Create a virtual_network?\" -> POST /accounts/{account_id}/teamnet/virtual_networks\n- \"Delete a virtual_network?\" -> DELETE /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n- \"Get virtual_network details?\" -> GET /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n- \"Partially update a virtual_network?\" -> PATCH /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n- \"List all verify?\" -> GET /accounts/{account_id}/tokens/verify\n- \"List all tunnels?\" -> GET /accounts/{account_id}/tunnels\n- \"Get response details?\" -> GET /accounts/{account_id}/urlscanner/response/{response_id}\n- \"List all scan?\" -> GET /accounts/{account_id}/urlscanner/scan\n- \"Create a scan?\" -> POST /accounts/{account_id}/urlscanner/scan\n- \"Get scan details?\" -> GET /accounts/{account_id}/urlscanner/scan/{scan_id}\n- \"List all har?\" -> GET /accounts/{account_id}/urlscanner/scan/{scan_id}/har\n- \"List all screenshot?\" -> GET /accounts/{account_id}/urlscanner/scan/{scan_id}/screenshot\n- \"Get dom details?\" -> GET /accounts/{account_id}/urlscanner/v2/dom/{scan_id}\n- \"Get har details?\" -> GET /accounts/{account_id}/urlscanner/v2/har/{scan_id}\n- \"Get screenshot details?\" -> GET /accounts/{account_id}/urlscanner/v2/screenshots/{scan_id}.png\n- \"List all indexes?\" -> GET /accounts/{account_id}/vectorize/indexes\n- \"Create a indexe?\" -> POST /accounts/{account_id}/vectorize/indexes\n- \"Delete a indexe?\" -> DELETE /accounts/{account_id}/vectorize/indexes/{index_name}\n- \"Get indexe details?\" -> GET /accounts/{account_id}/vectorize/indexes/{index_name}\n- \"Update a indexe?\" -> PUT /accounts/{account_id}/vectorize/indexes/{index_name}\n- \"Create a delete-by-id?\" -> POST /accounts/{account_id}/vectorize/indexes/{index_name}/delete-by-ids\n- \"Create a get-by-id?\" -> POST /accounts/{account_id}/vectorize/indexes/{index_name}/get-by-ids\n- \"Create a insert?\" -> POST /accounts/{account_id}/vectorize/indexes/{index_name}/insert\n- \"Create a upsert?\" -> POST /accounts/{account_id}/vectorize/indexes/{index_name}/upsert\n- \"Create a delete_by_id?\" -> POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/delete_by_ids\n- \"Create a get_by_id?\" -> POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/get_by_ids\n- \"List all info?\" -> GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/info\n- \"List all waiting_rooms?\" -> GET /accounts/{account_id}/waiting_rooms\n- \"List all warp_connector?\" -> GET /accounts/{account_id}/warp_connector\n- \"Create a warp_connector?\" -> POST /accounts/{account_id}/warp_connector\n- \"Delete a warp_connector?\" -> DELETE /accounts/{account_id}/warp_connector/{tunnel_id}\n- \"Get warp_connector details?\" -> GET /accounts/{account_id}/warp_connector/{tunnel_id}\n- \"Partially update a warp_connector?\" -> PATCH /accounts/{account_id}/warp_connector/{tunnel_id}\n- \"List all account-settings?\" -> GET /accounts/{account_id}/workers/account-settings\n- \"Partially update a namespace?\" -> PATCH /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}\n- \"List all scripts?\" -> GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts\n- \"Delete a script?\" -> DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n- \"Get script details?\" -> GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n- \"Update a script?\" -> PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n- \"Create a assets-upload-session?\" -> POST /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/assets-upload-session\n- \"List all content?\" -> GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content\n- \"List all secrets?\" -> GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets\n- \"List all objects?\" -> GET /accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects\n- \"List all destinations?\" -> GET /accounts/{account_id}/workers/observability/destinations\n- \"Delete a destination?\" -> DELETE /accounts/{account_id}/workers/observability/destinations/{slug}\n- \"Partially update a destination?\" -> PATCH /accounts/{account_id}/workers/observability/destinations/{slug}\n- \"Create a value?\" -> POST /accounts/{account_id}/workers/observability/telemetry/values\n- \"List all scripts-search?\" -> GET /accounts/{account_id}/workers/scripts-search\n- \"List all schedules?\" -> GET /accounts/{account_id}/workers/scripts/{script_name}/schedules\n- \"List all script-settings?\" -> GET /accounts/{account_id}/workers/scripts/{script_name}/script-settings\n- \"List all subdomain?\" -> GET /accounts/{account_id}/workers/scripts/{script_name}/subdomain\n- \"Create a subdomain?\" -> POST /accounts/{account_id}/workers/scripts/{script_name}/subdomain\n- \"List all tails?\" -> GET /accounts/{account_id}/workers/scripts/{script_name}/tails\n- \"Create a tail?\" -> POST /accounts/{account_id}/workers/scripts/{script_name}/tails\n- \"Delete a tail?\" -> DELETE /accounts/{account_id}/workers/scripts/{script_name}/tails/{id}\n- \"List all usage-model?\" -> GET /accounts/{account_id}/workers/scripts/{script_name}/usage-model\n- \"List all workers?\" -> GET /accounts/{account_id}/workers/workers\n- \"Create a worker?\" -> POST /accounts/{account_id}/workers/workers\n- \"Delete a worker?\" -> DELETE /accounts/{account_id}/workers/workers/{worker_id}\n- \"Get worker details?\" -> GET /accounts/{account_id}/workers/workers/{worker_id}\n- \"Partially update a worker?\" -> PATCH /accounts/{account_id}/workers/workers/{worker_id}\n- \"Update a worker?\" -> PUT /accounts/{account_id}/workers/workers/{worker_id}\n- \"Search workflows?\" -> GET /accounts/{account_id}/workflows\n- \"Delete a workflow?\" -> DELETE /accounts/{account_id}/workflows/{workflow_name}\n- \"Get workflow details?\" -> GET /accounts/{account_id}/workflows/{workflow_name}\n- \"Update a workflow?\" -> PUT /accounts/{account_id}/workflows/{workflow_name}\n- \"List all instances?\" -> GET /accounts/{account_id}/workflows/{workflow_name}/instances\n- \"Create a terminate?\" -> POST /accounts/{account_id}/workflows/{workflow_name}/instances/batch/terminate\n- \"List all terminate?\" -> GET /accounts/{account_id}/workflows/{workflow_name}/instances/terminate\n- \"List all dag?\" -> GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/dag\n- \"List all graph?\" -> GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph\n- \"List all connectivity_settings?\" -> GET /accounts/{account_id}/zerotrust/connectivity_settings\n- \"List all hostname?\" -> GET /accounts/{account_id}/zerotrust/routes/hostname\n- \"Create a hostname?\" -> POST /accounts/{account_id}/zerotrust/routes/hostname\n- \"Delete a hostname?\" -> DELETE /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n- \"Get hostname details?\" -> GET /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n- \"Partially update a hostname?\" -> PATCH /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n- \"Partially update a cloudflare_source?\" -> PATCH /accounts/{account_id}/zerotrust/subnets/cloudflare_source/{address_family}\n- \"Create a warp?\" -> POST /accounts/{account_id}/zerotrust/subnets/warp\n- \"Delete a warp?\" -> DELETE /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n- \"Get warp details?\" -> GET /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n- \"Partially update a warp?\" -> PATCH /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n- \"List all behaviors?\" -> GET /accounts/{account_id}/zt_risk_scoring/behaviors\n- \"List all integrations?\" -> GET /accounts/{account_id}/zt_risk_scoring/integrations\n- \"Get reference_id details?\" -> GET /accounts/{account_id}/zt_risk_scoring/integrations/reference_id/{reference_id}\n- \"Get zt_risk_scoring details?\" -> GET /accounts/{account_id}/zt_risk_scoring/{user_id}\n- \"Create a reset?\" -> POST /accounts/{account_id}/zt_risk_scoring/{user_id}/reset\n- \"List all ips?\" -> GET /ips\n- \"List all memberships?\" -> GET /memberships\n- \"Delete a membership?\" -> DELETE /memberships/{membership_id}\n- \"Get membership details?\" -> GET /memberships/{membership_id}\n- \"Update a membership?\" -> PUT /memberships/{membership_id}\n- \"Delete a organization?\" -> DELETE /organizations/{organization_id}\n- \"Get organization details?\" -> GET /organizations/{organization_id}\n- \"Update a organization?\" -> PUT /organizations/{organization_id}\n- \"Create a members:batchCreate?\" -> POST /organizations/{organization_id}/members:batchCreate\n- \"List all user_agent?\" -> GET /radar/ai/bots/summary/user_agent\n- \"Get summary details?\" -> GET /radar/ai/bots/summary/{dimension}\n- \"List all timeseries?\" -> GET /radar/ai/bots/timeseries\n- \"Get timeseries_group details?\" -> GET /radar/ai/bots/timeseries_groups/{dimension}\n- \"List all model?\" -> GET /radar/ai/inference/summary/model\n- \"List all task?\" -> GET /radar/ai/inference/summary/task\n- \"List all annotations?\" -> GET /radar/annotations\n- \"List all outages?\" -> GET /radar/annotations/outages\n- \"List all dnssec?\" -> GET /radar/as112/summary/dnssec\n- \"List all edns?\" -> GET /radar/as112/summary/edns\n- \"List all ip_version?\" -> GET /radar/as112/summary/ip_version\n- \"List all protocol?\" -> GET /radar/as112/summary/protocol\n- \"List all query_type?\" -> GET /radar/as112/summary/query_type\n- \"List all response_codes?\" -> GET /radar/as112/summary/response_codes\n- \"Get dnssec details?\" -> GET /radar/as112/top/locations/dnssec/{dnssec}\n- \"Get edn details?\" -> GET /radar/as112/top/locations/edns/{edns}\n- \"Get ip_version details?\" -> GET /radar/as112/top/locations/ip_version/{ip_version}\n- \"List all bitrate?\" -> GET /radar/attacks/layer3/summary/bitrate\n- \"List all duration?\" -> GET /radar/attacks/layer3/summary/duration\n- \"List all industry?\" -> GET /radar/attacks/layer3/summary/industry\n- \"List all vector?\" -> GET /radar/attacks/layer3/summary/vector\n- \"List all vertical?\" -> GET /radar/attacks/layer3/summary/vertical\n- \"List all attacks?\" -> GET /radar/attacks/layer3/top/attacks\n- \"List all origin?\" -> GET /radar/attacks/layer3/top/locations/origin\n- \"List all target?\" -> GET /radar/attacks/layer3/top/locations/target\n- \"List all http_method?\" -> GET /radar/attacks/layer7/summary/http_method\n- \"List all http_version?\" -> GET /radar/attacks/layer7/summary/http_version\n- \"List all managed_rules?\" -> GET /radar/attacks/layer7/summary/managed_rules\n- \"List all mitigation_product?\" -> GET /radar/attacks/layer7/summary/mitigation_product\n- \"List all ases?\" -> GET /radar/bgp/routes/ases\n- \"List all moas?\" -> GET /radar/bgp/routes/moas\n- \"List all pfx2as?\" -> GET /radar/bgp/routes/pfx2as\n- \"List all realtime?\" -> GET /radar/bgp/routes/realtime\n- \"List all changes?\" -> GET /radar/bgp/rpki/aspa/changes\n- \"List all snapshot?\" -> GET /radar/bgp/rpki/aspa/snapshot\n- \"List all bots?\" -> GET /radar/bots\n- \"Get bot details?\" -> GET /radar/bots/{bot_slug}\n- \"List all authorities?\" -> GET /radar/ct/authorities\n- \"Get authority details?\" -> GET /radar/ct/authorities/{ca_slug}\n- \"List all cache_hit?\" -> GET /radar/dns/summary/cache_hit\n- \"List all dnssec_aware?\" -> GET /radar/dns/summary/dnssec_aware\n- \"List all dnssec_e2e?\" -> GET /radar/dns/summary/dnssec_e2e\n- \"List all matching_answer?\" -> GET /radar/dns/summary/matching_answer\n- \"List all response_code?\" -> GET /radar/dns/summary/response_code\n- \"List all response_ttl?\" -> GET /radar/dns/summary/response_ttl\n- \"List all arc?\" -> GET /radar/email/routing/summary/arc\n- \"List all dkim?\" -> GET /radar/email/routing/summary/dkim\n- \"List all dmarc?\" -> GET /radar/email/routing/summary/dmarc\n- \"List all encrypted?\" -> GET /radar/email/routing/summary/encrypted\n- \"List all spf?\" -> GET /radar/email/routing/summary/spf\n- \"List all malicious?\" -> GET /radar/email/security/summary/malicious\n- \"List all spam?\" -> GET /radar/email/security/summary/spam\n- \"List all spoof?\" -> GET /radar/email/security/summary/spoof\n- \"List all threat_category?\" -> GET /radar/email/security/summary/threat_category\n- \"List all tls_version?\" -> GET /radar/email/security/summary/tls_version\n- \"List all tlds?\" -> GET /radar/email/security/top/tlds\n- \"Get malicious details?\" -> GET /radar/email/security/top/tlds/malicious/{malicious}\n- \"Get spam details?\" -> GET /radar/email/security/top/tlds/spam/{spam}\n- \"Get spoof details?\" -> GET /radar/email/security/top/tlds/spoof/{spoof}\n- \"List all asns?\" -> GET /radar/entities/asns\n- \"List all botnet_threat_feed?\" -> GET /radar/entities/asns/botnet_threat_feed\n- \"List all as_set?\" -> GET /radar/entities/asns/{asn}/as_set\n- \"List all rel?\" -> GET /radar/entities/asns/{asn}/rel\n- \"List all geolocations?\" -> GET /radar/geolocations\n- \"Get geolocation details?\" -> GET /radar/geolocations/{geo_id}\n- \"List all bot_class?\" -> GET /radar/http/summary/bot_class\n- \"List all device_type?\" -> GET /radar/http/summary/device_type\n- \"List all http_protocol?\" -> GET /radar/http/summary/http_protocol\n- \"List all os?\" -> GET /radar/http/summary/os\n- \"List all post_quantum?\" -> GET /radar/http/summary/post_quantum\n- \"List all browser?\" -> GET /radar/http/timeseries_groups/browser\n- \"List all browser_family?\" -> GET /radar/http/timeseries_groups/browser_family\n- \"Get bot_class details?\" -> GET /radar/http/top/ases/bot_class/{bot_class}\n- \"Get browser_family details?\" -> GET /radar/http/top/ases/browser_family/{browser_family}\n- \"Get device_type details?\" -> GET /radar/http/top/ases/device_type/{device_type}\n- \"Get http_protocol details?\" -> GET /radar/http/top/ases/http_protocol/{http_protocol}\n- \"Get http_version details?\" -> GET /radar/http/top/ases/http_version/{http_version}\n- \"Get o details?\" -> GET /radar/http/top/ases/os/{os}\n- \"Get tls_version details?\" -> GET /radar/http/top/ases/tls_version/{tls_version}\n- \"List all compromised?\" -> GET /radar/leaked_credential_checks/summary/compromised\n- \"List all origins?\" -> GET /radar/origins\n- \"Get origin details?\" -> GET /radar/origins/{slug}\n- \"List all support?\" -> GET /radar/post_quantum/tls/support\n- \"List all timeseries_groups?\" -> GET /radar/quality/iqi/timeseries_groups\n- \"List all histogram?\" -> GET /radar/quality/speed/histogram\n- \"List all top?\" -> GET /radar/ranking/internet_services/top\n- \"List all domain_categories?\" -> GET /radar/robots_txt/top/domain_categories\n- \"List all directive?\" -> GET /radar/robots_txt/top/user_agents/directive\n- \"Search global?\" -> GET /radar/search/global\n- \"Get tld details?\" -> GET /radar/tlds/{tld}\n- \"List all traffic_anomalies?\" -> GET /radar/traffic_anomalies\n- \"List all ready?\" -> GET /ready\n- \"List all signed-url?\" -> GET /signed-url\n- \"Get tenant details?\" -> GET /tenants/{tenant_id}\n- \"List all account_types?\" -> GET /tenants/{tenant_id}/account_types\n- \"List all entitlements?\" -> GET /tenants/{tenant_id}/entitlements\n- \"List all user?\" -> GET /user\n- \"List all invites?\" -> GET /user/invites\n- \"Get invite details?\" -> GET /user/invites/{invite_id}\n- \"Partially update a invite?\" -> PATCH /user/invites/{invite_id}\n- \"List all tenants?\" -> GET /users/tenants\n- \"List all zones?\" -> GET /zones\n- \"Create a zone?\" -> POST /zones\n- \"List all dashboard?\" -> GET /zones/{zone_identifier}/analytics/dashboard\n- \"Get zone details?\" -> GET /zones/{zone_id}\n- \"Partially update a zone?\" -> PATCH /zones/{zone_id}\n- \"List all service_tokens?\" -> GET /zones/{zone_id}/access/service_tokens\n- \"List all custom_trust_store?\" -> GET /zones/{zone_id}/acm/custom_trust_store\n- \"Create a custom_trust_store?\" -> POST /zones/{zone_id}/acm/custom_trust_store\n- \"Delete a custom_trust_store?\" -> DELETE /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}\n- \"Get custom_trust_store details?\" -> GET /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}\n- \"List all total_tls?\" -> GET /zones/{zone_id}/acm/total_tls\n- \"Create a total_tl?\" -> POST /zones/{zone_id}/acm/total_tls\n- \"List all regional_hostnames?\" -> GET /zones/{zone_id}/addressing/regional_hostnames\n- \"Create a regional_hostname?\" -> POST /zones/{zone_id}/addressing/regional_hostnames\n- \"Delete a regional_hostname?\" -> DELETE /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n- \"Get regional_hostname details?\" -> GET /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n- \"Partially update a regional_hostname?\" -> PATCH /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n- \"List all latency?\" -> GET /zones/{zone_id}/analytics/latency\n- \"List all discovery?\" -> GET /zones/{zone_id}/api_gateway/discovery\n- \"List all operations?\" -> GET /zones/{zone_id}/api_gateway/discovery/operations\n- \"Partially update a operation?\" -> PATCH /zones/{zone_id}/api_gateway/discovery/operations/{operation_id}\n- \"Create a fallthrough?\" -> POST /zones/{zone_id}/api_gateway/expression-template/fallthrough\n- \"List all labels?\" -> GET /zones/{zone_id}/api_gateway/labels\n- \"Get managed details?\" -> GET /zones/{zone_id}/api_gateway/labels/managed/{name}\n- \"Partially update a user?\" -> PATCH /zones/{zone_id}/api_gateway/labels/user/{name}\n- \"Create a operation?\" -> POST /zones/{zone_id}/api_gateway/operations\n- \"Create a label?\" -> POST /zones/{zone_id}/api_gateway/operations/labels\n- \"Delete a operation?\" -> DELETE /zones/{zone_id}/api_gateway/operations/{operation_id}\n- \"Get operation details?\" -> GET /zones/{zone_id}/api_gateway/operations/{operation_id}\n- \"List all schema_validation?\" -> GET /zones/{zone_id}/api_gateway/operations/{operation_id}/schema_validation\n- \"List all schemas?\" -> GET /zones/{zone_id}/api_gateway/schemas\n- \"List all user_schemas?\" -> GET /zones/{zone_id}/api_gateway/user_schemas\n- \"Create a user_schema?\" -> POST /zones/{zone_id}/api_gateway/user_schemas\n- \"List all hosts?\" -> GET /zones/{zone_id}/api_gateway/user_schemas/hosts\n- \"Delete a user_schema?\" -> DELETE /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n- \"Get user_schema details?\" -> GET /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n- \"Partially update a user_schema?\" -> PATCH /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n- \"List all smart_routing?\" -> GET /zones/{zone_id}/argo/smart_routing\n- \"List all tiered_caching?\" -> GET /zones/{zone_id}/argo/tiered_caching\n- \"List all available_plans?\" -> GET /zones/{zone_id}/available_plans\n- \"Get available_plan details?\" -> GET /zones/{zone_id}/available_plans/{plan_identifier}\n- \"List all available_rate_plans?\" -> GET /zones/{zone_id}/available_rate_plans\n- \"List all bot_management?\" -> GET /zones/{zone_id}/bot_management\n- \"List all feedback?\" -> GET /zones/{zone_id}/bot_management/feedback\n- \"Create a feedback?\" -> POST /zones/{zone_id}/bot_management/feedback\n- \"List all cache_reserve?\" -> GET /zones/{zone_id}/cache/cache_reserve\n- \"List all cache_reserve_clear?\" -> GET /zones/{zone_id}/cache/cache_reserve_clear\n- \"Create a cache_reserve_clear?\" -> POST /zones/{zone_id}/cache/cache_reserve_clear\n- \"List all origin_post_quantum_encryption?\" -> GET /zones/{zone_id}/cache/origin_post_quantum_encryption\n- \"List all regional_tiered_cache?\" -> GET /zones/{zone_id}/cache/regional_tiered_cache\n- \"List all tiered_cache_smart_topology_enable?\" -> GET /zones/{zone_id}/cache/tiered_cache_smart_topology_enable\n- \"List all hostname_associations?\" -> GET /zones/{zone_id}/certificate_authorities/hostname_associations\n- \"List all client_certificates?\" -> GET /zones/{zone_id}/client_certificates\n- \"Create a client_certificate?\" -> POST /zones/{zone_id}/client_certificates\n- \"Delete a client_certificate?\" -> DELETE /zones/{zone_id}/client_certificates/{client_certificate_id}\n- \"Get client_certificate details?\" -> GET /zones/{zone_id}/client_certificates/{client_certificate_id}\n- \"Partially update a client_certificate?\" -> PATCH /zones/{zone_id}/client_certificates/{client_certificate_id}\n- \"List all payloads?\" -> GET /zones/{zone_id}/content-upload-scan/payloads\n- \"Create a payload?\" -> POST /zones/{zone_id}/content-upload-scan/payloads\n- \"Delete a payload?\" -> DELETE /zones/{zone_id}/content-upload-scan/payloads/{expression_id}\n- \"List all custom_certificates?\" -> GET /zones/{zone_id}/custom_certificates\n- \"Create a custom_certificate?\" -> POST /zones/{zone_id}/custom_certificates\n- \"Delete a custom_certificate?\" -> DELETE /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n- \"Get custom_certificate details?\" -> GET /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n- \"Partially update a custom_certificate?\" -> PATCH /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n- \"List all custom_hostnames?\" -> GET /zones/{zone_id}/custom_hostnames\n- \"Create a custom_hostname?\" -> POST /zones/{zone_id}/custom_hostnames\n- \"List all fallback_origin?\" -> GET /zones/{zone_id}/custom_hostnames/fallback_origin\n- \"Delete a custom_hostname?\" -> DELETE /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n- \"Get custom_hostname details?\" -> GET /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n- \"Partially update a custom_hostname?\" -> PATCH /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n- \"List all uuid?\" -> GET /zones/{zone_id}/dcv_delegation/uuid\n- \"Search dns_records?\" -> GET /zones/{zone_id}/dns_records\n- \"Create a dns_record?\" -> POST /zones/{zone_id}/dns_records\n- \"List all export?\" -> GET /zones/{zone_id}/dns_records/export\n- \"List all review?\" -> GET /zones/{zone_id}/dns_records/scan/review\n- \"Create a review?\" -> POST /zones/{zone_id}/dns_records/scan/review\n- \"Delete a dns_record?\" -> DELETE /zones/{zone_id}/dns_records/{dns_record_id}\n- \"Get dns_record details?\" -> GET /zones/{zone_id}/dns_records/{dns_record_id}\n- \"Partially update a dns_record?\" -> PATCH /zones/{zone_id}/dns_records/{dns_record_id}\n- \"Update a dns_record?\" -> PUT /zones/{zone_id}/dns_records/{dns_record_id}\n- \"List all routing?\" -> GET /zones/{zone_id}/email/routing\n- \"Create a dn?\" -> POST /zones/{zone_id}/email/routing/dns\n- \"List all catch_all?\" -> GET /zones/{zone_id}/email/routing/rules/catch_all\n- \"List all subdomains?\" -> GET /zones/{zone_id}/email/sending/subdomains\n- \"Delete a subdomain?\" -> DELETE /zones/{zone_id}/email/sending/subdomains/{subdomain_id}\n- \"Get subdomain details?\" -> GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}\n- \"List all environments?\" -> GET /zones/{zone_id}/environments\n- \"Create a environment?\" -> POST /zones/{zone_id}/environments\n- \"Delete a environment?\" -> DELETE /zones/{zone_id}/environments/{environment_id}\n- \"Update a filter?\" -> PUT /zones/{zone_id}/filters/{filter_id}\n- \"List all custom-topics?\" -> GET /zones/{zone_id}/firewall-for-ai/custom-topics\n- \"List all lockdowns?\" -> GET /zones/{zone_id}/firewall/lockdowns\n- \"Create a lockdown?\" -> POST /zones/{zone_id}/firewall/lockdowns\n- \"Delete a lockdown?\" -> DELETE /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n- \"Get lockdown details?\" -> GET /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n- \"Update a lockdown?\" -> PUT /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n- \"List all ua_rules?\" -> GET /zones/{zone_id}/firewall/ua_rules\n- \"Create a ua_rule?\" -> POST /zones/{zone_id}/firewall/ua_rules\n- \"Delete a ua_rule?\" -> DELETE /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n- \"Get ua_rule details?\" -> GET /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n- \"Update a ua_rule?\" -> PUT /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n- \"List all overrides?\" -> GET /zones/{zone_id}/firewall/waf/overrides\n- \"Create a override?\" -> POST /zones/{zone_id}/firewall/waf/overrides\n- \"Delete a override?\" -> DELETE /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n- \"Get override details?\" -> GET /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n- \"Update a override?\" -> PUT /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n- \"List all packages?\" -> GET /zones/{zone_id}/firewall/waf/packages\n- \"Get package details?\" -> GET /zones/{zone_id}/firewall/waf/packages/{package_id}\n- \"Partially update a package?\" -> PATCH /zones/{zone_id}/firewall/waf/packages/{package_id}\n- \"Partially update a group?\" -> PATCH /zones/{zone_id}/firewall/waf/packages/{package_id}/groups/{group_id}\n- \"List all healthchecks?\" -> GET /zones/{zone_id}/healthchecks\n- \"Create a healthcheck?\" -> POST /zones/{zone_id}/healthchecks\n- \"Delete a preview?\" -> DELETE /zones/{zone_id}/healthchecks/preview/{healthcheck_id}\n- \"Delete a healthcheck?\" -> DELETE /zones/{zone_id}/healthchecks/{healthcheck_id}\n- \"Get healthcheck details?\" -> GET /zones/{zone_id}/healthchecks/{healthcheck_id}\n- \"Partially update a healthcheck?\" -> PATCH /zones/{zone_id}/healthchecks/{healthcheck_id}\n- \"Update a healthcheck?\" -> PUT /zones/{zone_id}/healthchecks/{healthcheck_id}\n- \"List all hold?\" -> GET /zones/{zone_id}/hold\n- \"Create a hold?\" -> POST /zones/{zone_id}/hold\n- \"Get setting details?\" -> GET /zones/{zone_id}/hostnames/settings/{setting_id}\n- \"Delete a setting?\" -> DELETE /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}\n- \"Update a setting?\" -> PUT /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}\n- \"List all keyless_certificates?\" -> GET /zones/{zone_id}/keyless_certificates\n- \"Create a keyless_certificate?\" -> POST /zones/{zone_id}/keyless_certificates\n- \"Delete a keyless_certificate?\" -> DELETE /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n- \"Get keyless_certificate details?\" -> GET /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n- \"Partially update a keyless_certificate?\" -> PATCH /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n- \"List all leaked-credential-checks?\" -> GET /zones/{zone_id}/leaked-credential-checks\n- \"Create a leaked-credential-check?\" -> POST /zones/{zone_id}/leaked-credential-checks\n- \"Create a detection?\" -> POST /zones/{zone_id}/leaked-credential-checks/detections\n- \"Delete a detection?\" -> DELETE /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n- \"Get detection details?\" -> GET /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n- \"Update a detection?\" -> PUT /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n- \"List all load_balancers?\" -> GET /zones/{zone_id}/load_balancers\n- \"Create a load_balancer?\" -> POST /zones/{zone_id}/load_balancers\n- \"Delete a load_balancer?\" -> DELETE /zones/{zone_id}/load_balancers/{load_balancer_id}\n- \"Get load_balancer details?\" -> GET /zones/{zone_id}/load_balancers/{load_balancer_id}\n- \"Partially update a load_balancer?\" -> PATCH /zones/{zone_id}/load_balancers/{load_balancer_id}\n- \"Update a load_balancer?\" -> PUT /zones/{zone_id}/load_balancers/{load_balancer_id}\n- \"List all flag?\" -> GET /zones/{zone_id}/logs/control/retention/flag\n- \"Create a flag?\" -> POST /zones/{zone_id}/logs/control/retention/flag\n- \"Get rayid details?\" -> GET /zones/{zone_id}/logs/rayids/{ray_id}\n- \"List all received?\" -> GET /zones/{zone_id}/logs/received\n- \"List all managed_headers?\" -> GET /zones/{zone_id}/managed_headers\n- \"List all origin_tls_client_auth?\" -> GET /zones/{zone_id}/origin_tls_client_auth\n- \"Create a origin_tls_client_auth?\" -> POST /zones/{zone_id}/origin_tls_client_auth\n- \"List all hostnames?\" -> GET /zones/{zone_id}/origin_tls_client_auth/hostnames\n- \"Delete a origin_tls_client_auth?\" -> DELETE /zones/{zone_id}/origin_tls_client_auth/{certificate_id}\n- \"Get origin_tls_client_auth details?\" -> GET /zones/{zone_id}/origin_tls_client_auth/{certificate_id}\n- \"List all page_shield?\" -> GET /zones/{zone_id}/page_shield\n- \"Get connection details?\" -> GET /zones/{zone_id}/page_shield/connections/{connection_id}\n- \"List all cookies?\" -> GET /zones/{zone_id}/page_shield/cookies\n- \"Get cooky details?\" -> GET /zones/{zone_id}/page_shield/cookies/{cookie_id}\n- \"List all pagerules?\" -> GET /zones/{zone_id}/pagerules\n- \"Create a pagerule?\" -> POST /zones/{zone_id}/pagerules\n- \"Delete a pagerule?\" -> DELETE /zones/{zone_id}/pagerules/{pagerule_id}\n- \"Get pagerule details?\" -> GET /zones/{zone_id}/pagerules/{pagerule_id}\n- \"Partially update a pagerule?\" -> PATCH /zones/{zone_id}/pagerules/{pagerule_id}\n- \"Update a pagerule?\" -> PUT /zones/{zone_id}/pagerules/{pagerule_id}\n- \"Create a configuration?\" -> POST /zones/{zone_id}/pay-per-crawl/configuration\n- \"Create a purge_cache?\" -> POST /zones/{zone_id}/purge_cache\n- \"List all rate_limits?\" -> GET /zones/{zone_id}/rate_limits\n- \"Create a rate_limit?\" -> POST /zones/{zone_id}/rate_limits\n- \"Delete a rate_limit?\" -> DELETE /zones/{zone_id}/rate_limits/{rate_limit_id}\n- \"Get rate_limit details?\" -> GET /zones/{zone_id}/rate_limits/{rate_limit_id}\n- \"Update a rate_limit?\" -> PUT /zones/{zone_id}/rate_limits/{rate_limit_id}\n- \"Create a schema?\" -> POST /zones/{zone_id}/schema_validation/schemas\n- \"Delete a schema?\" -> DELETE /zones/{zone_id}/schema_validation/schemas/{schema_id}\n- \"Get schema details?\" -> GET /zones/{zone_id}/schema_validation/schemas/{schema_id}\n- \"Partially update a schema?\" -> PATCH /zones/{zone_id}/schema_validation/schemas/{schema_id}\n- \"Update a operation?\" -> PUT /zones/{zone_id}/schema_validation/settings/operations/{operation_id}\n- \"Create a force_axfr?\" -> POST /zones/{zone_id}/secondary_dns/force_axfr\n- \"List all incoming?\" -> GET /zones/{zone_id}/secondary_dns/incoming\n- \"Create a incoming?\" -> POST /zones/{zone_id}/secondary_dns/incoming\n- \"List all outgoing?\" -> GET /zones/{zone_id}/secondary_dns/outgoing\n- \"Create a outgoing?\" -> POST /zones/{zone_id}/secondary_dns/outgoing\n- \"Create a force_notify?\" -> POST /zones/{zone_id}/secondary_dns/outgoing/force_notify\n- \"List all securitytxt?\" -> GET /zones/{zone_id}/security-center/securitytxt\n- \"List all aegis?\" -> GET /zones/{zone_id}/settings/aegis\n- \"List all fonts?\" -> GET /zones/{zone_id}/settings/fonts\n- \"List all origin_h2_max_streams?\" -> GET /zones/{zone_id}/settings/origin_h2_max_streams\n- \"List all origin_max_http_version?\" -> GET /zones/{zone_id}/settings/origin_max_http_version\n- \"List all rum?\" -> GET /zones/{zone_id}/settings/rum\n- \"List all speed_brain?\" -> GET /zones/{zone_id}/settings/speed_brain\n- \"List all ssl_automatic_mode?\" -> GET /zones/{zone_id}/settings/ssl_automatic_mode\n- \"List all default?\" -> GET /zones/{zone_id}/settings/zaraz/default\n- \"Create a publish?\" -> POST /zones/{zone_id}/settings/zaraz/publish\n- \"List all workflow?\" -> GET /zones/{zone_id}/settings/zaraz/workflow\n- \"Partially update a setting?\" -> PATCH /zones/{zone_id}/settings/{setting_id}\n- \"List all smart_shield?\" -> GET /zones/{zone_id}/smart_shield\n- \"List all snippets?\" -> GET /zones/{zone_id}/snippets\n- \"List all snippet_rules?\" -> GET /zones/{zone_id}/snippets/snippet_rules\n- \"Delete a snippet?\" -> DELETE /zones/{zone_id}/snippets/{snippet_name}\n- \"Get snippet details?\" -> GET /zones/{zone_id}/snippets/{snippet_name}\n- \"Update a snippet?\" -> PUT /zones/{zone_id}/snippets/{snippet_name}\n- \"List all current?\" -> GET /zones/{zone_id}/spectrum/analytics/aggregate/current\n- \"List all availabilities?\" -> GET /zones/{zone_id}/speed_api/availabilities\n- \"List all pages?\" -> GET /zones/{zone_id}/speed_api/pages\n- \"List all tests?\" -> GET /zones/{zone_id}/speed_api/pages/{url}/tests\n- \"Create a test?\" -> POST /zones/{zone_id}/speed_api/pages/{url}/tests\n- \"Get test details?\" -> GET /zones/{zone_id}/speed_api/pages/{url}/tests/{test_id}\n- \"List all trend?\" -> GET /zones/{zone_id}/speed_api/pages/{url}/trend\n- \"Delete a schedule?\" -> DELETE /zones/{zone_id}/speed_api/schedule/{url}\n- \"Get schedule details?\" -> GET /zones/{zone_id}/speed_api/schedule/{url}\n- \"Create a analyze?\" -> POST /zones/{zone_id}/ssl/analyze\n- \"List all certificate_packs?\" -> GET /zones/{zone_id}/ssl/certificate_packs\n- \"Create a order?\" -> POST /zones/{zone_id}/ssl/certificate_packs/order\n- \"Delete a certificate_pack?\" -> DELETE /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n- \"Get certificate_pack details?\" -> GET /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n- \"Partially update a certificate_pack?\" -> PATCH /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n- \"List all recommendation?\" -> GET /zones/{zone_id}/ssl/recommendation\n- \"List all verification?\" -> GET /zones/{zone_id}/ssl/verification\n- \"Partially update a verification?\" -> PATCH /zones/{zone_id}/ssl/verification/{certificate_pack_id}\n- \"List all subscription?\" -> GET /zones/{zone_id}/subscription\n- \"List all url_normalization?\" -> GET /zones/{zone_id}/url_normalization\n- \"Create a waiting_room?\" -> POST /zones/{zone_id}/waiting_rooms\n- \"Delete a waiting_room?\" -> DELETE /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n- \"Get waiting_room details?\" -> GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n- \"Partially update a waiting_room?\" -> PATCH /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n- \"Update a waiting_room?\" -> PUT /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n- \"Create a event?\" -> POST /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events\n- \"Delete a event?\" -> DELETE /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n- \"Update a event?\" -> PUT /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n- \"List all details?\" -> GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}/details\n- \"List all content_list?\" -> GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Cloudflare API\n@base https://api.cloudflare.com/client/v4\n@version 4.0.0\n@auth ApiKey X-Auth-Email in header | ApiKey X-Auth-Key in header | Bearer bearer | ApiKey X-Auth-User-Service-Key in header\n@endpoints 2722\n@hint download_for_search\n@toc accounts(1800), certificates(4), internal(1), ips(1), live(1), memberships(4), organizations(15), radar(268), ready(1), signed-url(1), system(11), tenants(5), user(46), users(1), zones(563)\n\n@group accounts\n@endpoint GET /accounts\n@desc List Accounts\n@optional {name: str, page: num=1, per_page: num=20, direction: str(asc/desc)}\n@returns(200) List Accounts response\n@errors {4XX: List Accounts response failure}\n\n@endpoint POST /accounts\n@desc Create an account\n@required {name: str # Account name}\n@optional {type: any(standard/enterprise), unit: map{id: str} # information related to the tenant unit, and optionally, an id of the unit to create the account on. see https://developers.cloudflare.com/tenant/how-to/manage-accounts/}\n@returns(200) Account Creation Success Response\n@errors {4XX: Account Creation Failure Response}\n\n@endpoint POST /accounts/move\n@desc Batch move accounts\n@required {account_ids: [str] # Move these accounts to the destination organization., destination_organization_id: str # Move accounts to this organization ID.}\n@returns(200) {errors: [map], messages: [map], result: map{statuses: map{message: str, moved: bool, tag: str}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /accounts/{accountId}/resource-library/applications\n@desc Get  applications\n@required {accountId: str # Account ID.}\n@optional {filter: str # Filter applications using key:value format. Supported filter keys: - name: Filter by application name (e.g., name:HR) - id: Filter by application ID (e.g., id:0b63249c-95bf-4cc0-a7cc-d7faaaf1dac0) - human_id: Filter by human-readable ID (e.g., human_id:HR) - hostname: Filter by hostname or support domain (e.g., hostname:portal.example.com) - source: Filter by application source name (e.g., source:cloudflare) - ip_subnet: Filter by IP subnet in CIDR notation (e.g., ip_subnet:192.168.1.0/24). ., limit: int=10 # Limit of number of results to return., offset: int=0 # Offset of results to return., order_by: str # Order by result by field name and order (e.g., name:asc).}\n@returns(200) Get the application response.\n@errors {4XX: Get application response failure.}\n\n@endpoint POST /accounts/{accountId}/resource-library/applications\n@desc Create application\n@required {accountId: str # Account ID., application_type_id: str # Provide as string to perform a lookup to check if the source exists., human_id: str # Returns the human readable ID., name: str # Returns the application name.}\n@optional {hostnames: any, ip_subnets: [str] # Returns the list of IP subnets for the application., port_protocols: [str] # Returns the list of port protocols for the application., support_domains: [str] # Returns the list of support domains for the application.}\n@returns(201) Created.\n@errors {4XX: Create application response failure.}\n\n@endpoint GET /accounts/{accountId}/resource-library/applications/{id}\n@desc Get application By Id\n@required {accountId: str # Account ID., id: str # Application ID.}\n@returns(200) Get the application response.\n@errors {4XX: Get application by id response failure.}\n\n@endpoint PATCH /accounts/{accountId}/resource-library/applications/{id}\n@desc Update application version\n@required {accountId: str # Account ID., id: str # Application ID.}\n@optional {hostnames: [str] # Returns the list of hostnames for the application., ip_subnets: [str] # Returns the list of IP subnets for the application., port_protocols: [str] # Returns the list of port protocols for the application., support_domains: [str] # Returns the list of support domains for the application.}\n@returns(200) Update the application response.\n@errors {4XX: Update application version response failure.}\n\n@endpoint GET /accounts/{accountId}/resource-library/categories\n@desc Get all application categories\n@required {accountId: str # Account ID.}\n@returns(200) Get all application categories response.\n@errors {4XX: Get application categories response failure.}\n\n@endpoint GET /accounts/{accountId}/resource-library/categories/{id}\n@desc Show application category by ID\n@required {accountId: str # Account ID., id: str # Application category ID.}\n@returns(200) Get application category by id response.\n@errors {4XX: Get application category by id response failure.}\n\n@endpoint GET /accounts/{account_identifier}/custom_pages\n@desc List custom pages\n@required {account_identifier: str}\n@returns(200) List custom pages response\n@errors {4XX: List custom pages response failure}\n\n@endpoint GET /accounts/{account_identifier}/custom_pages/assets\n@desc List custom assets\n@required {account_identifier: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) List custom assets response\n@errors {4XX: List custom assets response failure}\n\n@endpoint POST /accounts/{account_identifier}/custom_pages/assets\n@desc Create a custom asset\n@required {account_identifier: str, description: str # A short description of the custom asset., name: str # The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_)., url: str(uri) # The URL where the asset content is fetched from.}\n@returns(200) Create custom asset response\n@errors {4XX: Create custom asset response failure}\n\n@endpoint DELETE /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n@desc Delete a custom asset\n@required {asset_name: str, account_identifier: str}\n@returns(204) Delete a custom asset response\n@errors {4XX: Delete a custom asset response failure}\n\n@endpoint GET /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n@desc Get a custom asset\n@required {asset_name: str, account_identifier: str}\n@returns(200) Get a custom asset response\n@errors {4XX: Get a custom asset response failure}\n\n@endpoint PUT /accounts/{account_identifier}/custom_pages/assets/{asset_name}\n@desc Update a custom asset\n@required {asset_name: str, account_identifier: str, description: str # A short description of the custom asset., url: str(uri) # The URL where the asset content is fetched from.}\n@returns(200) Update a custom asset response\n@errors {4XX: Update a custom asset response failure}\n\n@endpoint GET /accounts/{account_identifier}/custom_pages/{identifier}\n@desc Get a custom page\n@required {identifier: str, account_identifier: str}\n@returns(200) Get a custom page response\n@errors {4XX: Get a custom page response failure}\n\n@endpoint PUT /accounts/{account_identifier}/custom_pages/{identifier}\n@desc Update a custom page\n@required {identifier: str, account_identifier: str, state: str(default/customized) # The custom page state., url: str(uri)= # The URL associated with the custom page.}\n@returns(200) Update a custom page response\n@errors {4XX: Update a custom page response failure}\n\n@endpoint DELETE /accounts/{account_id}\n@desc Delete a specific account\n@required {account_id: str}\n@returns(200) Account Deletion Success Response\n@errors {4XX: Account Deletion Failure Response}\n\n@endpoint GET /accounts/{account_id}\n@desc Account Details\n@required {account_id: any}\n@returns(200) Account Details response\n@errors {4XX: Account Details response failure}\n\n@endpoint PUT /accounts/{account_id}\n@desc Update Account\n@required {account_id: any}\n@returns(200) Update Account response\n@errors {4XX: Update Account response failure}\n\n@endpoint GET /accounts/{account_id}/abuse-reports\n@desc List abuse reports\n@required {account_id: str # Cloudflare Account ID}\n@optional {page: int # Where in pagination to start listing abuse reports, per_page: int # How many abuse reports per page to list, sort: str # A property to sort by, followed by the order (id, cdate, domain, type, status), domain: str # Filter by domain name related to the abuse report, created_before: str # Returns reports created before the specified date, created_after: str # Returns reports created after the specified date, status: str # Filter by the status of the report., type: str # Filter by the type of the report., mitigation_status: str # Filter reports that have any mitigations in the given status.}\n@returns(200) {errors: [map], messages: [map], result: map{reports: [map]}, result_info: map{count: num, page: num, per_page: num, total_count: num, total_pages: num}, success: bool} # Abuse report list successful\n@errors {500: Failed to retrieve abuse reports}\n\n@endpoint GET /accounts/{account_id}/abuse-reports/{report_id}/emails\n@desc List abuse report emails\n@required {account_id: str # Cloudflare Account ID, report_id: str # Abuse Report ID}\n@optional {page: int # Page number to retrieve (default 1), per_page: int # Number of emails per page (default 20, max 100)}\n@returns(200) {errors: [map], messages: [map], result: map{emails: [map]}, result_info: map{count: num, page: num, per_page: num, total_count: num, total_pages: num}, success: bool} # List abuse report emails successful\n@errors {400: Bad request - invalid parameters or report not found, 500: Failed to list abuse report emails}\n\n@endpoint GET /accounts/{account_id}/abuse-reports/{report_id}/mitigations\n@desc List abuse report mitigations\n@required {account_id: str # Cloudflare Account ID, report_id: str # Abuse Report ID}\n@optional {page: int # Where in pagination to start listing abuse reports, per_page: int # How many abuse reports per page to list, sort: str(type,asc/type,desc/effective_date,asc/effective_date,desc/status,asc/status,desc/entity_type,asc/entity_type,desc) # A property to sort by, followed by the order, type: str # Filter by the type of mitigation. This filter parameter can be specified multiple times to include multiple types of mitigations in the result set, e.g. ?type=rate_limit_cache&type=legal_block., effective_before: str # Returns mitigations that were dispatched before the given date, effective_after: str # Returns mitigation that were dispatched after the given date, status: str # Filter by the status of the mitigation., entity_type: str # Filter by the type of entity the mitigation impacts.}\n@returns(200) {errors: [map], messages: [map], result: map{mitigations: [map]}, result_info: map{count: num, page: num, per_page: num, total_count: num, total_pages: num}, success: bool} # List abuse report mitigations successful\n@errors {500: Failed to list abuse report mitigations}\n\n@endpoint POST /accounts/{account_id}/abuse-reports/{report_id}/mitigations/appeal\n@desc Request review on mitigations\n@required {account_id: str # Cloudflare Account ID, report_id: str # Abuse Report ID, appeals: [map{id!: str, reason!: str}] # List of mitigations to appeal.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: num, page: num, per_page: num, total_count: num, total_pages: num}, success: bool} # Mitigation appeals received\n@errors {500: Failed to request review on delayed action.}\n\n@endpoint GET /accounts/{account_id}/abuse-reports/{report_param}\n@desc Abuse Report Details\n@required {account_id: str # Cloudflare Account ID, report_param: str # Identifier of the abuse report}\n@returns(200) {errors: [map], messages: [map], result: map{cdate: str, domain: str, id: str, justification: str, mitigation_summary: map{accepted_url_count: int, active_count: int, external_host_notified: bool, in_review_count: int, pending_count: int}, original_work: str, status: str, submitter: map{company: str, email: str, name: str, telephone: str}, type: str, urls: [str]}, success: bool} # Report submitted successfully\n@errors {400: Report submitted with an error, 500: Report submitted with an error}\n\n@endpoint POST /accounts/{account_id}/abuse-reports/{report_param}\n@desc Submit an abuse report\n@required {account_id: str # Cloudflare Account ID, report_param: str # The report type to be submitted. Example: abuse_general}\n@returns(200) {abuse_rand: str, request: map{act: str}, result: str} # Report submitted successfully\n@errors {400: Report submitted with an error, 500: Report submitted with an error}\n\n@endpoint GET /accounts/{account_id}/access/ai-controls/mcp/portals\n@desc List MCP Portals\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, search: str}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/access/ai-controls/mcp/portals\n@desc Create a new MCP Portal\n@required {account_id: str, hostname: str, id: str # portal id, name: str}\n@optional {allow_code_mode: bool=true # Allow remote code execution in Dynamic Workers (beta), description: str, secure_web_gateway: bool=false # Route outbound MCP traffic through Zero Trust Secure Web Gateway, servers: [map{default_disabled: bool, on_behalf: bool, server_id!: str, updated_prompts: [map], updated_tools: [map]}]}\n@returns(201) {result: map{allow_code_mode: bool, created_at: str(date-time), created_by: str, description: str, hostname: str, id: str, modified_at: str(date-time), modified_by: str, name: str, secure_web_gateway: bool}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n@desc Delete a MCP Portal\n@required {account_id: str, id: str}\n@returns(200) {result: map{allow_code_mode: bool, created_at: str(date-time), created_by: str, description: str, hostname: str, id: str, modified_at: str(date-time), modified_by: str, name: str, secure_web_gateway: bool}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n@desc Read details of an MCP Portal\n@required {id: str, account_id: str}\n@returns(200) {result: map{allow_code_mode: bool, created_at: str(date-time), created_by: str, description: str, hostname: str, id: str, modified_at: str(date-time), modified_by: str, name: str, secure_web_gateway: bool, servers: [map]}, success: bool} # Returns a single object if found\n@errors {404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/access/ai-controls/mcp/portals/{id}\n@desc Update a MCP Portal\n@required {id: str, account_id: str}\n@optional {allow_code_mode: bool=true # Allow remote code execution in Dynamic Workers (beta), description: str, hostname: str, name: str, secure_web_gateway: bool=false # Route outbound MCP traffic through Zero Trust Secure Web Gateway, servers: [map{default_disabled: bool, on_behalf: bool, server_id!: str, updated_prompts: [map], updated_tools: [map]}]}\n@returns(200) {result: map{allow_code_mode: bool, created_at: str(date-time), created_by: str, description: str, hostname: str, id: str, modified_at: str(date-time), modified_by: str, name: str, secure_web_gateway: bool}, success: bool} # Returns the updated Object\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint GET /accounts/{account_id}/access/ai-controls/mcp/servers\n@desc List MCP Servers\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, search: str}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/access/ai-controls/mcp/servers\n@desc Create a new MCP Server\n@required {account_id: str, auth_type: str(oauth/bearer/unauthenticated), hostname: str(uri), id: str # server id, name: str}\n@optional {auth_credentials: str, description: str}\n@returns(201) {result: map{auth_type: str, created_at: str(date-time), created_by: str, description: str?, error: str, hostname: str(uri), id: str, last_successful_sync: str(date-time), last_synced: str(date-time), modified_at: str(date-time), modified_by: str, name: str, prompts: [map], status: str, tools: [map]}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n@desc Delete a MCP Server\n@required {account_id: str, id: str}\n@returns(200) {result: map{auth_type: str, created_at: str(date-time), created_by: str, description: str?, error: str, hostname: str(uri), id: str, last_successful_sync: str(date-time), last_synced: str(date-time), modified_at: str(date-time), modified_by: str, name: str, prompts: [map], status: str, tools: [map]}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n@desc Read the details of a MCP Server\n@required {account_id: str, id: str}\n@returns(200) {result: map{auth_type: str, created_at: str(date-time), created_by: str, description: str?, error: str, hostname: str(uri), id: str, last_successful_sync: str(date-time), last_synced: str(date-time), modified_at: str(date-time), modified_by: str, name: str, prompts: [map], status: str, tools: [map]}, success: bool} # Returns a single object if found\n@errors {404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/access/ai-controls/mcp/servers/{id}\n@desc Update a MCP Server\n@required {id: str, account_id: str}\n@optional {auth_credentials: str, description: str, name: str}\n@returns(200) {result: map{auth_type: str, created_at: str(date-time), created_by: str, description: str?, error: str, hostname: str(uri), id: str, last_successful_sync: str(date-time), last_synced: str(date-time), modified_at: str(date-time), modified_by: str, name: str, prompts: [map], status: str, tools: [map]}, success: bool} # Returns the updated Object\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint POST /accounts/{account_id}/access/ai-controls/mcp/servers/{id}/sync\n@desc Sync MCP Server Capabilities\n@required {id: str, account_id: str}\n@returns(200) {result: map, success: bool}\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/access/apps\n@desc List Access applications\n@required {account_id: str}\n@optional {name: str, domain: str, aud: str, target_attributes: str, exact: bool, search: str, page: int=1, per_page: int=1000}\n@returns(200) List Access applications response\n@errors {4XX: List Access applications response failure}\n\n@endpoint POST /accounts/{account_id}/access/apps\n@desc Add an Access application\n@required {account_id: str}\n@returns(201) Add an Access application response\n@errors {4XX: Add an Access application response failure}\n\n@endpoint GET /accounts/{account_id}/access/apps/ca\n@desc List short-lived certificate CAs\n@required {account_id: str}\n@optional {page: int=1, per_page: int=100}\n@returns(200) List short-lived certificate CAs response\n@errors {4XX: List short-lived certificate CAs response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/apps/{app_id}\n@desc Delete an Access application\n@required {app_id: any, account_id: str}\n@returns(202) Delete an Access application response\n@errors {4XX: Delete an Access application response failure}\n\n@endpoint GET /accounts/{account_id}/access/apps/{app_id}\n@desc Get an Access application\n@required {app_id: any, account_id: str}\n@returns(200) Get an Access application response\n@errors {4XX: Get an Access application response failure}\n\n@endpoint PUT /accounts/{account_id}/access/apps/{app_id}\n@desc Update an Access application\n@required {app_id: any, account_id: str}\n@returns(200) Update an Access application response\n@errors {4XX: Update an Access application response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/apps/{app_id}/ca\n@desc Delete a short-lived certificate CA\n@required {app_id: str, account_id: str}\n@returns(202) Delete a short-lived certificate CA response\n@errors {4XX: Delete a short-lived certificate CA response failure}\n\n@endpoint GET /accounts/{account_id}/access/apps/{app_id}/ca\n@desc Get a short-lived certificate CA\n@required {app_id: str, account_id: str}\n@returns(200) Get a short-lived certificate CA response\n@errors {4XX: Get a short-lived certificate CA response failure}\n\n@endpoint POST /accounts/{account_id}/access/apps/{app_id}/ca\n@desc Create a short-lived certificate CA\n@required {app_id: str, account_id: str}\n@returns(200) Create a short-lived certificate CA response\n@errors {4XX: Create a short-lived certificate CA response failure}\n\n@endpoint GET /accounts/{account_id}/access/apps/{app_id}/policies\n@desc List Access application policies\n@required {app_id: str # The application ID., account_id: str}\n@optional {page: int=1, per_page: int=200}\n@returns(200) List Access application policies response\n@errors {4XX: List Access application policies response failure}\n\n@endpoint POST /accounts/{account_id}/access/apps/{app_id}/policies\n@desc Create an Access application policy\n@required {app_id: str # The application ID., account_id: str}\n@returns(201) Create an Access application policy response.\n@errors {4XX: Create an Access application policy response failure.}\n\n@endpoint DELETE /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Delete an Access application policy\n@required {app_id: str # The application ID., policy_id: str # The policy ID., account_id: str}\n@returns(202) Delete an Access application policy response.\n@errors {4XX: Delete an Access application policy response failure.}\n\n@endpoint GET /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Get an Access application policy\n@required {app_id: str # The application ID., policy_id: str # The policy ID., account_id: str}\n@returns(200) Get an Access policy response.\n@errors {4XX: Get an Access policy response failure.}\n\n@endpoint PUT /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Update an Access application policy\n@required {app_id: str # The application ID., policy_id: str # The policy ID., account_id: str}\n@returns(200) Update an Access application policy response.\n@errors {4XX: Update an Access application policy response failure.}\n\n@endpoint PUT /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}/make_reusable\n@desc Convert an Access application policy to a reusable policy\n@required {app_id: str # The application ID., policy_id: str # The policy ID., account_id: str}\n@returns(200) Convert an Access application policy to a reusable policy\n@errors {4XX: Convert an Access application policy to a reusable policy failure.}\n\n@endpoint POST /accounts/{account_id}/access/apps/{app_id}/revoke_tokens\n@desc Revoke application tokens\n@required {app_id: any, account_id: str}\n@returns(202) Revoke application tokens response\n@errors {4XX: Revoke application tokens response failure}\n\n@endpoint PATCH /accounts/{account_id}/access/apps/{app_id}/settings\n@desc Update Access application settings\n@required {app_id: any, account_id: str}\n@optional {allow_iframe: bool # Enables loading application content in an iFrame., skip_interstitial: bool # Enables automatic authentication through cloudflared.}\n@returns(202) Update Access application settings response\n@errors {4XX: Update Access application settings response failure}\n\n@endpoint PUT /accounts/{account_id}/access/apps/{app_id}/settings\n@desc Update Access application settings\n@required {app_id: any, account_id: str}\n@optional {allow_iframe: bool # Enables loading application content in an iFrame., skip_interstitial: bool # Enables automatic authentication through cloudflared.}\n@returns(202) Update Access application settings response\n@errors {4XX: Update Access application settings response failure}\n\n@endpoint GET /accounts/{account_id}/access/apps/{app_id}/user_policy_checks\n@desc Test Access policies\n@required {app_id: any, account_id: str}\n@returns(200) Test Access policies response\n@errors {4XX: Test Access policies response failure}\n\n@endpoint GET /accounts/{account_id}/access/bookmarks\n@desc List Bookmark applications\n@required {account_id: str}\n@returns(200) List Bookmark applications response\n@errors {4XX: List Bookmark applications response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/bookmarks/{bookmark_id}\n@desc Delete a Bookmark application\n@required {bookmark_id: str, account_id: str}\n@returns(200) Delete a Bookmark application response\n@errors {4XX: Delete a Bookmark application response failure}\n\n@endpoint GET /accounts/{account_id}/access/bookmarks/{bookmark_id}\n@desc Get a Bookmark application\n@required {bookmark_id: str, account_id: str}\n@returns(200) Get a Bookmark application response\n@errors {4XX: Get a Bookmark application response failure}\n\n@endpoint POST /accounts/{account_id}/access/bookmarks/{bookmark_id}\n@desc Create a Bookmark application\n@required {bookmark_id: str, account_id: str}\n@returns(200) Create a Bookmark application response\n@errors {4XX: Create a Bookmark application response failure}\n\n@endpoint PUT /accounts/{account_id}/access/bookmarks/{bookmark_id}\n@desc Update a Bookmark application\n@required {bookmark_id: str, account_id: str}\n@returns(200) Update a Bookmark application response\n@errors {4XX: Update a Bookmark application response failure}\n\n@endpoint GET /accounts/{account_id}/access/certificates\n@desc List mTLS certificates\n@required {account_id: str}\n@optional {page: int=1, per_page: int=50}\n@returns(200) List mTLS certificates response\n@errors {4XX: List mTLS certificates response failure}\n\n@endpoint POST /accounts/{account_id}/access/certificates\n@desc Add an mTLS certificate\n@required {account_id: str, certificate: str # The certificate content., name: str # The name of the certificate.}\n@optional {associated_hostnames: [str] # The hostnames of the applications that will use this certificate.}\n@returns(201) Add an mTLS certificate response\n@errors {4XX: Add an mTLS certificate response failure}\n\n@endpoint GET /accounts/{account_id}/access/certificates/settings\n@desc List all mTLS hostname settings\n@required {account_id: str}\n@returns(200) List mTLS hostname settings response\n@errors {4XX: List mTLS hostname settings response failure}\n\n@endpoint PUT /accounts/{account_id}/access/certificates/settings\n@desc Update an mTLS certificate's hostname settings\n@required {account_id: str, settings: [map{china_network!: bool, client_certificate_forwarding!: bool, hostname!: str}]}\n@returns(202) Update an mTLS certificates hostname settings response\n@errors {4XX: Update an mTLS certificates hostname settings failure}\n\n@endpoint DELETE /accounts/{account_id}/access/certificates/{certificate_id}\n@desc Delete an mTLS certificate\n@required {certificate_id: str, account_id: str}\n@returns(200) Delete an mTLS certificate response\n@errors {4XX: Delete an mTLS certificate response failure}\n\n@endpoint GET /accounts/{account_id}/access/certificates/{certificate_id}\n@desc Get an mTLS certificate\n@required {certificate_id: str, account_id: str}\n@returns(200) Get an mTLS certificate response\n@errors {4XX: Get an mTLS certificate response failure}\n\n@endpoint PUT /accounts/{account_id}/access/certificates/{certificate_id}\n@desc Update an mTLS certificate\n@required {certificate_id: str, account_id: str, associated_hostnames: [str] # The hostnames of the applications that will use this certificate.}\n@optional {name: str # The name of the certificate.}\n@returns(200) Update an mTLS certificate response\n@errors {4XX: Update an mTLS certificate response failure}\n\n@endpoint GET /accounts/{account_id}/access/custom_pages\n@desc List custom pages\n@required {account_id: str}\n@optional {page: int=1, per_page: int=50}\n@returns(200) List custom pages response\n@errors {4XX: List custom pages response failure}\n\n@endpoint POST /accounts/{account_id}/access/custom_pages\n@desc Create a custom page\n@required {account_id: str, custom_html: str # Custom page HTML., name: str # Custom page name., type: str(identity_denied/forbidden) # Custom page type.}\n@optional {app_count: int # Number of apps the custom page is assigned to., created_at: any, uid: str # UUID., updated_at: any}\n@returns(201) Create a custom page response\n@errors {4XX: Create a custom page response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/custom_pages/{custom_page_id}\n@desc Delete a custom page\n@required {custom_page_id: str, account_id: str}\n@returns(202) Delete a custom page response\n@errors {4XX: Delete a custom page response failure}\n\n@endpoint GET /accounts/{account_id}/access/custom_pages/{custom_page_id}\n@desc Get a custom page\n@required {custom_page_id: str, account_id: str}\n@returns(200) Get a custom page response\n@errors {4XX: Get a custom page response failure}\n\n@endpoint PUT /accounts/{account_id}/access/custom_pages/{custom_page_id}\n@desc Update a custom page\n@required {custom_page_id: str, account_id: str, custom_html: str # Custom page HTML., name: str # Custom page name., type: str(identity_denied/forbidden) # Custom page type.}\n@optional {app_count: int # Number of apps the custom page is assigned to., created_at: any, uid: str # UUID., updated_at: any}\n@returns(200) Update a custom page response\n@errors {4XX: Update a custom page response failure}\n\n@endpoint GET /accounts/{account_id}/access/gateway_ca\n@desc List SSH Certificate Authorities (CA)\n@required {account_id: str}\n@returns(200) List SSH Certificate Authorities (CA) response\n@errors {4XX: List SSH Certificate Authorities (CA) response failure}\n\n@endpoint POST /accounts/{account_id}/access/gateway_ca\n@desc Add a new SSH Certificate Authority (CA)\n@required {account_id: str}\n@returns(201) Add a new SSH Certificate Authority (CA) response\n@errors {4XX: Add a new SSH Certificate Authority (CA) response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/gateway_ca/{certificate_id}\n@desc Delete an SSH Certificate Authority (CA)\n@required {certificate_id: str, account_id: str}\n@returns(200) Delete an SSH Certificate Authority (CA) response\n@errors {4XX: Delete an SSH Certificate Authority (CA) response failure}\n\n@endpoint GET /accounts/{account_id}/access/groups\n@desc List Access groups\n@required {account_id: str}\n@optional {name: str, search: str, page: int=1, per_page: int=1000}\n@returns(200) List Access groups response\n@errors {4XX: List Access groups response failure}\n\n@endpoint POST /accounts/{account_id}/access/groups\n@desc Create an Access group\n@required {account_id: str, include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access group.}\n@optional {exclude: [map] # Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules., is_default: bool # Whether this is the default group, require: [map] # Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.}\n@returns(201) Create an Access group response\n@errors {4XX: Create an Access group response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/groups/{group_id}\n@desc Delete an Access group\n@required {group_id: str, account_id: str}\n@returns(202) Delete an Access group response\n@errors {4XX: Delete an Access group response failure}\n\n@endpoint GET /accounts/{account_id}/access/groups/{group_id}\n@desc Get an Access group\n@required {group_id: str, account_id: str}\n@returns(200) Get an Access group response\n@errors {4XX: Get an Access group response failure}\n\n@endpoint PUT /accounts/{account_id}/access/groups/{group_id}\n@desc Update an Access group\n@required {group_id: str, account_id: str, include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access group.}\n@optional {exclude: [map] # Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules., is_default: bool # Whether this is the default group, require: [map] # Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.}\n@returns(200) Update an Access group response\n@errors {4XX: Update an Access group response failure}\n\n@endpoint GET /accounts/{account_id}/access/identity_providers\n@desc List Access identity providers\n@required {account_id: str}\n@optional {scim_enabled: str, page: int=1, per_page: int=200}\n@returns(200) List Access identity providers response\n@errors {4XX: List Access identity providers response failure}\n\n@endpoint POST /accounts/{account_id}/access/identity_providers\n@desc Add an Access identity provider\n@required {account_id: str}\n@returns(201) Add an Access identity provider response\n@errors {4XX: Add an Access identity provider response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n@desc Delete an Access identity provider\n@required {identity_provider_id: str, account_id: str}\n@returns(202) Delete an Access identity provider response\n@errors {4XX: Delete an Access identity provider response failure}\n\n@endpoint GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n@desc Get an Access identity provider\n@required {identity_provider_id: str, account_id: str}\n@returns(200) Get an Access identity provider response\n@errors {4XX: Get an Access identity provider response failure}\n\n@endpoint PUT /accounts/{account_id}/access/identity_providers/{identity_provider_id}\n@desc Update an Access identity provider\n@required {identity_provider_id: str, account_id: str}\n@returns(200) Update an Access identity provider response\n@errors {4XX: Update an Access identity provider response failure}\n\n@endpoint GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/groups\n@desc List SCIM Group resources\n@required {identity_provider_id: str, account_id: str}\n@optional {cf_resource_id: str, idp_resource_id: str, name: str, page: int=1, per_page: int=100}\n@returns(200) List SCIM Group resources response\n@errors {4XX: List SCIM Group resources response failure}\n\n@endpoint GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/users\n@desc List SCIM User resources\n@required {identity_provider_id: str, account_id: str}\n@optional {cf_resource_id: str, idp_resource_id: str, username: str, email: str, name: str, page: int=1, per_page: int=100}\n@returns(200) List SCIM User resources response\n@errors {4XX: List SCIM User resources response failure}\n\n@endpoint GET /accounts/{account_id}/access/keys\n@desc Get the Access key configuration\n@required {account_id: str}\n@returns(200) Get the Access key configuration response\n@errors {4XX: Get the Access key configuration response failure}\n\n@endpoint PUT /accounts/{account_id}/access/keys\n@desc Update the Access key configuration\n@required {account_id: str, key_rotation_interval_days: num # The number of days between key rotations.}\n@returns(200) Update the Access key configuration response\n@errors {4XX: Update the Access key configuration response failure}\n\n@endpoint POST /accounts/{account_id}/access/keys/rotate\n@desc Rotate Access keys\n@required {account_id: str}\n@returns(200) Rotate Access keys response\n@errors {4XX: Rotate Access keys response failure}\n\n@endpoint GET /accounts/{account_id}/access/logs/access_requests\n@desc Get Access authentication logs\n@required {account_id: str}\n@optional {limit: int=25 # The maximum number of log entries to retrieve., direction: any(desc/asc)=desc # The chronological sorting order for the logs., since: str(date-time) # The earliest event timestamp to query., until: str(date-time) # The latest event timestamp to query., page: int=1, per_page: int=25, email: str(email) # Filter by user email. Defaults to substring matching. To force exact matching, set `email_exact=true`. Example (default): `email=@example.com` returns all events with that domain. Example (exact): `email=user@example.com&email_exact=true` returns only that user., email_exact: bool=false # When true, `email` is matched exactly instead of substring matching., user_id: str(uuid) # Filter by user UUID., allowedOp: str(eq/neq)=eq # Operator for the `allowed` filter., country_codeOp: str(eq/neq)=eq # Operator for the `country_code` filter., app_typeOp: str(eq/neq)=eq # Operator for the `app_type` filter., app_uidOp: str(eq/neq)=eq # Operator for the `app_uid` filter., ray_idOp: str(eq/neq)=eq # Operator for the `ray_id` filter., emailOp: str(eq/neq)=eq # Operator for the `email` filter., idpOp: str(eq/neq)=eq # Operator for the `idp` filter., non_identityOp: str(eq/neq)=eq # Operator for the `non_identity` filter., user_idOp: str(eq/neq)=eq # Operator for the `user_id` filter., fields: str # Comma-separated list of fields to include in the response. When omitted, all fields are returned.}\n@returns(200) Get Access authentication logs response\n@errors {4XX: Get Access authentication logs response failure}\n\n@endpoint GET /accounts/{account_id}/access/logs/scim/updates\n@desc List Access SCIM update logs\n@required {account_id: str, idp_id: [str]}\n@optional {limit: int, direction: str, since: str(date-time), until: str(date-time), status: [str], resource_type: [str], request_method: [str], resource_user_email: str(email), resource_group_name: str, cf_resource_id: str, idp_resource_id: str, page: int=1, per_page: int=20}\n@returns(200) Get Access SCIM update logs response\n@errors {4XX: Get Access SCIM update logs response failure}\n\n@endpoint GET /accounts/{account_id}/access/organizations\n@desc Get your Zero Trust organization\n@required {account_id: str}\n@returns(200) Get your Zero Trust organization response\n@errors {4XX: Get your Zero Trust organization response failure}\n\n@endpoint POST /accounts/{account_id}/access/organizations\n@desc Create your Zero Trust organization\n@required {account_id: str, auth_domain: str # The unique subdomain assigned to your Zero Trust organization., name: str # The name of your Zero Trust organization.}\n@optional {allow_authenticate_via_warp: bool=false # When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value., auto_redirect_to_identity: bool=false # When set to `true`, users skip the identity provider selection step during login., deny_unmatched_requests: bool # Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the `deny_unmatched_requests_exempted_zone_names` array., deny_unmatched_requests_exempted_zone_names: [str] # Contains zone names to exempt from the `deny_unmatched_requests` feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request., is_ui_read_only: bool=false # Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled., login_design: map{background_color: str, footer_text: str, header_text: str, logo_path: str, text_color: str}, mfa_config: map{allowed_authenticators: [str], session_duration: str} # Configures multi-factor authentication (MFA) settings for an organization., mfa_required_for_all_apps: bool=false # Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured., session_duration: str # The amount of time that tokens issued for applications will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h., ui_read_only_toggle_reason: str # A description of the reason why the UI read only field is being toggled., user_seat_expiration_inactive_time: str # The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format `300ms` or `2h45m`. Valid time units are: `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`., warp_auth_session_duration: str # The amount of time that tokens issued for applications will be valid. Must be in the format `30m` or `2h45m`. Valid time units are: m, h.}\n@returns(201) Create your Zero Trust organization response\n@errors {4XX: Create your Zero Trust organization response failure}\n\n@endpoint PUT /accounts/{account_id}/access/organizations\n@desc Update your Zero Trust organization\n@required {account_id: str}\n@optional {allow_authenticate_via_warp: bool=false # When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value., auth_domain: str # The unique subdomain assigned to your Zero Trust organization., auto_redirect_to_identity: bool=false # When set to `true`, users skip the identity provider selection step during login., custom_pages: map{forbidden: str, identity_denied: str}, deny_unmatched_requests: bool # Determines whether to deny all requests to Cloudflare-protected resources that lack an associated Access application. If enabled, you must explicitly configure an Access application and policy to allow traffic to your Cloudflare-protected resources. For domains you want to be public across all subdomains, add the domain to the `deny_unmatched_requests_exempted_zone_names` array., deny_unmatched_requests_exempted_zone_names: [str] # Contains zone names to exempt from the `deny_unmatched_requests` feature. Requests to a subdomain in an exempted zone will block unauthenticated traffic by default if there is a configured Access application and policy that matches the request., is_ui_read_only: bool=false # Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled., login_design: map{background_color: str, footer_text: str, header_text: str, logo_path: str, text_color: str}, mfa_config: map{allowed_authenticators: [str], session_duration: str} # Configures multi-factor authentication (MFA) settings for an organization., mfa_required_for_all_apps: bool=false # Determines whether global MFA settings apply to applications by default. The organization must have MFA enabled with at least one authentication method and a session duration configured., name: str # The name of your Zero Trust organization., session_duration: str # The amount of time that tokens issued for applications will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h., ui_read_only_toggle_reason: str # A description of the reason why the UI read only field is being toggled., user_seat_expiration_inactive_time: str # The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count.  Minimum value for this setting is 1 month (730h). Must be in the format `300ms` or `2h45m`. Valid time units are: `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`., warp_auth_session_duration: str # The amount of time that tokens issued for applications will be valid. Must be in the format `30m` or `2h45m`. Valid time units are: m, h.}\n@returns(200) Update your Zero Trust organization response\n@errors {4XX: Update your Zero Trust organization response failure}\n\n@endpoint GET /accounts/{account_id}/access/organizations/doh\n@desc Get your Zero Trust organization DoH settings\n@required {account_id: str}\n@returns(200) Get your Zero Trust organization DoH settings response\n@errors {4XX: Get your Zero Trust organization DoH settings response failure}\n\n@endpoint PUT /accounts/{account_id}/access/organizations/doh\n@desc Update your Zero Trust organization DoH settings\n@required {account_id: str}\n@optional {doh_jwt_duration: str # The duration the DoH JWT is valid for. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h.  Note that the maximum duration for this setting is the same as the key rotation period on the account. Default expiration is 24h, service_token_id: str # The uuid of the service token you want to use for DoH authentication}\n@returns(201) Update your Zero Trust organization DoH settings response\n@errors {4XX: Update your Zero Trust organization DoH settings response failure}\n\n@endpoint POST /accounts/{account_id}/access/organizations/revoke_user\n@desc Revoke all Access tokens for a user\n@required {account_id: str, email: str # The email of the user to revoke.}\n@optional {devices: bool # When set to `true`, all devices associated with the user will be revoked., devices: bool # When set to `true`, all devices associated with the user will be revoked., user_uid: str # The uuid of the user to revoke., warp_session_reauth: bool # When set to `true`, the user will be required to re-authenticate to WARP for all Gateway policies that enforce a WARP client session duration. When `false`, the user’s WARP session will remain active}\n@returns(200) Revoke all Access tokens for a user response\n@errors {4xx: Revoke all Access tokens for a user response failure}\n\n@endpoint GET /accounts/{account_id}/access/policies\n@desc List Access reusable policies\n@required {account_id: str}\n@optional {page: int=1, per_page: int=100}\n@returns(200) List Access reusable policies response.\n@errors {4XX: List Access reusable policies response failure.}\n\n@endpoint POST /accounts/{account_id}/access/policies\n@desc Create an Access reusable policy\n@required {account_id: str}\n@optional {approval_groups: [map{approvals_needed!: num, email_addresses: [str], email_list_uuid: str}] # Administrators who can approve a temporary authentication request., approval_required: bool # Requires the user to request access from an administrator at the start of each session., connection_rules: map{rdp: map} # The rules that define how users may connect to targets secured by your application., isolation_required: bool # Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature., mfa_config: map{allowed_authenticators: [str], mfa_disabled: bool, session_duration: str} # Configures multi-factor authentication (MFA) settings., purpose_justification_prompt: str # A custom message that will appear on the purpose justification screen., purpose_justification_required: bool # Require users to enter a justification when they log in to the application., session_duration: str=24h # The amount of time that tokens issued for the application will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h.}\n@returns(201) Create an Access reusable policy response.\n@errors {4XX: Create an Access reusable policy response failure.}\n\n@endpoint DELETE /accounts/{account_id}/access/policies/{policy_id}\n@desc Delete an Access reusable policy\n@required {account_id: str, policy_id: str}\n@returns(202) Delete an Access reusable policy response.\n@errors {4XX: Delete an Access reusable policy response failure.}\n\n@endpoint GET /accounts/{account_id}/access/policies/{policy_id}\n@desc Get an Access reusable policy\n@required {account_id: str, policy_id: str}\n@returns(200) Get an Access reusable policy response.\n@errors {4XX: Get an Access reusable policy response failure.}\n\n@endpoint PUT /accounts/{account_id}/access/policies/{policy_id}\n@desc Update an Access reusable policy\n@required {account_id: str, policy_id: str}\n@optional {approval_groups: [map{approvals_needed!: num, email_addresses: [str], email_list_uuid: str}] # Administrators who can approve a temporary authentication request., approval_required: bool # Requires the user to request access from an administrator at the start of each session., connection_rules: map{rdp: map} # The rules that define how users may connect to targets secured by your application., isolation_required: bool # Require this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature., mfa_config: map{allowed_authenticators: [str], mfa_disabled: bool, session_duration: str} # Configures multi-factor authentication (MFA) settings., purpose_justification_prompt: str # A custom message that will appear on the purpose justification screen., purpose_justification_required: bool # Require users to enter a justification when they log in to the application., session_duration: str=24h # The amount of time that tokens issued for the application will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h.}\n@returns(200) Update an Access reusable policy response.\n@errors {4XX: Update an Access reusable policy response failure.}\n\n@endpoint POST /accounts/{account_id}/access/policy-tests\n@desc Start Access policy test\n@required {account_id: str}\n@optional {policies: [any]}\n@returns(200) Start Access policy test response.\n@errors {400: Start Access policy test response failure.}\n\n@endpoint GET /accounts/{account_id}/access/policy-tests/{policy_test_id}\n@desc Get the current status of a given Access policy test\n@required {account_id: str, policy_test_id: str}\n@returns(200) Get an Access policy test update response.\n@errors {400: Get an Access policy test update response failure.}\n\n@endpoint GET /accounts/{account_id}/access/policy-tests/{policy_test_id}/users\n@desc Get an Access policy test users page\n@required {account_id: str, policy_test_id: str}\n@optional {page: int=1, per_page: int=25, status: str(success/fail/error) # Filter users by their policy evaluation status.}\n@returns(200) Get an Access policy tester users page response.\n@errors {400: Get an Access policy tester users page response failure.}\n\n@endpoint PATCH /accounts/{account_id}/access/seats\n@desc Update a user seat\n@required {account_id: any}\n@returns(200) Update a user seat response\n@errors {4XX: Update a user seat response failure}\n\n@endpoint GET /accounts/{account_id}/access/service_tokens\n@desc List service tokens\n@required {account_id: str}\n@optional {name: str, search: str, page: int=1, per_page: int=1000}\n@returns(200) List service tokens response\n@errors {4XX: List service tokens response failure}\n\n@endpoint POST /accounts/{account_id}/access/service_tokens\n@desc Create a service token\n@required {account_id: str, name: str # The name of the service token.}\n@optional {client_secret_version: num=1 # A version number identifying the current `client_secret` associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by `previous_client_secret_expires_at`., duration: str=8760h # The duration for how long the service token will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h)., previous_client_secret_expires_at: str(date-time) # The expiration of the previous `client_secret`. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.}\n@returns(201) Create a service token response\n@errors {4XX: Create a service token response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/service_tokens/{service_token_id}\n@desc Delete a service token\n@required {service_token_id: str, account_id: str}\n@returns(200) Delete a service token response\n@errors {4XX: Delete a service token response failure}\n\n@endpoint GET /accounts/{account_id}/access/service_tokens/{service_token_id}\n@desc Get a service token\n@required {service_token_id: str, account_id: str}\n@returns(200) Get a service token response\n@errors {4XX: Get a service token response failure}\n\n@endpoint PUT /accounts/{account_id}/access/service_tokens/{service_token_id}\n@desc Update a service token\n@required {service_token_id: str, account_id: str}\n@optional {client_secret_version: num=1 # A version number identifying the current `client_secret` associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by `previous_client_secret_expires_at`., duration: str=8760h # The duration for how long the service token will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h)., name: str # The name of the service token., previous_client_secret_expires_at: str(date-time) # The expiration of the previous `client_secret`. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.}\n@returns(200) Update a service token response\n@errors {4XX: Update a service token response failure}\n\n@endpoint POST /accounts/{account_id}/access/service_tokens/{service_token_id}/refresh\n@desc Refresh a service token\n@required {service_token_id: str, account_id: str}\n@returns(200) Refresh a service token response\n@errors {4XX: Refresh a service token response failure}\n\n@endpoint POST /accounts/{account_id}/access/service_tokens/{service_token_id}/rotate\n@desc Rotate a service token\n@required {service_token_id: str, account_id: str}\n@optional {previous_client_secret_expires_at: str(date-time) # The expiration of the previous `client_secret`. If not provided, it defaults to the current timestamp in order to immediately expire the previous secret.}\n@returns(200) Rotate a service token response\n@errors {4XX: Rotate a service token response failure}\n\n@endpoint GET /accounts/{account_id}/access/tags\n@desc List tags\n@required {account_id: str}\n@optional {page: int=1, per_page: int=50}\n@returns(200) List tags response\n@errors {4XX: List tags response failure}\n\n@endpoint POST /accounts/{account_id}/access/tags\n@desc Create a tag\n@required {account_id: str}\n@optional {name: str # The name of the tag}\n@returns(201) Create a tag response\n@errors {4XX: Create a tag response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/tags/{tag_name}\n@desc Delete a tag\n@required {account_id: str, tag_name: str}\n@returns(202) Delete a tag response\n@errors {4XX: Delete a tag response failure}\n\n@endpoint GET /accounts/{account_id}/access/tags/{tag_name}\n@desc Get a tag\n@required {account_id: str, tag_name: str}\n@returns(200) Get a tag response\n@errors {4XX: Get a tag response failure}\n\n@endpoint PUT /accounts/{account_id}/access/tags/{tag_name}\n@desc Update a tag\n@required {account_id: str, tag_name: str, name: str # The name of the tag}\n@optional {created_at: any, updated_at: any}\n@returns(200) Update a tag response\n@errors {4XX: Update a tag response failure}\n\n@endpoint GET /accounts/{account_id}/access/users\n@desc Get users\n@required {account_id: str}\n@optional {name: str, email: str, search: str, page: int=1, per_page: int=1000}\n@returns(200) Get users response\n@errors {4XX: Get users response failure}\n\n@endpoint POST /accounts/{account_id}/access/users\n@desc Create a user\n@required {account_id: str, email: str(email) # The email of the user.}\n@optional {name: str # The name of the user.}\n@returns(201) Create user response\n@errors {4XX: Create user response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/users/{user_id}\n@desc Delete a user\n@required {user_id: str, account_id: str}\n@returns(202) Delete user response\n@errors {4XX: Delete user response failure}\n\n@endpoint GET /accounts/{account_id}/access/users/{user_id}\n@desc Get a user\n@required {user_id: str, account_id: str}\n@returns(200) Get user response\n@errors {4XX: Get user response failure}\n\n@endpoint PUT /accounts/{account_id}/access/users/{user_id}\n@desc Update a user\n@required {user_id: str, account_id: str, email: str(email) # The email of the user., name: str # The name of the user.}\n@returns(200) Update user response\n@errors {4XX: Update user response failure}\n\n@endpoint GET /accounts/{account_id}/access/users/{user_id}/active_sessions\n@desc Get active sessions\n@required {user_id: str, account_id: str}\n@returns(200) Get active sessions response\n@errors {4XX: Get active sessions response failure}\n\n@endpoint GET /accounts/{account_id}/access/users/{user_id}/active_sessions/{nonce}\n@desc Get single active session\n@required {user_id: str, account_id: str, nonce: str}\n@returns(200) Get active session response\n@errors {4XX: Get active session response failure}\n\n@endpoint GET /accounts/{account_id}/access/users/{user_id}/failed_logins\n@desc Get failed logins\n@required {user_id: str, account_id: str}\n@returns(200) Get failed logins response\n@errors {4XX: Get failed logins response failure}\n\n@endpoint GET /accounts/{account_id}/access/users/{user_id}/last_seen_identity\n@desc Get last seen identity\n@required {user_id: str, account_id: str}\n@returns(200) Get active session response\n@errors {4XX: Get active session response failure}\n\n@endpoint DELETE /accounts/{account_id}/access/users/{user_id}/mfa_authenticators/{authenticator_id}\n@desc Delete a user's MFA device\n@required {user_id: str, account_id: str, authenticator_id: str}\n@returns(200) Delete authenticator response.\n@errors {4XX: Delete authenticator response failure.}\n\n@endpoint GET /accounts/{account_id}/addressing/address_maps\n@desc List Address Maps\n@required {account_id: str}\n@returns(200) List Address Maps response\n@errors {4XX: List Address Maps response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/address_maps\n@desc Create Address Map\n@required {account_id: str}\n@optional {description: str # An optional description field which may be used to describe the types of IPs or zones on the map., enabled: bool=false # Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled., ips: [str], memberships: [map{identifier: str, kind: str}] # Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.}\n@returns(200) Create Address Map response\n@errors {4XX: Create Address Map response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}\n@desc Delete Address Map\n@required {address_map_id: str, account_id: str}\n@returns(200) Delete Address Map response\n@errors {4XX: Delete Address Map response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/address_maps/{address_map_id}\n@desc Address Map Details\n@required {address_map_id: str, account_id: str}\n@returns(200) Address Map Details response\n@errors {4XX: Address Map Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/addressing/address_maps/{address_map_id}\n@desc Update Address Map\n@required {address_map_id: str, account_id: str}\n@optional {default_sni: str # If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account., description: str # An optional description field which may be used to describe the types of IPs or zones on the map., enabled: bool=false # Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.}\n@returns(200) Update Address Map response\n@errors {4XX: Update Address Map response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}\n@desc Remove an account membership from an Address Map\n@required {account_id: str, address_map_id: str}\n@returns(200) Remove an account membership from an Address Map response\n@errors {4XX: Remove an account membership from an Address Map response failure}\n\n@endpoint PUT /accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}\n@desc Add an account membership to an Address Map\n@required {account_id: str, address_map_id: str}\n@returns(200) Add an account membership to an Address Map response\n@errors {4XX: Add an account membership to an Address Map response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}\n@desc Remove an IP from an Address Map\n@required {ip_address: str, address_map_id: str, account_id: str}\n@returns(200) Remove an IP from an Address Map response\n@errors {4XX: Remove an IP from an Address Map response failure}\n\n@endpoint PUT /accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}\n@desc Add an IP to an Address Map\n@required {ip_address: str, address_map_id: str, account_id: str}\n@returns(200) Add an IP to an Address Map response\n@errors {4XX: Add an IP to an Address Map response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}\n@desc Remove a zone membership from an Address Map\n@required {zone_id: str, address_map_id: str, account_id: str}\n@returns(200) Remove a zone membership from an Address Map response\n@errors {4XX: Remove a zone membership from an Address Map response failure}\n\n@endpoint PUT /accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}\n@desc Add a zone membership to an Address Map\n@required {zone_id: str, address_map_id: str, account_id: str}\n@returns(200) Add a zone membership to an Address Map response\n@errors {4XX: Add a zone membership to an Address Map response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/leases\n@desc List Leases\n@required {account_id: str}\n@returns(200) List Leases response\n@errors {4XX: List Leases response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/loa_documents\n@desc Upload LOA Document\n@required {account_id: str}\n@returns(201) Upload LOA Document response\n@errors {4XX: Upload LOA Document response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download\n@desc Download LOA Document\n@required {loa_document_id: str, account_id: str}\n@returns(200) Download LOA Document response\n@errors {4XX: Download LOA Document response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes\n@desc List Prefixes\n@required {account_id: str}\n@returns(200) List Prefixes response\n@errors {4XX: List Prefixes response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/prefixes\n@desc Add Prefix\n@required {account_id: str, asn: int # Autonomous System Number (ASN) the prefix will be advertised under., cidr: str # IP Prefix in Classless Inter-Domain Routing format.}\n@optional {delegate_loa_creation: bool=false # Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner., description: str # Description of the prefix., loa_document_id: str # Identifier for the uploaded LOA document.}\n@returns(201) Add Prefix response\n@errors {4XX: Add Prefix response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}\n@desc Delete Prefix\n@required {prefix_id: str, account_id: str}\n@returns(200) Delete Prefix response\n@errors {4XX: Delete Prefix response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}\n@desc Prefix Details\n@required {prefix_id: str, account_id: str}\n@returns(200) Prefix Details response\n@errors {4XX: Prefix Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/addressing/prefixes/{prefix_id}\n@desc Update Prefix Description\n@required {prefix_id: str, account_id: str, description: str # Description of the prefix.}\n@returns(200) Update Prefix Description response\n@errors {4XX: Update Prefix Description response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes\n@desc List BGP Prefixes\n@required {account_id: str, prefix_id: str}\n@returns(200) List BGP Prefixes response\n@errors {4XX: List BGP Prefixes response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes\n@desc Create BGP Prefix\n@required {account_id: str, prefix_id: str, cidr: str # IP Prefix in Classless Inter-Domain Routing format.}\n@returns(200) Create BGP Prefix response\n@errors {4XX: Create BGP Prefix response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}\n@desc Delete BGP Prefix\n@required {account_id: str, prefix_id: str, bgp_prefix_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete BGP Prefix response\n@errors {4XX: Delete BGP Prefix response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}\n@desc Fetch BGP Prefix\n@required {account_id: str, prefix_id: str, bgp_prefix_id: str}\n@returns(200) Fetch BGP Prefix response\n@errors {4XX: Fetch BGP Prefix response failure}\n\n@endpoint PATCH /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}\n@desc Update BGP Prefix\n@required {account_id: str, prefix_id: str, bgp_prefix_id: str}\n@optional {asn_prepend_count: int=0 # Number of times to prepend the Cloudflare ASN to the BGP AS-Path attribute, auto_advertise_withdraw: bool=false # Determines if Cloudflare advertises a BYOIP BGP prefix even when there is no matching BGP prefix in the Magic routing table. When true, Cloudflare will automatically withdraw the BGP prefix when there are no matching BGP routes, and will resume advertising when there is at least one matching BGP route., on_demand: map{advertised: bool}}\n@returns(200) Update BGP Prefix response\n@errors {4XX: Update BGP Prefix response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status\n@desc Get Advertisement Status\n@required {prefix_id: str, account_id: str}\n@returns(200) Get Advertisement Status response\n@errors {4XX: Get Advertisement Status response failure}\n\n@endpoint PATCH /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status\n@desc Update Prefix Dynamic Advertisement Status\n@required {prefix_id: str, account_id: str, advertised: bool # Advertisement status of the prefix. If `true`, the BGP route for the prefix is advertised to the Internet. If  `false`, the BGP route is withdrawn.}\n@returns(200) Update Prefix Dynamic Advertisement Status response\n@errors {4XX: Update Prefix Dynamic Advertisement Status response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings\n@desc List Service Bindings\n@required {account_id: str, prefix_id: str}\n@returns(200) Service Bindings attached to the Prefix\n@errors {4XX: List Service Bindings response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings\n@desc Create Service Binding\n@required {account_id: str, prefix_id: str, cidr: str # IP Prefix in Classless Inter-Domain Routing format., service_id: str # Identifier of a Service on the Cloudflare network. Available services and their IDs may be found in the **List Services** endpoint.}\n@returns(201) The created Service Binding\n@errors {4XX: Create Service Binding response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}\n@desc Delete Service Binding\n@required {account_id: str, prefix_id: str, binding_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Service Binding deleted\n@errors {4XX: Delete Service Binding response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}\n@desc Get Service Binding\n@required {account_id: str, prefix_id: str, binding_id: str}\n@returns(200) The Service Binding with the requested ID\n@errors {4XX: Get Service Binding response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations\n@desc List Prefix Delegations\n@required {prefix_id: str, account_id: str}\n@returns(200) List Prefix Delegations response\n@errors {4XX: List Prefix Delegations response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations\n@desc Create Prefix Delegation\n@required {prefix_id: str, account_id: str, cidr: str # IP Prefix in Classless Inter-Domain Routing format., delegated_account_id: str # Account identifier for the account to which prefix is being delegated.}\n@returns(200) Create Prefix Delegation response\n@errors {4XX: Create Prefix Delegation response failure}\n\n@endpoint DELETE /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations/{delegation_id}\n@desc Delete Prefix Delegation\n@required {delegation_id: str, prefix_id: str, account_id: str}\n@returns(200) Delete Prefix Delegation response\n@errors {4XX: Delete Prefix Delegation response failure}\n\n@endpoint POST /accounts/{account_id}/addressing/prefixes/{prefix_id}/validate\n@desc Validate Prefix\n@required {prefix_id: str, account_id: str}\n@returns(202) Validate Prefix response\n@errors {4XX: Validate Prefix response failure}\n\n@endpoint GET /accounts/{account_id}/addressing/regional_hostnames/regions\n@desc List Regions\n@required {account_id: str}\n@returns(200) List regions response\n@errors {4XX: Failure to list regions}\n\n@endpoint GET /accounts/{account_id}/addressing/services\n@desc List Services\n@required {account_id: str}\n@returns(200) Service names and IDs\n@errors {4XX: List Services response failure}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/evaluation-types\n@desc List Evaluators\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, order_by: str=mandatory, order_by_direction: str(asc/desc)=desc}\n@returns(200) {result: [map], result_info: map{count: num, page: num, per_page: num, total_count: num}, success: bool} # Returns a list of Evaluators\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways\n@desc List Gateways\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, search: str}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways\n@desc Create a new Gateway\n@required {account_id: str, cache_invalidate_on_update: bool, cache_ttl: int, collect_logs: bool, id: str # gateway id, rate_limiting_interval: int, rate_limiting_limit: int}\n@optional {authentication: bool, log_management: int, log_management_strategy: str(STOP_INSERTING/DELETE_OLDEST), logpush: bool, logpush_public_key: str, rate_limiting_technique: str(fixed/sliding), retry_backoff: str(constant/linear/exponential) # Backoff strategy for retry delays, retry_delay: int # Delay between retry attempts in milliseconds (0-5000), retry_max_attempts: int # Maximum number of retry attempts for failed requests (1-5), workers_ai_billing_mode: str=postpaid # Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported., zdr: bool}\n@returns(200) {result: map{authentication: bool, cache_invalidate_on_update: bool, cache_ttl: int?, collect_logs: bool, created_at: str(date-time), dlp: any, id: str, is_default: bool, log_management: int?, log_management_strategy: str?, logpush: bool, logpush_public_key: str?, modified_at: str(date-time), otel: [map]?, rate_limiting_interval: int?, rate_limiting_limit: int?, rate_limiting_technique: str?, retry_backoff: str?, retry_delay: int?, retry_max_attempts: int?, store_id: str?, stripe: map?{authorization: str, usage_events: [map]}, workers_ai_billing_mode: str, zdr: bool}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets\n@desc List Datasets\n@required {account_id: str, gateway_id: str}\n@optional {page: int=1, per_page: int=20, name: str, enable: bool, search: str}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets\n@desc Create a new Dataset\n@required {gateway_id: str, account_id: str, enable: bool, filters: [map{key!: str, operator!: str, value!: [any]}], name: str}\n@returns(200) {result: map{created_at: str(date-time), enable: bool, filters: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n@desc Delete a Dataset\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), enable: bool, filters: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n@desc Fetch a Dataset\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), enable: bool, filters: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Returns a single object if found\n@errors {404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}\n@desc Update a Dataset\n@required {account_id: str, gateway_id: str, id: str, enable: bool, filters: [map{key!: str, operator!: str, value!: [any]}], name: str}\n@returns(200) {result: map{created_at: str(date-time), enable: bool, filters: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Returns the updated Object\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations\n@desc List Evaluations\n@required {account_id: str, gateway_id: str}\n@optional {page: int=1, per_page: int=20, name: str, processed: bool, search: str}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations\n@desc Create a new Evaluation\n@required {gateway_id: str, account_id: str, dataset_ids: [str], evaluation_type_ids: [str], name: str}\n@returns(200) {result: map{created_at: str(date-time), datasets: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str, processed: bool, results: [map], total_logs: num}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}\n@desc Delete a Evaluation\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), datasets: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str, processed: bool, results: [map], total_logs: num}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}\n@desc Fetch a Evaluation\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), datasets: [map], gateway_id: str, id: str, modified_at: str(date-time), name: str, processed: bool, results: [map], total_logs: num}, success: bool} # Returns a single object if found\n@errors {404: Not Found}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs\n@desc Delete Gateway Logs\n@required {account_id: str, gateway_id: str}\n@optional {order_by: str(created_at/provider/model/model_type/success/cached/cost/tokens_in/tokens_out/duration/feedback)=created_at, order_by_direction: str(asc/desc)=asc, filters: [map], limit: int=10000}\n@returns(200) {success: bool} # Returns if the delete was successful\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs\n@desc List Gateway Logs\n@required {account_id: str, gateway_id: str}\n@optional {search: str, page: int=1, per_page: int=20, order_by: str(created_at/provider/model/model_type/success/cached)=created_at, order_by_direction: str(asc/desc)=desc, filters: [map], meta_info: bool, direction: str(asc/desc), start_date: str(date-time), end_date: str(date-time), min_cost: num, max_cost: num, min_tokens_in: num, max_tokens_in: num, min_tokens_out: num, max_tokens_out: num, min_total_tokens: num, max_total_tokens: num, min_duration: num, max_duration: num, feedback: any, success: bool, cached: bool, model: str, model_type: str, provider: str, request_content_type: str, response_content_type: str}\n@returns(200) {result: [map], result_info: map{count: num, max_cost: num, max_duration: num, max_tokens_in: num, max_tokens_out: num, max_total_tokens: num, min_cost: num, min_duration: num, min_tokens_in: num, min_tokens_out: num, min_total_tokens: num, page: num, per_page: num, total_count: num}, success: bool} # Returns a list of Gateway Logs\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}\n@desc Get Gateway Log Detail\n@required {id: str, gateway_id: str, account_id: str}\n@returns(200) {result: map{cached: bool, cost: num, created_at: str(date-time), custom_cost: bool, duration: int, id: str, metadata: str, model: str, model_type: str, path: str, provider: str, request_content_type: str, request_head: str, request_head_complete: bool, request_size: int, request_type: str, response_content_type: str, response_head: str, response_head_complete: bool, response_size: int, status_code: int, step: int, success: bool, tokens_in: int?, tokens_out: int?}, success: bool} # Returns the log details\n@errors {404: Not Found}\n\n@endpoint PATCH /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}\n@desc Patch Gateway Log\n@required {id: str, gateway_id: str, account_id: str}\n@optional {feedback: num, metadata: map, score: num}\n@returns(200) {result: map, success: bool} # Returns the log details\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/request\n@desc Get Gateway Log Request\n@required {id: str, gateway_id: str, account_id: str}\n@returns(200) Returns the request body from a specific log\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/response\n@desc Get Gateway Log Response\n@required {id: str, gateway_id: str, account_id: str}\n@returns(200) Returns the response body from a specific log\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs\n@desc List Provider Configs\n@required {account_id: str, gateway_id: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs\n@desc Create a new Provider Configs\n@required {account_id: str, gateway_id: str, alias: str, default_config: bool, provider_slug: str, secret: str, secret_id: str}\n@optional {rate_limit: num, rate_limit_period: num=60}\n@returns(200) {result: map{alias: str, default_config: bool, gateway_id: str, id: str, modified_at: str(date-time), provider_slug: str, rate_limit: num, rate_limit_period: num, secret_id: str, secret_preview: str}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id}\n@desc Delete a Provider Configs\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{alias: str, default_config: bool, gateway_id: str, id: str, modified_at: str(date-time), provider_slug: str, rate_limit: num, rate_limit_period: num, secret_id: str, secret_preview: str}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs/{id}\n@desc Update a Provider Configs\n@required {account_id: str, gateway_id: str, id: str, secret: str}\n@returns(200) {result: map{alias: str, default_config: bool, gateway_id: str, id: str, modified_at: str(date-time), provider_slug: str, rate_limit: num, rate_limit_period: num, secret_id: str, secret_preview: str}, success: bool} # Returns the updated Object\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes\n@desc List all AI Gateway Dynamic Routes.\n@required {account_id: str, gateway_id: str}\n@returns(200) {data: map{order_by: str, order_by_direction: str, page: num, per_page: num, routes: [map]}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes\n@desc Create a new AI Gateway Dynamic Route.\n@required {account_id: str, gateway_id: str, elements: [any], name: str}\n@returns(200) {result: map{created_at: str(date-time), deployment: map{created_at: str, deployment_id: str, version_id: str}, elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str, version: map{active: str, created_at: str, data: str, version_id: str}}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n@desc Delete an AI Gateway Dynamic Route.\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n@desc Get an AI Gateway Dynamic Route.\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {result: map{created_at: str(date-time), deployment: map{created_at: str, deployment_id: str, version_id: str}, elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str, version: map{active: str, created_at: str, data: str, version_id: str}}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint PATCH /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}\n@desc Update an AI Gateway Dynamic Route.\n@required {account_id: str, gateway_id: str, id: str, name: str}\n@returns(200) {route: map{account_tag: str, created_at: str(date-time), deployment: map{created_at: str, deployment_id: str, version_id: str}, elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str, version: map{active: str, created_at: str, data: str, version_id: str}}, success: bool} # Success\n@errors {400: Input Error}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments\n@desc List all AI Gateway Dynamic Route Deployments.\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {data: map{deployments: [map], order_by: str, order_by_direction: str, page: num, per_page: num}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments\n@desc Create a new AI Gateway Dynamic Route Deployment.\n@required {account_id: str, gateway_id: str, id: str, version_id: str}\n@returns(200) {result: map{created_at: str(date-time), elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions\n@desc List all AI Gateway Dynamic Route Versions.\n@required {account_id: str, gateway_id: str, id: str}\n@returns(200) {data: map{order_by: str, order_by_direction: str, page: num, per_page: num, versions: [map]}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions\n@desc Create a new AI Gateway Dynamic Route Version.\n@required {account_id: str, gateway_id: str, id: str, elements: [any]}\n@returns(200) {result: map{created_at: str(date-time), elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions/{version_id}\n@desc Get an AI Gateway Dynamic Route Version.\n@required {account_id: str, gateway_id: str, id: str, version_id: str}\n@returns(200) {result: map{active: str, created_at: str, data: str, elements: [any], gateway_id: str, id: str, modified_at: str(date-time), name: str, version_id: str}, success: bool} # Success\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/url/{provider}\n@desc Get Gateway URL\n@required {gateway_id: str, account_id: str, provider: str}\n@returns(200) {result: str, success: bool} # Returns the log details\n@errors {400: Bad Request}\n\n@endpoint DELETE /accounts/{account_id}/ai-gateway/gateways/{id}\n@desc Delete a Gateway\n@required {account_id: str, id: str}\n@returns(200) {result: map{authentication: bool, cache_invalidate_on_update: bool, cache_ttl: int?, collect_logs: bool, created_at: str(date-time), dlp: any, id: str, is_default: bool, log_management: int?, log_management_strategy: str?, logpush: bool, logpush_public_key: str?, modified_at: str(date-time), otel: [map]?, rate_limiting_interval: int?, rate_limiting_limit: int?, rate_limiting_technique: str?, retry_backoff: str?, retry_delay: int?, retry_max_attempts: int?, store_id: str?, stripe: map?{authorization: str, usage_events: [map]}, workers_ai_billing_mode: str, zdr: bool}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-gateway/gateways/{id}\n@desc Fetch a Gateway\n@required {account_id: str, id: str}\n@returns(200) {result: map{authentication: bool, cache_invalidate_on_update: bool, cache_ttl: int?, collect_logs: bool, created_at: str(date-time), dlp: any, id: str, is_default: bool, log_management: int?, log_management_strategy: str?, logpush: bool, logpush_public_key: str?, modified_at: str(date-time), otel: [map]?, rate_limiting_interval: int?, rate_limiting_limit: int?, rate_limiting_technique: str?, retry_backoff: str?, retry_delay: int?, retry_max_attempts: int?, store_id: str?, stripe: map?{authorization: str, usage_events: [map]}, workers_ai_billing_mode: str, zdr: bool}, success: bool} # Returns a single object if found\n@errors {404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/ai-gateway/gateways/{id}\n@desc Update a Gateway\n@required {account_id: str, id: str, cache_invalidate_on_update: bool, cache_ttl: int, collect_logs: bool, rate_limiting_interval: int, rate_limiting_limit: int}\n@optional {authentication: bool, dlp: any, log_management: int, log_management_strategy: str(STOP_INSERTING/DELETE_OLDEST), logpush: bool, logpush_public_key: str, otel: [map{authorization!: str, content_type: str, headers!: map, url!: str}], rate_limiting_technique: str(fixed/sliding), retry_backoff: str(constant/linear/exponential) # Backoff strategy for retry delays, retry_delay: int # Delay between retry attempts in milliseconds (0-5000), retry_max_attempts: int # Maximum number of retry attempts for failed requests (1-5), store_id: str, stripe: map{authorization!: str, usage_events!: [map]}, workers_ai_billing_mode: str=postpaid # Controls how Workers AI inference calls routed through this gateway are billed. Only 'postpaid' is currently supported., zdr: bool}\n@returns(200) {result: map{authentication: bool, cache_invalidate_on_update: bool, cache_ttl: int?, collect_logs: bool, created_at: str(date-time), dlp: any, id: str, is_default: bool, log_management: int?, log_management_strategy: str?, logpush: bool, logpush_public_key: str?, modified_at: str(date-time), otel: [map]?, rate_limiting_interval: int?, rate_limiting_limit: int?, rate_limiting_technique: str?, retry_backoff: str?, retry_delay: int?, retry_max_attempts: int?, store_id: str?, stripe: map?{authorization: str, usage_events: [map]}, workers_ai_billing_mode: str, zdr: bool}, success: bool} # Returns the updated Object\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances\n@desc List instances.\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, namespace: str, search: str # Search by id, order_by: str=created_at # Order By Column Name, order_by_direction: str(asc/desc)=desc # Order By Direction}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Input Validation Error}\n\n@endpoint POST /accounts/{account_id}/ai-search/instances\n@desc Create new instances.\n@required {account_id: str, id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.}\n@optional {ai_gateway_id: str, ai_search_model: str(@cf/meta/llama-3.3-70b-instruct-fp8-fast/@cf/zai-org/glm-4.7-flash/@cf/meta/llama-3.1-8b-instruct-fast/@cf/meta/llama-3.1-8b-instruct-fp8/@cf/meta/llama-4-scout-17b-16e-instruct/@cf/qwen/qwen3-30b-a3b-fp8/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b/@cf/moonshotai/kimi-k2-instruct/@cf/google/gemma-3-12b-it/anthropic/claude-3-7-sonnet/anthropic/claude-sonnet-4/anthropic/claude-opus-4/anthropic/claude-3-5-haiku/cerebras/qwen-3-235b-a22b-instruct/cerebras/qwen-3-235b-a22b-thinking/cerebras/llama-3.3-70b/cerebras/llama-4-maverick-17b-128e-instruct/cerebras/llama-4-scout-17b-16e-instruct/cerebras/gpt-oss-120b/google-ai-studio/gemini-2.5-flash/google-ai-studio/gemini-2.5-pro/grok/grok-4/groq/llama-3.3-70b-versatile/groq/llama-3.1-8b-instant/openai/gpt-5/openai/gpt-5-mini/openai/gpt-5-nano/), cache: bool=true, cache_threshold: str(super_strict_match/close_enough/flexible_friend/anything_goes)=close_enough, chunk: bool=true, chunk_overlap: int=10, chunk_size: int=256, custom_metadata: [map{data_type!: str, field_name!: str}], embedding_model: str(@cf/qwen/qwen3-embedding-0.6b/@cf/baai/bge-m3/@cf/baai/bge-large-en-v1.5/@cf/google/embeddinggemma-300m/google-ai-studio/gemini-embedding-001/google-ai-studio/gemini-embedding-2-preview/openai/text-embedding-3-small/openai/text-embedding-3-large/), fusion_method: str(max/rrf)=rrf, hybrid_search_enabled: bool=false, indexing_options: map{keyword_tokenizer: str}, max_num_results: int=10, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, namespace: str, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map, enabled: bool, mcp: map, rate_limit: map, search_endpoint: map}, reranking: bool=false, reranking_model: str(@cf/baai/bge-reranker-base/), retrieval_options: map{boost_by: [map], keyword_match_mode: str}, rewrite_model: str(@cf/meta/llama-3.3-70b-instruct-fp8-fast/@cf/zai-org/glm-4.7-flash/@cf/meta/llama-3.1-8b-instruct-fast/@cf/meta/llama-3.1-8b-instruct-fp8/@cf/meta/llama-4-scout-17b-16e-instruct/@cf/qwen/qwen3-30b-a3b-fp8/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b/@cf/moonshotai/kimi-k2-instruct/@cf/google/gemma-3-12b-it/anthropic/claude-3-7-sonnet/anthropic/claude-sonnet-4/anthropic/claude-opus-4/anthropic/claude-3-5-haiku/cerebras/qwen-3-235b-a22b-instruct/cerebras/qwen-3-235b-a22b-thinking/cerebras/llama-3.3-70b/cerebras/llama-4-maverick-17b-128e-instruct/cerebras/llama-4-scout-17b-16e-instruct/cerebras/gpt-oss-120b/google-ai-studio/gemini-2.5-flash/google-ai-studio/gemini-2.5-pro/grok/grok-4/groq/llama-3.3-70b-versatile/groq/llama-3.1-8b-instant/openai/gpt-5/openai/gpt-5-mini/openai/gpt-5-nano/), rewrite_query: bool=false, score_threshold: num=0.4, source: str, source_params: map{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map}, token_id: str(uuid), type: str(r2/web-crawler)}\n@returns(201) {result: map{ai_gateway_id: str?, ai_search_model: str?, cache: bool, cache_threshold: str, chunk_overlap: int, chunk_size: int, created_at: str(date-time), created_by: str?, custom_metadata: [map], embedding_model: str?, enable: bool, engine_version: num, fusion_method: str, hybrid_search_enabled: bool, id: str, indexing_options: map?{keyword_tokenizer: str}, last_activity: str(date-time)?, max_num_results: int, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, modified_at: str(date-time), modified_by: str?, namespace: str?, paused: bool, public_endpoint_id: str?, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map{disabled: bool}, enabled: bool, mcp: map{description: str, disabled: bool}, rate_limit: map{period_ms: int, requests: int, technique: str}, search_endpoint: map{disabled: bool}}, reranking: bool, reranking_model: str?, retrieval_options: map?{boost_by: [map], keyword_match_mode: str}, rewrite_model: str?, rewrite_query: bool, score_threshold: num, source: str?, source_params: map?{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map{crawl_options: map, parse_options: map, parse_type: str, store_options: map}}, status: str, token_id: str(uuid), type: str?}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/ai-search/instances/{id}\n@desc Delete instances.\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str}\n@returns(200) {result: map{ai_gateway_id: str?, ai_search_model: str?, cache: bool, cache_threshold: str, chunk_overlap: int, chunk_size: int, created_at: str(date-time), created_by: str?, custom_metadata: [map], embedding_model: str?, enable: bool, engine_version: num, fusion_method: str, hybrid_search_enabled: bool, id: str, indexing_options: map?{keyword_tokenizer: str}, last_activity: str(date-time)?, max_num_results: int, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, modified_at: str(date-time), modified_by: str?, namespace: str?, paused: bool, public_endpoint_id: str?, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map{disabled: bool}, enabled: bool, mcp: map{description: str, disabled: bool}, rate_limit: map{period_ms: int, requests: int, technique: str}, search_endpoint: map{disabled: bool}}, reranking: bool, reranking_model: str?, retrieval_options: map?{boost_by: [map], keyword_match_mode: str}, rewrite_model: str?, rewrite_query: bool, score_threshold: num, source: str?, source_params: map?{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map{crawl_options: map, parse_options: map, parse_type: str, store_options: map}}, status: str, token_id: str(uuid), type: str?}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances/{id}\n@desc Read instances.\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str}\n@returns(200) {result: map{ai_gateway_id: str?, ai_search_model: str?, cache: bool, cache_threshold: str, chunk_overlap: int, chunk_size: int, created_at: str(date-time), created_by: str?, custom_metadata: [map], embedding_model: str?, enable: bool, engine_version: num, fusion_method: str, hybrid_search_enabled: bool, id: str, indexing_options: map?{keyword_tokenizer: str}, last_activity: str(date-time)?, max_num_results: int, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, modified_at: str(date-time), modified_by: str?, namespace: str?, paused: bool, public_endpoint_id: str?, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map{disabled: bool}, enabled: bool, mcp: map{description: str, disabled: bool}, rate_limit: map{period_ms: int, requests: int, technique: str}, search_endpoint: map{disabled: bool}}, reranking: bool, reranking_model: str?, retrieval_options: map?{boost_by: [map], keyword_match_mode: str}, rewrite_model: str?, rewrite_query: bool, score_threshold: num, source: str?, source_params: map?{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map{crawl_options: map, parse_options: map, parse_type: str, store_options: map}}, status: str, token_id: str(uuid), type: str?}, success: bool} # Returns a single object if found\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/ai-search/instances/{id}\n@desc Update instances.\n@required {account_id: str, id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.}\n@optional {ai_gateway_id: str, ai_search_model: str(@cf/meta/llama-3.3-70b-instruct-fp8-fast/@cf/zai-org/glm-4.7-flash/@cf/meta/llama-3.1-8b-instruct-fast/@cf/meta/llama-3.1-8b-instruct-fp8/@cf/meta/llama-4-scout-17b-16e-instruct/@cf/qwen/qwen3-30b-a3b-fp8/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b/@cf/moonshotai/kimi-k2-instruct/@cf/google/gemma-3-12b-it/anthropic/claude-3-7-sonnet/anthropic/claude-sonnet-4/anthropic/claude-opus-4/anthropic/claude-3-5-haiku/cerebras/qwen-3-235b-a22b-instruct/cerebras/qwen-3-235b-a22b-thinking/cerebras/llama-3.3-70b/cerebras/llama-4-maverick-17b-128e-instruct/cerebras/llama-4-scout-17b-16e-instruct/cerebras/gpt-oss-120b/google-ai-studio/gemini-2.5-flash/google-ai-studio/gemini-2.5-pro/grok/grok-4/groq/llama-3.3-70b-versatile/groq/llama-3.1-8b-instant/openai/gpt-5/openai/gpt-5-mini/openai/gpt-5-nano/), cache: bool=true, cache_threshold: str(super_strict_match/close_enough/flexible_friend/anything_goes)=close_enough, chunk: bool=true, chunk_overlap: int=10, chunk_size: int=256, custom_metadata: [map{data_type!: str, field_name!: str}], embedding_model: str(@cf/qwen/qwen3-embedding-0.6b/@cf/baai/bge-m3/@cf/baai/bge-large-en-v1.5/@cf/google/embeddinggemma-300m/google-ai-studio/gemini-embedding-001/google-ai-studio/gemini-embedding-2-preview/openai/text-embedding-3-small/openai/text-embedding-3-large/), fusion_method: str(max/rrf)=rrf, hybrid_search_enabled: bool=false, indexing_options: map{keyword_tokenizer: str}, max_num_results: int=10, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, paused: bool=false, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map, enabled: bool, mcp: map, rate_limit: map, search_endpoint: map}, reranking: bool=false, reranking_model: str(@cf/baai/bge-reranker-base/), retrieval_options: map{boost_by: [map], keyword_match_mode: str}, rewrite_model: str(@cf/meta/llama-3.3-70b-instruct-fp8-fast/@cf/zai-org/glm-4.7-flash/@cf/meta/llama-3.1-8b-instruct-fast/@cf/meta/llama-3.1-8b-instruct-fp8/@cf/meta/llama-4-scout-17b-16e-instruct/@cf/qwen/qwen3-30b-a3b-fp8/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b/@cf/moonshotai/kimi-k2-instruct/@cf/google/gemma-3-12b-it/anthropic/claude-3-7-sonnet/anthropic/claude-sonnet-4/anthropic/claude-opus-4/anthropic/claude-3-5-haiku/cerebras/qwen-3-235b-a22b-instruct/cerebras/qwen-3-235b-a22b-thinking/cerebras/llama-3.3-70b/cerebras/llama-4-maverick-17b-128e-instruct/cerebras/llama-4-scout-17b-16e-instruct/cerebras/gpt-oss-120b/google-ai-studio/gemini-2.5-flash/google-ai-studio/gemini-2.5-pro/grok/grok-4/groq/llama-3.3-70b-versatile/groq/llama-3.1-8b-instant/openai/gpt-5/openai/gpt-5-mini/openai/gpt-5-nano/), rewrite_query: bool=false, score_threshold: num=0.4, source_params: map{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map}, summarization: bool=false, summarization_model: str(@cf/meta/llama-3.3-70b-instruct-fp8-fast/@cf/zai-org/glm-4.7-flash/@cf/meta/llama-3.1-8b-instruct-fast/@cf/meta/llama-3.1-8b-instruct-fp8/@cf/meta/llama-4-scout-17b-16e-instruct/@cf/qwen/qwen3-30b-a3b-fp8/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b/@cf/moonshotai/kimi-k2-instruct/@cf/google/gemma-3-12b-it/anthropic/claude-3-7-sonnet/anthropic/claude-sonnet-4/anthropic/claude-opus-4/anthropic/claude-3-5-haiku/cerebras/qwen-3-235b-a22b-instruct/cerebras/qwen-3-235b-a22b-thinking/cerebras/llama-3.3-70b/cerebras/llama-4-maverick-17b-128e-instruct/cerebras/llama-4-scout-17b-16e-instruct/cerebras/gpt-oss-120b/google-ai-studio/gemini-2.5-flash/google-ai-studio/gemini-2.5-pro/grok/grok-4/groq/llama-3.3-70b-versatile/groq/llama-3.1-8b-instant/openai/gpt-5/openai/gpt-5-mini/openai/gpt-5-nano/), system_prompt_ai_search: str, system_prompt_index_summarization: str, system_prompt_rewrite_query: str, token_id: str(uuid)}\n@returns(200) {result: map{ai_gateway_id: str?, ai_search_model: str?, cache: bool, cache_threshold: str, chunk_overlap: int, chunk_size: int, created_at: str(date-time), created_by: str?, custom_metadata: [map], embedding_model: str?, enable: bool, engine_version: num, fusion_method: str, hybrid_search_enabled: bool, id: str, indexing_options: map?{keyword_tokenizer: str}, last_activity: str(date-time)?, max_num_results: int, metadata: map{created_from_aisearch_wizard: bool, worker_domain: str}, modified_at: str(date-time), modified_by: str?, namespace: str?, paused: bool, public_endpoint_id: str?, public_endpoint_params: map{authorized_hosts: [str], chat_completions_endpoint: map{disabled: bool}, enabled: bool, mcp: map{description: str, disabled: bool}, rate_limit: map{period_ms: int, requests: int, technique: str}, search_endpoint: map{disabled: bool}}, reranking: bool, reranking_model: str?, retrieval_options: map?{boost_by: [map], keyword_match_mode: str}, rewrite_model: str?, rewrite_query: bool, score_threshold: num, source: str?, source_params: map?{exclude_items: [str], include_items: [str], prefix: str, r2_jurisdiction: str, web_crawler: map{crawl_options: map, parse_options: map, parse_type: str, store_options: map}}, status: str, token_id: str(uuid), type: str?}, success: bool} # Returns the updated Object\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/ai-search/instances/{id}/chat/completions\n@desc Chat Completions\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str, messages: [map{content!: str, role!: str}]}\n@optional {ai_search_options: map{cache: map, query_rewrite: map, reranking: map, retrieval: map}, model: any, stream: bool}\n@returns(200) {choices: [map], chunks: [map], id: str, model: str, object: str} # Returns the chat completions results with retrieved files.\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances/{id}/jobs\n@desc List Jobs\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) {result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Returns a list of AI Search Jobs.\n@errors {400: Bad Request., 500: Internal Error.}\n\n@endpoint POST /accounts/{account_id}/ai-search/instances/{id}/jobs\n@desc Create new job\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str}\n@optional {description: str}\n@returns(200) {result: map{description: str, end_reason: str, ended_at: str, id: str, last_seen_at: str, source: str, started_at: str}, success: bool} # Returns the AI Search job id.\n@errors {400: Bad Request., 500: Internal Error.}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}\n@desc Get a Job Details\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., job_id: str, account_id: str}\n@returns(200) {result: map{description: str, end_reason: str, ended_at: str, id: str, last_seen_at: str, source: str, started_at: str}, success: bool} # Returns a AI Search Job Details.\n@errors {400: Bad Request., 500: Internal Error.}\n\n@endpoint PATCH /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}\n@desc Change Job Status\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., job_id: str, account_id: str, action: str}\n@returns(200) {result: map{description: str, end_reason: str, ended_at: str, id: str, last_seen_at: str, source: str, started_at: str}, success: bool} # Returns the updated AI Search Job.\n@errors {400: Bad Request., 500: Internal Error.}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}/logs\n@desc List Job Logs\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., job_id: str, account_id: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) {result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Returns a list of AI Search Job Logs.\n@errors {400: Bad Request., 500: Internal Error.}\n\n@endpoint POST /accounts/{account_id}/ai-search/instances/{id}/search\n@desc Search\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str, messages: [map{content!: str, role!: str}]}\n@optional {ai_search_options: map{cache: map, query_rewrite: map, reranking: map, retrieval: map}}\n@returns(200) {result: map{chunks: [map], search_query: str}, success: bool} # Returns the search results.\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/instances/{id}/stats\n@desc Stats\n@required {id: str # AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores., account_id: str}\n@returns(200) {result: map{completed: int, error: int, file_embed_errors: map, index_source_errors: map, last_activity: str(date-time), outdated: int, queued: int, running: int, skipped: int}, success: bool} # Returns the AI Search stats.\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/tokens\n@desc List tokens.\n@required {account_id: str}\n@optional {page: int=1, per_page: int=20, order_by: str=created_at # Order By Column Name, order_by_direction: str(asc/desc)=desc # Order By Direction}\n@returns(200) {result: [map], success: bool} # List objects\n@errors {400: Input Validation Error}\n\n@endpoint POST /accounts/{account_id}/ai-search/tokens\n@desc Create new tokens.\n@required {account_id: str, cf_api_id: str, cf_api_key: str, name: str}\n@optional {legacy: bool=true}\n@returns(201) {result: map{cf_api_id: str, created_at: str(date-time), created_by: str?, enabled: bool, id: str(uuid), legacy: bool, modified_at: str(date-time), modified_by: str?, name: str}, success: bool} # Returns the created Object\n@errors {400: Input Validation Error}\n\n@endpoint DELETE /accounts/{account_id}/ai-search/tokens/{id}\n@desc Delete tokens.\n@required {account_id: str, id: str(uuid)}\n@returns(200) {result: map{cf_api_id: str, created_at: str(date-time), created_by: str?, enabled: bool, id: str(uuid), legacy: bool, modified_at: str(date-time), modified_by: str?, name: str}, success: bool} # Returns the Object if it was successfully deleted\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/ai-search/tokens/{id}\n@desc Read tokens.\n@required {account_id: str, id: str(uuid)}\n@returns(200) {result: map{cf_api_id: str, created_at: str(date-time), created_by: str?, enabled: bool, id: str(uuid), legacy: bool, modified_at: str(date-time), modified_by: str?, name: str}, success: bool} # Returns a single object if found\n@errors {400: Input Validation Error, 404: Not Found}\n\n@endpoint PUT /accounts/{account_id}/ai-search/tokens/{id}\n@desc Update tokens.\n@required {account_id: str, id: str(uuid), cf_api_id: str, cf_api_key: str, name: str}\n@optional {legacy: bool=true}\n@returns(200) {result: map{cf_api_id: str, created_at: str(date-time), created_by: str?, enabled: bool, id: str(uuid), legacy: bool, modified_at: str(date-time), modified_by: str?, name: str}, success: bool} # Returns the updated Object\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/ai/authors/search\n@desc Author Search\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [str], result: [map], success: bool} # Returns a list of authors\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/finetunes\n@desc List Finetunes\n@required {account_id: str}\n@returns(200) {result: map{created_at: str(date-time), description: str, id: str(uuid), model: str, modified_at: str(date-time), name: str}, success: bool} # Returns all finetunes\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/finetunes\n@desc Create a new Finetune\n@required {account_id: str, model: str, name: str}\n@optional {description: str, public: bool=false}\n@returns(200) {result: map{created_at: str(date-time), description: str, id: str(uuid), model: str, modified_at: str(date-time), name: str, public: bool}, success: bool} # Returns the created finetune\n@errors {400: Finetune creation failed}\n\n@endpoint GET /accounts/{account_id}/ai/finetunes/public\n@desc List Public Finetunes\n@required {account_id: str}\n@optional {limit: num # Pagination Limit, offset: num # Pagination Offset, orderBy: str # Order By Column Name}\n@returns(200) {result: [map], success: bool} # Returns all public finetunes\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/finetunes/{finetune_id}/finetune-assets\n@desc Upload a Finetune Asset\n@required {account_id: str, finetune_id: str}\n@returns(200) {success: bool} # Returns successfully if finetunes were uploaded\n@errors {400: Finetune creation failed}\n\n@endpoint GET /accounts/{account_id}/ai/models/schema\n@desc Get Model Schema\n@required {account_id: str, model: str # Model Name}\n@returns(200) {result: map{input: map{additionalProperties: bool, description: str, type: str}, output: map{additionalProperties: bool, description: str, type: str}}, success: bool} # Model Schema\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/models/search\n@desc Model Search\n@required {account_id: str}\n@optional {per_page: int, page: int, task: str # Filter by Task Name, author: str # Filter by Author, source: num # Filter by Source Id, hide_experimental: bool # Filter to hide experimental models, search: str # Search}\n@returns(200) {errors: [map], messages: [str], result: [map], success: bool} # Returns a list of models\n@errors {404: Object not found}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/ai4bharat/indictrans2-en-indic-1B\n@desc Execute @cf/ai4bharat/indictrans2-en-indic-1B model.\n@required {account_id: str, target_language: str(asm_Beng/awa_Deva/ben_Beng/bho_Deva/brx_Deva/doi_Deva/eng_Latn/gom_Deva/gon_Deva/guj_Gujr/hin_Deva/hne_Deva/kan_Knda/kas_Arab/kas_Deva/kha_Latn/lus_Latn/mag_Deva/mai_Deva/mal_Mlym/mar_Deva/mni_Beng/mni_Mtei/npi_Deva/ory_Orya/pan_Guru/san_Deva/sat_Olck/snd_Arab/snd_Deva/tam_Taml/tel_Telu/urd_Arab/unr_Deva)=hin_Deva # Target langauge to translate to, text: any # Input text to translate. Can be a single string or a list of strings.}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/ai4bharat/nonomni-indictrans2-en-indic-1b\n@desc Execute @cf/ai4bharat/nonomni-indictrans2-en-indic-1b model.\n@required {account_id: str, target_language: str(asm_Beng/awa_Deva/ben_Beng/bho_Deva/brx_Deva/doi_Deva/eng_Latn/gom_Deva/gon_Deva/guj_Gujr/hin_Deva/hne_Deva/kan_Knda/kas_Arab/kas_Deva/kha_Latn/lus_Latn/mag_Deva/mai_Deva/mal_Mlym/mar_Deva/mni_Beng/mni_Mtei/npi_Deva/ory_Orya/pan_Guru/san_Deva/sat_Olck/snd_Arab/snd_Deva/tam_Taml/tel_Telu/urd_Arab/unr_Deva)=hin_Deva # Target langauge to translate to, text: any # Input text to translate. Can be a single string or a list of strings.}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/aisingapore/gemma-sea-lion-v4-27b-it\n@desc Execute @cf/aisingapore/gemma-sea-lion-v4-27b-it model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/bge-base-en-v1.5\n@desc Execute @cf/baai/bge-base-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/bge-large-en-v1.5\n@desc Execute @cf/baai/bge-large-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/bge-m3\n@desc Execute @cf/baai/bge-m3 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/bge-reranker-base\n@desc Execute @cf/baai/bge-reranker-base model.\n@required {account_id: str, contexts: [map{text: str}] # List of provided contexts. Note that the index in this array is important, as the response will refer to it., query: str # A query you wish to perform against the provided contexts.}\n@optional {queueRequest: str, tags: str, top_k: int # Number of returned results starting with the best score.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/bge-small-en-v1.5\n@desc Execute @cf/baai/bge-small-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-base-en-v1.5\n@desc Execute @cf/baai/nonomni-bge-base-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-large-en-v1.5\n@desc Execute @cf/baai/nonomni-bge-large-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-m3\n@desc Execute @cf/baai/nonomni-bge-m3 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/baai/nonomni-bge-small-en-v1.5\n@desc Execute @cf/baai/nonomni-bge-small-en-v1.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-1-schnell\n@desc Execute @cf/black-forest-labs/flux-1-schnell model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate.}\n@optional {queueRequest: str, tags: str, steps: int=4 # The number of diffusion steps; higher values can improve quality but take longer.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-dev\n@desc Execute @cf/black-forest-labs/flux-2-dev model.\n@required {account_id: str, multipart: map{body: map, contentType: str}}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-4b\n@desc Execute @cf/black-forest-labs/flux-2-klein-4b model.\n@required {account_id: str, multipart: map{body: map, contentType: str}}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/black-forest-labs/flux-2-klein-9b\n@desc Execute @cf/black-forest-labs/flux-2-klein-9b model.\n@required {account_id: str, multipart: map{body: map, contentType: str}}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/bytedance/stable-diffusion-xl-lightning\n@desc Execute @cf/bytedance/stable-diffusion-xl-lightning model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate}\n@optional {queueRequest: str, tags: str, guidance: num=7.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int # The height of the generated image in pixels, image: [num] # For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values, image_b64: str # For use with img2img tasks. A base64-encoded string of the input image, mask: [num] # An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values, negative_prompt: str # Text describing elements to avoid in the generated image, num_steps: int=20 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, strength: num=1 # A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image, width: int # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura\n@desc Open Websocket connection with @cf/deepgram/aura model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1\n@desc Open Websocket connection with @cf/deepgram/aura-1 model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-1\n@desc Execute @cf/deepgram/aura-1 model.\n@required {account_id: str, text: str # The text content to be converted to speech}\n@optional {queueRequest: str, tags: str, bit_rate: num # The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type., container: str(none/wav/ogg) # Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.., encoding: str(linear16/flac/mulaw/alaw/mp3/opus/aac) # Encoding of the output audio., sample_rate: num # Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable, speaker: str(angus/asteria/arcas/orion/orpheus/athena/luna/zeus/perseus/helios/hera/stella)=angus # Speaker used to produce the audio.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1-internal\n@desc Open Websocket connection with @cf/deepgram/aura-1-internal model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2\n@desc Open Websocket connection with @cf/deepgram/aura-2 model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en\n@desc Open Websocket connection with @cf/deepgram/aura-2-en model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en\n@desc Execute @cf/deepgram/aura-2-en model.\n@required {account_id: str, text: str # The text content to be converted to speech}\n@optional {queueRequest: str, tags: str, bit_rate: num # The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type., container: str(none/wav/ogg) # Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.., encoding: str(linear16/flac/mulaw/alaw/mp3/opus/aac) # Encoding of the output audio., sample_rate: num # Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable, speaker: str(amalthea/andromeda/apollo/arcas/aries/asteria/athena/atlas/aurora/callista/cora/cordelia/delia/draco/electra/harmonia/helena/hera/hermes/hyperion/iris/janus/juno/jupiter/luna/mars/minerva/neptune/odysseus/ophelia/orion/orpheus/pandora/phoebe/pluto/saturn/thalia/theia/vesta/zeus)=luna # Speaker used to produce the audio.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es\n@desc Open Websocket connection with @cf/deepgram/aura-2-es model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es\n@desc Execute @cf/deepgram/aura-2-es model.\n@required {account_id: str, text: str # The text content to be converted to speech}\n@optional {queueRequest: str, tags: str, bit_rate: num # The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type., container: str(none/wav/ogg) # Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.., encoding: str(linear16/flac/mulaw/alaw/mp3/opus/aac) # Encoding of the output audio., sample_rate: num # Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable, speaker: str(sirio/nestor/carina/celeste/alvaro/diana/aquila/selena/estrella/javier)=aquila # Speaker used to produce the audio.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/flux\n@desc Open Websocket connection with @cf/deepgram/flux model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepgram/flux\n@desc Execute @cf/deepgram/flux model.\n@required {account_id: str, encoding: str # Encoding of the audio stream. Currently only supports raw signed little-endian 16-bit PCM., sample_rate: str # Sample rate of the audio stream in Hz.}\n@optional {queueRequest: str, tags: str, eager_eot_threshold: str # End-of-turn confidence required to fire an eager end-of-turn event. When set, enables EagerEndOfTurn and TurnResumed events. Valid Values 0.3 - 0.9., eot_threshold: str=0.7 # End-of-turn confidence required to finish a turn. Valid Values 0.5 - 0.9., eot_timeout_ms: str=5000 # A turn will be finished when this much time has passed after speech, regardless of EOT confidence., keyterm: str # Keyterm prompting can improve recognition of specialized terminology. Pass multiple keyterm query parameters to boost multiple keyterms., mip_opt_out: str(true/false)=false # Opts out requests from the Deepgram Model Improvement Program. Refer to Deepgram Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip, tag: str # Label your requests for the purpose of identification during usage reporting}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3\n@desc Open Websocket connection with @cf/deepgram/nova-3 model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepgram/nova-3\n@desc Execute @cf/deepgram/nova-3 model.\n@required {account_id: str, audio: map{body!: map, contentType!: str}}\n@optional {queueRequest: str, tags: str, channels: num # The number of channels in the submitted audio, custom_intent: str # Custom intents you want the model to detect within your input audio if present, custom_intent_mode: str(extended/strict) # Sets how the model will interpret intents submitted to the custom_intent param. When strict, the model will only return intents submitted using the custom_intent param. When extended, the model will return its own detected intents in addition those submitted using the custom_intents param, custom_topic: str # Custom topics you want the model to detect within your input audio or text if present Submit up to 100, custom_topic_mode: str(extended/strict) # Sets how the model will interpret strings submitted to the custom_topic param. When strict, the model will only return topics submitted using the custom_topic param. When extended, the model will return its own detected topics in addition to those submitted using the custom_topic param., detect_entities: bool # Identifies and extracts key entities from content in submitted audio, detect_language: bool # Identifies the dominant language spoken in submitted audio, diarize: bool # Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0, dictation: bool # Identify and extract key entities from content in submitted audio, encoding: str(linear16/flac/mulaw/amr-nb/amr-wb/opus/speex/g729) # Specify the expected encoding of your submitted audio, endpointing: str # Indicates how long model will wait to detect whether a speaker has finished speaking or pauses for a significant period of time. When set to a value, the streaming endpoint immediately finalizes the transcription for the processed time range and returns the transcript with a speech_final parameter set to true. Can also be set to false to disable endpointing, extra: str # Arbitrary key-value pairs that are attached to the API response for usage in downstream processing, filler_words: bool # Filler Words can help transcribe interruptions in your audio, like 'uh' and 'um', interim_results: bool # Specifies whether the streaming endpoint should provide ongoing transcription updates as more audio is received. When set to true, the endpoint sends continuous updates, meaning transcription results may evolve over time. Note: Supported only for webosockets., keyterm: str # Key term prompting can boost or suppress specialized terminology and brands., keywords: str # Keywords can boost or suppress specialized terminology and brands., language: str # The BCP-47 language tag that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available., measurements: bool # Spoken measurements will be converted to their corresponding abbreviations., mip_opt_out: bool # Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip., mode: str(general/medical/finance) # Mode of operation for the model representing broad area of topic that will be talked about in the supplied audio, multichannel: bool # Transcribe each audio channel independently., numerals: bool # Numerals converts numbers from written format to numerical format., paragraphs: bool # Splits audio into paragraphs to improve transcript readability., profanity_filter: bool # Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely., punctuate: bool # Add punctuation and capitalization to the transcript., redact: str # Redaction removes sensitive information from your transcripts., replace: str # Search for terms or phrases in submitted audio and replaces them., search: str # Search for terms or phrases in submitted audio., sentiment: bool # Recognizes the sentiment throughout a transcript or text., smart_format: bool # Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability., topics: bool # Detect topics throughout a transcript or text., utt_split: num # Seconds to wait before detecting a pause between words in submitted audio., utterance_end_ms: bool # Indicates how long model will wait to send an UtteranceEnd message after a word has been transcribed. Use with interim_results. Note: Supported only for webosockets., utterances: bool # Segments speech into meaningful semantic units., vad_events: bool # Indicates that speech has started. You'll begin receiving Speech Started messages upon speech starting. Note: Supported only for webosockets.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-internal\n@desc Open Websocket connection with @cf/deepgram/nova-3-internal model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-ws\n@desc Open Websocket connection with @cf/deepgram/nova-3-ws model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-math-7b-instruct\n@desc Execute @cf/deepseek-ai/deepseek-math-7b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b\n@desc Execute @cf/deepseek-ai/deepseek-r1-distill-qwen-32b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/defog/sqlcoder-7b-2\n@desc Execute @cf/defog/sqlcoder-7b-2 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/facebook/bart-large-cnn\n@desc Execute @cf/facebook/bart-large-cnn model.\n@required {account_id: str, input_text: str # The text that you want the model to summarize}\n@optional {queueRequest: str, tags: str, max_length: int=1024 # The maximum length of the generated summary in tokens}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/facebook/nonomni-bart-large-cnn\n@desc Execute @cf/facebook/nonomni-bart-large-cnn model.\n@required {account_id: str, input_text: str # The text that you want the model to summarize}\n@optional {queueRequest: str, tags: str, max_length: int=1024 # The maximum length of the generated summary in tokens}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/facebook/nonomni-detr-resnet-50\n@desc Execute @cf/facebook/nonomni-detr-resnet-50 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/fblgit/una-cybertron-7b-v2-bf16\n@desc Execute @cf/fblgit/una-cybertron-7b-v2-bf16 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/google/embeddinggemma-300m\n@desc Execute @cf/google/embeddinggemma-300m model.\n@required {account_id: str, text: any}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/google/gemma-2b-it-lora\n@desc Execute @cf/google/gemma-2b-it-lora model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/google/gemma-3-12b-it\n@desc Execute @cf/google/gemma-3-12b-it model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/google/gemma-7b-it-lora\n@desc Execute @cf/google/gemma-7b-it-lora model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/google/nonomni-embeddinggemma-300m\n@desc Execute @cf/google/nonomni-embeddinggemma-300m model.\n@required {account_id: str, text: any # Input text to embed. Can be a single string or a list of strings.}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/huggingface/distilbert-sst-2-int8\n@desc Execute @cf/huggingface/distilbert-sst-2-int8 model.\n@required {account_id: str, text: str # The text that you want to classify}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/huggingface/nonomni-distilbert-sst-2-int8\n@desc Execute @cf/huggingface/nonomni-distilbert-sst-2-int8 model.\n@required {account_id: str, text: str # The text that you want to classify}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/ibm-granite/granite-4.0-h-micro\n@desc Execute @cf/ibm-granite/granite-4.0-h-micro model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/leonardo/lucid-origin\n@desc Execute @cf/leonardo/lucid-origin model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate.}\n@optional {queueRequest: str, tags: str, guidance: num=4.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int=1120 # The height of the generated image in pixels, num_steps: int # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, steps: int # The number of diffusion steps; higher values can improve quality but take longer, width: int=1120 # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/leonardo/phoenix-1.0\n@desc Execute @cf/leonardo/phoenix-1.0 model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate.}\n@optional {queueRequest: str, tags: str, guidance: num=2 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int=1024 # The height of the generated image in pixels, negative_prompt: str # Specify what to exclude from the generated images, num_steps: int=25 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, width: int=1024 # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/lykon/dreamshaper-8-lcm\n@desc Execute @cf/lykon/dreamshaper-8-lcm model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate}\n@optional {queueRequest: str, tags: str, guidance: num=7.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int # The height of the generated image in pixels, image: [num] # For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values, image_b64: str # For use with img2img tasks. A base64-encoded string of the input image, mask: [num] # An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values, negative_prompt: str # Text describing elements to avoid in the generated image, num_steps: int=20 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, strength: num=1 # A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image, width: int # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta-llama/llama-2-7b-chat-hf-lora\n@desc Execute @cf/meta-llama/llama-2-7b-chat-hf-lora model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-fp16\n@desc Execute @cf/meta/llama-2-7b-chat-fp16 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-2-7b-chat-int8\n@desc Execute @cf/meta/llama-2-7b-chat-int8 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct\n@desc Execute @cf/meta/llama-3-8b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3-8b-instruct-awq\n@desc Execute @cf/meta/llama-3-8b-instruct-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-70b-instruct-fp8-fast\n@desc Execute @cf/meta/llama-3.1-70b-instruct-fp8-fast model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-awq\n@desc Execute @cf/meta/llama-3.1-8b-instruct-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8\n@desc Execute @cf/meta/llama-3.1-8b-instruct-fp8 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.1-8b-instruct-fp8-fast\n@desc Execute @cf/meta/llama-3.1-8b-instruct-fp8-fast model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-11b-vision-instruct\n@desc Execute @cf/meta/llama-3.2-11b-vision-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-1b-instruct\n@desc Execute @cf/meta/llama-3.2-1b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.2-3b-instruct\n@desc Execute @cf/meta/llama-3.2-3b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-3.3-70b-instruct-fp8-fast\n@desc Execute @cf/meta/llama-3.3-70b-instruct-fp8-fast model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-4-scout-17b-16e-instruct\n@desc Execute @cf/meta/llama-4-scout-17b-16e-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/llama-guard-3-8b\n@desc Execute @cf/meta/llama-guard-3-8b model.\n@required {account_id: str, messages: [map{content!: str, role!: any}] # An array of message objects representing the conversation history.}\n@optional {queueRequest: str, tags: str, max_tokens: int=256 # The maximum number of tokens to generate in the response., response_format: map{type: str} # Dictate the output format of the generated response., temperature: num=0.6 # Controls the randomness of the output; higher values produce more random results.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/meta/m2m100-1.2b\n@desc Execute @cf/meta/m2m100-1.2b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/microsoft/nonomni-resnet-50\n@desc Execute @cf/microsoft/nonomni-resnet-50 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/microsoft/phi-2\n@desc Execute @cf/microsoft/phi-2 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/microsoft/resnet-50\n@desc Execute @cf/microsoft/resnet-50 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.1\n@desc Execute @cf/mistral/mistral-7b-instruct-v0.1 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/mistral/mistral-7b-instruct-v0.2-lora\n@desc Execute @cf/mistral/mistral-7b-instruct-v0.2-lora model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/mistralai/mistral-small-3.1-24b-instruct\n@desc Execute @cf/mistralai/mistral-small-3.1-24b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/moonshotai/kimi-k2.5\n@desc Execute @cf/moonshotai/kimi-k2.5 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/myshell-ai/melotts\n@desc Execute @cf/myshell-ai/melotts model.\n@required {account_id: str, prompt: str # A text description of the audio you want to generate}\n@optional {queueRequest: str, tags: str, lang: str=en # The speech language (e.g., 'en' for English, 'fr' for French). Defaults to 'en' if not specified}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/nvidia/nemotron-3-120b-a12b\n@desc Execute @cf/nvidia/nemotron-3-120b-a12b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-120b\n@desc Execute @cf/openai/gpt-oss-120b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openai/gpt-oss-20b\n@desc Execute @cf/openai/gpt-oss-20b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openai/whisper\n@desc Execute @cf/openai/whisper model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openai/whisper-large-v3-turbo\n@desc Execute @cf/openai/whisper-large-v3-turbo model.\n@required {account_id: str, audio: any}\n@optional {queueRequest: str, tags: str, beam_size: int=5 # The number of beams to use in beam search decoding. Higher values may improve accuracy at the cost of speed., compression_ratio_threshold: num=2.4 # Threshold for filtering out segments with high compression ratio, which often indicate repetitive or hallucinated text., condition_on_previous_text: bool=true # Whether to condition on previous text during transcription. Setting to false may help prevent hallucination loops., hallucination_silence_threshold: num # Optional threshold (in seconds) to skip silent periods that may cause hallucinations., initial_prompt: str # A text prompt to help provide context to the model on the contents of the audio., language: str # The language of the audio being transcribed or translated., log_prob_threshold: num=-1 # Threshold for filtering out segments with low average log probability, indicating low confidence., no_speech_threshold: num=0.6 # Threshold for detecting no-speech segments. Segments with no-speech probability above this value are skipped., prefix: str # The prefix appended to the beginning of the output of the transcription and can guide the transcription result., task: str=transcribe # Supported tasks are 'translate' or 'transcribe'., vad_filter: bool=false # Preprocess the audio with a voice activity detection model.}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openai/whisper-tiny-en\n@desc Execute @cf/openai/whisper-tiny-en model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/openchat/openchat-3.5-0106\n@desc Execute @cf/openchat/openchat-3.5-0106 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/pfnet/plamo-embedding-1b\n@desc Execute @cf/pfnet/plamo-embedding-1b model.\n@required {account_id: str, text: any # Input text to embed. Can be a single string or a list of strings.}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v2\n@desc Open Websocket connection with @cf/pipecat-ai/smart-turn-v2 model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v3\n@desc Open Websocket connection with @cf/pipecat-ai/smart-turn-v3 model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-0.5b-chat\n@desc Execute @cf/qwen/qwen1.5-0.5b-chat model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-1.8b-chat\n@desc Execute @cf/qwen/qwen1.5-1.8b-chat model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-14b-chat-awq\n@desc Execute @cf/qwen/qwen1.5-14b-chat-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen1.5-7b-chat-awq\n@desc Execute @cf/qwen/qwen1.5-7b-chat-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen2.5-coder-32b-instruct\n@desc Execute @cf/qwen/qwen2.5-coder-32b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen3-30b-a3b-fp8\n@desc Execute @cf/qwen/qwen3-30b-a3b-fp8 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwen3-embedding-0.6b\n@desc Execute @cf/qwen/qwen3-embedding-0.6b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str, documents: any, instruction: str=Given a web search query, retrieve relevant passages that answer the query # Optional instruction for the task, queries: any, text: any}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/qwen/qwq-32b\n@desc Execute @cf/qwen/qwq-32b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-img2img\n@desc Execute @cf/runwayml/stable-diffusion-v1-5-img2img model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate}\n@optional {queueRequest: str, tags: str, guidance: num=7.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int # The height of the generated image in pixels, image: [num] # For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values, image_b64: str # For use with img2img tasks. A base64-encoded string of the input image, mask: [num] # An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values, negative_prompt: str # Text describing elements to avoid in the generated image, num_steps: int=20 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, strength: num=1 # A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image, width: int # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/runwayml/stable-diffusion-v1-5-inpainting\n@desc Execute @cf/runwayml/stable-diffusion-v1-5-inpainting model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate}\n@optional {queueRequest: str, tags: str, guidance: num=7.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int # The height of the generated image in pixels, image: [num] # For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values, image_b64: str # For use with img2img tasks. A base64-encoded string of the input image, mask: [num] # An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values, negative_prompt: str # Text describing elements to avoid in the generated image, num_steps: int=20 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, strength: num=1 # A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image, width: int # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/stabilityai/stable-diffusion-xl-base-1.0\n@desc Execute @cf/stabilityai/stable-diffusion-xl-base-1.0 model.\n@required {account_id: str, prompt: str # A text description of the image you want to generate}\n@optional {queueRequest: str, tags: str, guidance: num=7.5 # Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt, height: int # The height of the generated image in pixels, image: [num] # For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values, image_b64: str # For use with img2img tasks. A base64-encoded string of the input image, mask: [num] # An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values, negative_prompt: str # Text describing elements to avoid in the generated image, num_steps: int=20 # The number of diffusion steps; higher values can improve quality but take longer, seed: int # Random seed for reproducibility of the image generation, strength: num=1 # A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image, width: int # The width of the generated image in pixels}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/sven/test-pipe-http\n@desc Open Websocket connection with @cf/sven/test-pipe-http model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/run/@cf/test/hello-world-cog\n@desc Open Websocket connection with @cf/test/hello-world-cog model.\n@required {account_id: str}\n@errors {101: Returns a websocket connection, 400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/thebloke/discolm-german-7b-v1-awq\n@desc Execute @cf/thebloke/discolm-german-7b-v1-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/tiiuae/falcon-7b-instruct\n@desc Execute @cf/tiiuae/falcon-7b-instruct model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/tinyllama/tinyllama-1.1b-chat-v1.0\n@desc Execute @cf/tinyllama/tinyllama-1.1b-chat-v1.0 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@cf/zai-org/glm-4.7-flash\n@desc Execute @cf/zai-org/glm-4.7-flash model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/google/gemma-7b-it\n@desc Execute @hf/google/gemma-7b-it model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/mistral/mistral-7b-instruct-v0.2\n@desc Execute @hf/mistral/mistral-7b-instruct-v0.2 model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/nexusflow/starling-lm-7b-beta\n@desc Execute @hf/nexusflow/starling-lm-7b-beta model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/nousresearch/hermes-2-pro-mistral-7b\n@desc Execute @hf/nousresearch/hermes-2-pro-mistral-7b model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-base-awq\n@desc Execute @hf/thebloke/deepseek-coder-6.7b-base-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/deepseek-coder-6.7b-instruct-awq\n@desc Execute @hf/thebloke/deepseek-coder-6.7b-instruct-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/llama-2-13b-chat-awq\n@desc Execute @hf/thebloke/llama-2-13b-chat-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/mistral-7b-instruct-v0.1-awq\n@desc Execute @hf/thebloke/mistral-7b-instruct-v0.1-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/neural-chat-7b-v3-1-awq\n@desc Execute @hf/thebloke/neural-chat-7b-v3-1-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/openhermes-2.5-mistral-7b-awq\n@desc Execute @hf/thebloke/openhermes-2.5-mistral-7b-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/@hf/thebloke/zephyr-7b-beta-awq\n@desc Execute @hf/thebloke/zephyr-7b-beta-awq model.\n@required {account_id: str}\n@optional {queueRequest: str, tags: str}\n@returns(200) Object with user data.\n@errors {400: Bad request}\n\n@endpoint POST /accounts/{account_id}/ai/run/{model_name}\n@desc Execute AI model\n@required {account_id: str, model_name: str}\n@returns(200) {result: map} # Model response\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/tasks/search\n@desc Task Search\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [str], result: [map], success: bool} # Returns a list of tasks\n@errors {404: Object not found}\n\n@endpoint POST /accounts/{account_id}/ai/tomarkdown\n@desc Convert Files into Markdown\n@required {account_id: str}\n@returns(200) {result: [map], success: bool} # Model Schema\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/ai/tomarkdown/supported\n@desc Get all converted formats supported\n@required {account_id: str}\n@returns(200) {result: [map], success: bool} # Successful response\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/available_alerts\n@desc Get Alert Types\n@required {account_id: str}\n@returns(200) Get Alert Types response\n@errors {4XX: Get Alert Types response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/destinations/eligible\n@desc Get delivery mechanism eligibility\n@required {account_id: str}\n@returns(200) Get delivery mechanism eligibility response\n@errors {4XX: Get delivery mechanism eligibility response failure}\n\n@endpoint DELETE /accounts/{account_id}/alerting/v3/destinations/pagerduty\n@desc Delete PagerDuty Services\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete PagerDuty Services response\n@errors {4XX: Delete PagerDuty Services response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/destinations/pagerduty\n@desc List PagerDuty services\n@required {account_id: str}\n@returns(200) List PagerDuty services response\n@errors {4XX: List PagerDuty services response failure}\n\n@endpoint POST /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect\n@desc Create PagerDuty integration token\n@required {account_id: str}\n@returns(201) Token for PagerDuty integration\n@errors {4XX: Create a token for PagerDuty integration failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id}\n@desc Connect PagerDuty\n@required {account_id: str, token_id: str}\n@returns(200) Create a Notification policy response\n@errors {4XX: Create a Notification policy response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/destinations/webhooks\n@desc List webhooks\n@required {account_id: str}\n@returns(200) List webhooks response\n@errors {4XX: List webhooks response failure}\n\n@endpoint POST /accounts/{account_id}/alerting/v3/destinations/webhooks\n@desc Create a webhook\n@required {account_id: str, name: str # The name of the webhook destination. This will be included in the request body when you receive a webhook notification., url: str # The POST endpoint to call when dispatching a notification.}\n@optional {secret: str # Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.}\n@returns(201) Create a webhook response\n@errors {4XX: Create a webhook response failure}\n\n@endpoint DELETE /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n@desc Delete a webhook\n@required {webhook_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete a webhook response\n@errors {4XX: Delete a webhook response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n@desc Get a webhook\n@required {account_id: str, webhook_id: str}\n@returns(200) Get a webhook response\n@errors {4XX: Get a webhook response failure}\n\n@endpoint PUT /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}\n@desc Update a webhook\n@required {webhook_id: str, account_id: str, name: str # The name of the webhook destination. This will be included in the request body when you receive a webhook notification., url: str # The POST endpoint to call when dispatching a notification.}\n@optional {secret: str # Optional secret that will be passed in the `cf-webhook-auth` header when dispatching generic webhook notifications or formatted for supported destinations. Secrets are not returned in any API response body.}\n@returns(200) Update a webhook response\n@errors {4XX: Update a webhook response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/history\n@desc List History\n@required {account_id: str}\n@optional {per_page: num, before: str(date-time), page: num=1, since: str(date-time)}\n@returns(200) List History response\n@errors {4XX: List History response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/policies\n@desc List Notification policies\n@required {account_id: str}\n@returns(200) List Notification policies response\n@errors {4XX: List Notification policies response failure}\n\n@endpoint POST /accounts/{account_id}/alerting/v3/policies\n@desc Create a Notification policy\n@required {account_id: str, alert_type: str(abuse_report_alert/access_custom_certificate_expiration_type/advanced_ddos_attack_l4_alert/advanced_ddos_attack_l7_alert/advanced_http_alert_error/bgp_hijack_notification/billing_usage_alert/block_notification_block_removed/block_notification_new_block/block_notification_review_rejected/bot_traffic_basic_alert/brand_protection_alert/brand_protection_digest/clickhouse_alert_fw_anomaly/clickhouse_alert_fw_ent_anomaly/cloudforce_one_request_notification/cni_maintenance_notification/custom_analytics/custom_bot_detection_alert/custom_ssl_certificate_event_type/dedicated_ssl_certificate_event_type/device_connectivity_anomaly_alert/dos_attack_l4/dos_attack_l7/expiring_service_token_alert/failing_logpush_job_disabled_alert/fbm_auto_advertisement/fbm_dosd_attack/fbm_volumetric_attack/health_check_status_notification/hostname_aop_custom_certificate_expiration_type/http_alert_edge_error/http_alert_origin_error/image_notification/image_resizing_notification/incident_alert/load_balancing_health_alert/load_balancing_pool_enablement_alert/logo_match_alert/magic_tunnel_health_check_event/magic_wan_tunnel_health/maintenance_event_notification/mtls_certificate_store_certificate_expiration_type/pages_event_alert/radar_notification/real_origin_monitoring/scriptmonitor_alert_new_code_change_detections/scriptmonitor_alert_new_hosts/scriptmonitor_alert_new_malicious_hosts/scriptmonitor_alert_new_malicious_scripts/scriptmonitor_alert_new_malicious_url/scriptmonitor_alert_new_max_length_resource_url/scriptmonitor_alert_new_resources/secondary_dns_all_primaries_failing/secondary_dns_primaries_failing/secondary_dns_warning/secondary_dns_zone_successfully_updated/secondary_dns_zone_validation_warning/security_insights_alert/sentinel_alert/stream_live_notifications/synthetic_test_latency_alert/synthetic_test_low_availability_alert/traffic_anomalies_alert/tunnel_health_event/tunnel_update_event/universal_ssl_event_type/web_analytics_metrics_update/zone_aop_custom_certificate_expiration_type) # Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values., enabled: bool=true # Whether or not the Notification policy is enabled., mechanisms: map{email: [map], pagerduty: [map], webhooks: [map]} # List of IDs that will be used when dispatching a notification. IDs for email type will be the email address., name: str # Name of the policy.}\n@optional {alert_interval: str # Optional specification of how often to re-alert from the same incident, not support on all alert types., description: str # Optional description for the Notification policy., filters: map{actions: [str], affected_asns: [str], affected_components: [str], affected_locations: [str], airport_code: [str], alert_trigger_preferences: [str], alert_trigger_preferences_value: [str], enabled: [str], environment: [str], event: [str], event_source: [str], event_type: [str], group_by: [str], health_check_id: [str], incident_impact: [str], input_id: [str], insight_class: [str], limit: [str], logo_tag: [str], megabits_per_second: [str], new_health: [str], new_status: [str], packets_per_second: [str], pool_id: [str], pop_names: [str], product: [str], project_id: [str], protocol: [str], query_tag: [str], requests_per_second: [str], selectors: [str], services: [str], slo: [str], status: [str], target_hostname: [str], target_ip: [str], target_zone_name: [str], traffic_exclusions: [str], tunnel_id: [str], tunnel_name: [str], type: [str], where: [str], zones: [str]} # Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details.}\n@returns(200) Create a Notification policy response\n@errors {4XX: Create a Notification policy response failure}\n\n@endpoint DELETE /accounts/{account_id}/alerting/v3/policies/{policy_id}\n@desc Delete a Notification policy\n@required {account_id: str, policy_id: str}\n@returns(200) Delete a Notification policy response\n@errors {4XX: Delete a Notification policy response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/policies/{policy_id}\n@desc Get a Notification policy\n@required {account_id: str, policy_id: str}\n@returns(200) Get a Notification policy response\n@errors {4XX: Get a Notification policy response failure}\n\n@endpoint PUT /accounts/{account_id}/alerting/v3/policies/{policy_id}\n@desc Update a Notification policy\n@required {account_id: str, policy_id: str}\n@optional {alert_interval: str # Optional specification of how often to re-alert from the same incident, not support on all alert types., alert_type: str(abuse_report_alert/access_custom_certificate_expiration_type/advanced_ddos_attack_l4_alert/advanced_ddos_attack_l7_alert/advanced_http_alert_error/bgp_hijack_notification/billing_usage_alert/block_notification_block_removed/block_notification_new_block/block_notification_review_rejected/bot_traffic_basic_alert/brand_protection_alert/brand_protection_digest/clickhouse_alert_fw_anomaly/clickhouse_alert_fw_ent_anomaly/cloudforce_one_request_notification/cni_maintenance_notification/custom_analytics/custom_bot_detection_alert/custom_ssl_certificate_event_type/dedicated_ssl_certificate_event_type/device_connectivity_anomaly_alert/dos_attack_l4/dos_attack_l7/expiring_service_token_alert/failing_logpush_job_disabled_alert/fbm_auto_advertisement/fbm_dosd_attack/fbm_volumetric_attack/health_check_status_notification/hostname_aop_custom_certificate_expiration_type/http_alert_edge_error/http_alert_origin_error/image_notification/image_resizing_notification/incident_alert/load_balancing_health_alert/load_balancing_pool_enablement_alert/logo_match_alert/magic_tunnel_health_check_event/magic_wan_tunnel_health/maintenance_event_notification/mtls_certificate_store_certificate_expiration_type/pages_event_alert/radar_notification/real_origin_monitoring/scriptmonitor_alert_new_code_change_detections/scriptmonitor_alert_new_hosts/scriptmonitor_alert_new_malicious_hosts/scriptmonitor_alert_new_malicious_scripts/scriptmonitor_alert_new_malicious_url/scriptmonitor_alert_new_max_length_resource_url/scriptmonitor_alert_new_resources/secondary_dns_all_primaries_failing/secondary_dns_primaries_failing/secondary_dns_warning/secondary_dns_zone_successfully_updated/secondary_dns_zone_validation_warning/security_insights_alert/sentinel_alert/stream_live_notifications/synthetic_test_latency_alert/synthetic_test_low_availability_alert/traffic_anomalies_alert/tunnel_health_event/tunnel_update_event/universal_ssl_event_type/web_analytics_metrics_update/zone_aop_custom_certificate_expiration_type) # Refers to which event will trigger a Notification dispatch. You can use the endpoint to get available alert types which then will give you a list of possible values., description: str # Optional description for the Notification policy., enabled: bool=true # Whether or not the Notification policy is enabled., filters: map{actions: [str], affected_asns: [str], affected_components: [str], affected_locations: [str], airport_code: [str], alert_trigger_preferences: [str], alert_trigger_preferences_value: [str], enabled: [str], environment: [str], event: [str], event_source: [str], event_type: [str], group_by: [str], health_check_id: [str], incident_impact: [str], input_id: [str], insight_class: [str], limit: [str], logo_tag: [str], megabits_per_second: [str], new_health: [str], new_status: [str], packets_per_second: [str], pool_id: [str], pop_names: [str], product: [str], project_id: [str], protocol: [str], query_tag: [str], requests_per_second: [str], selectors: [str], services: [str], slo: [str], status: [str], target_hostname: [str], target_ip: [str], target_zone_name: [str], traffic_exclusions: [str], tunnel_id: [str], tunnel_name: [str], type: [str], where: [str], zones: [str]} # Optional filters that allow you to be alerted only on a subset of events for that alert type based on some criteria. This is only available for select alert types. See alert type documentation for more details., mechanisms: map{email: [map], pagerduty: [map], webhooks: [map]} # List of IDs that will be used when dispatching a notification. IDs for email type will be the email address., name: str # Name of the policy.}\n@returns(200) Update a Notification policy response\n@errors {4XX: Update a Notification policy response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/silences\n@desc List Silences\n@required {account_id: str}\n@returns(200) List Silences response\n@errors {4XX: List Silences response failure}\n\n@endpoint POST /accounts/{account_id}/alerting/v3/silences\n@desc Create Silences\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Create Silences response\n@errors {4XX: Create Silences response failure}\n\n@endpoint PUT /accounts/{account_id}/alerting/v3/silences\n@desc Update Silences\n@required {account_id: str}\n@returns(200) Update Silences response\n@errors {4XX: Update Silences response failure}\n\n@endpoint DELETE /accounts/{account_id}/alerting/v3/silences/{silence_id}\n@desc Delete Silence\n@required {account_id: str, silence_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete Silence response\n@errors {4XX: Delete Silence response failure}\n\n@endpoint GET /accounts/{account_id}/alerting/v3/silences/{silence_id}\n@desc Get Silence\n@required {account_id: str, silence_id: str}\n@returns(200) Get Silence response\n@errors {4XX: Get Silence response failure}\n\n@endpoint GET /accounts/{account_id}/audit_logs\n@desc Get account audit logs\n@required {account_id: str}\n@optional {id: str, export: bool, action.type: str, actor.ip: str, actor.email: str(email), since: any, before: any, zone.name: str, direction: str(desc/asc)=desc, per_page: num=100, page: num=1, hide_user_logs: bool=false}\n@returns(200) Get account audit logs response\n@errors {4XX: Get account audit logs response failure}\n\n@endpoint POST /accounts/{account_id}/autorag/rags/{id}/ai-search\n@desc AI Search\n@required {id: str # rag id, account_id: str, query: str}\n@optional {filters: any, max_num_results: int=10, model: any, ranking_options: map{ranker: str, score_threshold: num}=[object Object], reranking: map{enabled: bool, model: any}, rewrite_query: bool=false, stream: bool=false, system_prompt: str}\n@returns(200) {result: map{data: [map], has_more: bool, next_page: str?, object: str, response: str, search_query: str}, success: bool} # Returns the log details\n@errors {404: Not Found}\n\n@endpoint GET /accounts/{account_id}/autorag/rags/{id}/files\n@desc Files\n@required {id: str # rag id, account_id: str}\n@optional {page: int=1, per_page: int=20, search: str, status: str(completed/queued/running/error)}\n@returns(200) {result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Returns the AI Search files\n@errors {404: autorag_not_found, 503: unable_to_connect_to_autorag}\n\n@endpoint GET /accounts/{account_id}/autorag/rags/{id}/jobs\n@desc List Jobs\n@required {id: str # rag id, account_id: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) {result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Returns a list of AutoRAG Jobs\n@errors {404: autorag_not_found, 503: unable_to_connect_to_autorag}\n\n@endpoint GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}\n@desc Get a Job Details\n@required {id: str # rag id, job_id: str, account_id: str}\n@returns(200) {result: map{end_reason: str, ended_at: str, id: str, last_seen_at: str, source: str, started_at: str}, success: bool} # Returns a AutoRAG Job Details\n@errors {404: job_not_found, 503: unable_to_connect_to_autorag}\n\n@endpoint GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}/logs\n@desc List Job Logs\n@required {id: str # rag id, job_id: str, account_id: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) {result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Returns a list of AutoRAG Job Logs\n@errors {404: autorag_not_found, 503: unable_to_connect_to_autorag}\n\n@endpoint POST /accounts/{account_id}/autorag/rags/{id}/search\n@desc Search\n@required {id: str # rag id, account_id: str, query: str}\n@optional {filters: any, max_num_results: int=10, ranking_options: map{ranker: str, score_threshold: num}=[object Object], reranking: map{enabled: bool, model: any}, rewrite_query: bool=false}\n@returns(200) {result: map{data: [map], has_more: bool, next_page: str?, object: str, search_query: str}, success: bool} # Returns the log details\n@errors {404: Not Found}\n\n@endpoint PATCH /accounts/{account_id}/autorag/rags/{id}/sync\n@desc Sync\n@required {id: str # rag id, account_id: str}\n@returns(200) {result: map{job_id: str}, success: bool} # Returns the autorag sync status\n@errors {400: autorag_is_paused, 404: autorag_not_found, 429: sync_in_cooldown, 503: unable_to_connect_to_autorag}\n\n@endpoint GET /accounts/{account_id}/billing/profile\n@desc Billing Profile Details\n@required {account_id: str}\n@returns(200) Billing Profile Details response\n@errors {4XX: Billing Profile Details response failure}\n\n@endpoint GET /accounts/{account_id}/billing/usage/paygo\n@desc Get PayGo Account Billable Usage (Beta)\n@required {account_id: str # Identifies the account.}\n@optional {from: str(date) # Defines the start date for the usage query (e.g., 2025-02-01)., to: str(date) # Defines the end date for the usage query (e.g., 2025-03-01).}\n@returns(200) {errors: [map]?, messages: [map]?, result: [map], success: bool} # Indicates PayGo account usage data was successfully retrieved.\n@errors {4XX: Indicates the request failed.}\n\n@endpoint GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/day_report\n@desc Get daily report\n@required {account_id: str, asn_id: int}\n@optional {date: str(date-time)}\n@returns(200) Get botnet feed report for day\n@errors {4XX: Get botnet feed report for day response failure}\n\n@endpoint GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/full_report\n@desc Get full report\n@required {account_id: str, asn_id: int}\n@returns(200) Get full botnet feed report\n@errors {4XX: Get full botnet feed report response failure}\n\n@endpoint GET /accounts/{account_id}/botnet_feed/configs/asn\n@desc Get list of ASNs\n@required {account_id: str}\n@returns(200) Get list of ASNs response\n@errors {4XX: Get list of ASNs response failure}\n\n@endpoint DELETE /accounts/{account_id}/botnet_feed/configs/asn/{asn_id}\n@desc Delete an ASN\n@required {account_id: str, asn_id: int}\n@returns(200) Delete ASN response\n@errors {4XX: Delete ASN response failure}\n\n@endpoint GET /accounts/{account_id}/brand-protection/alerts\n@desc Read all alerts on submitted domains\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/alerts\n@desc Update alerts on submitted domains by ID\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/alerts/clear\n@desc Update verification statuses of tracked URLs to awaiting by ID\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/alerts/refute\n@desc Update verification statuses of tracked URLs to disproven by ID\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/alerts/verify\n@desc Update verification statuses of tracked URLs to confirmed by ID\n\n@endpoint DELETE /accounts/{account_id}/brand-protection/brands\n@desc Delete brands by ID\n\n@endpoint GET /accounts/{account_id}/brand-protection/brands\n@desc Read all brands\n\n@endpoint POST /accounts/{account_id}/brand-protection/brands\n@desc Create new brands\n\n@endpoint DELETE /accounts/{account_id}/brand-protection/brands/patterns\n@desc Delete patterns for brands by ID\n\n@endpoint GET /accounts/{account_id}/brand-protection/brands/patterns\n@desc Read patterns for brands by ID\n\n@endpoint POST /accounts/{account_id}/brand-protection/brands/patterns\n@desc Create new patterns for brands by ID\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/clear\n@desc Update verification statuses of submitted URLs to awaiting by ID\n\n@endpoint GET /accounts/{account_id}/brand-protection/domain-info\n@desc Read submitted domains by ID\n\n@endpoint GET /accounts/{account_id}/brand-protection/logo-matches\n@desc Read matches for logo queries by ID\n@optional {logo_id: [str], offset: str, limit: str}\n@returns(200) {matches: [map], total: int} # OK\n@errors {422: Unprocessable Content}\n\n@endpoint GET /accounts/{account_id}/brand-protection/logo-matches/download\n@desc Download matches for logo queries by ID\n@optional {logo_id: [str], offset: str, limit: str}\n@returns(200) {matches: [map], total: int} # OK\n@errors {422: Unprocessable Content}\n\n@endpoint GET /accounts/{account_id}/brand-protection/logos\n@desc Read all saved logo queries\n\n@endpoint POST /accounts/{account_id}/brand-protection/logos\n@desc Create new saved logo queries from image files\n@optional {tag: str, match_type: str, threshold: num}\n@returns(201) {id: int, tag: str, upload_path: str} # Created\n@errors {422: Unprocessable Content}\n\n@endpoint DELETE /accounts/{account_id}/brand-protection/logos/{logo_id}\n@desc Delete saved logo queries by ID\n@returns(204) No Content\n\n@endpoint GET /accounts/{account_id}/brand-protection/logos/{logo_id}\n@desc Read saved logo queries by ID\n\n@endpoint GET /accounts/{account_id}/brand-protection/matches\n@desc Read matches for string queries by ID\n@optional {id: str, offset: int, limit: int, include_domain_id: bool}\n@returns(200) {matches: [map], total: int} # OK\n@errors {422: Unprocessable Content}\n\n@endpoint GET /accounts/{account_id}/brand-protection/matches/download\n@desc Download matches for string queries by ID\n@optional {id: str, offset: int, limit: int, include_domain_id: bool}\n@returns(200) {matches: [map], total: int} # OK\n@errors {422: Unprocessable Content}\n\n@endpoint DELETE /accounts/{account_id}/brand-protection/queries\n@desc Delete saved string queries by ID\n@optional {id: str, tag: str, scan: bool}\n@returns(204) No Content\n@errors {422: Unprocessable Content}\n\n@endpoint GET /accounts/{account_id}/brand-protection/queries\n@desc Read string queries by ID\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/queries\n@desc Update saved string queries by ID\n@optional {id: int # The query ID to update (required when updating tag or scan), scan: bool # Whether to scan matches, string_matches: [map{max_edit_distance: num, pattern!: str}] # Updated pattern match constraints. When provided, replaces the existing string_matches., tag: str # Query tag. Required as identifier when updating string_matches.}\n\n@endpoint POST /accounts/{account_id}/brand-protection/queries\n@desc Create new saved string queries\n@optional {id: str, tag: str, scan: bool, max_time: str(date-time), min_time: str(date-time), scan: bool, string_matches: any, tag: str}\n@returns(204) No Content\n@errors {422: Unprocessable Content}\n\n@endpoint POST /accounts/{account_id}/brand-protection/queries/bulk\n@desc Create new saved string queries in bulk\n@optional {queries: [map]}\n@returns(204) No Content\n@errors {422: Unprocessable Content}\n\n@endpoint GET /accounts/{account_id}/brand-protection/recent-submissions\n@desc Read recent URL submissions\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/refute\n@desc Update verification statuses of submitted URLs to disproven by ID\n\n@endpoint POST /accounts/{account_id}/brand-protection/scan-logo\n@desc Create new logo queries from image files\n\n@endpoint POST /accounts/{account_id}/brand-protection/scan-page\n@desc Create new logo queries from URLs\n\n@endpoint POST /accounts/{account_id}/brand-protection/search\n@desc Create new string queries\n\n@endpoint GET /accounts/{account_id}/brand-protection/submission-info\n@desc Read URL submissions by ID\n\n@endpoint POST /accounts/{account_id}/brand-protection/submit\n@desc Create new URL submissions\n@returns(201) {skipped_urls: [map], submitted_urls: [map]} # Created\n\n@endpoint GET /accounts/{account_id}/brand-protection/total-queries\n@desc Read the total number of saved string queries\n\n@endpoint GET /accounts/{account_id}/brand-protection/tracked-domains\n@desc Read submitted domains by pattern\n\n@endpoint GET /accounts/{account_id}/brand-protection/url-info\n@desc Read submitted URLs by ID\n@returns(200) {result: [map]} # OK\n\n@endpoint PATCH /accounts/{account_id}/brand-protection/verify\n@desc Update verification statuses of submitted URLs to confirmed by ID\n\n@endpoint POST /accounts/{account_id}/browser-rendering/content\n@desc Get HTML content.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], meta: map{status: num, title: str}, result: str, success: bool} # Returns the page's content.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/crawl\n@desc Crawl websites.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], result: str, success: bool} # Returns the ID for the started crawl job.\n@errors {400: The request contains errors or didn't properly encode content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint DELETE /accounts/{account_id}/browser-rendering/crawl/{job_id}\n@desc Cancel a crawl job.\n@required {account_id: str # Account ID., job_id: str # The ID of the crawl job to cancel.}\n@returns(200) {errors: [map], result: map{job_id: str, message: str}, success: bool} # Crawl job cancelled successfully.\n@errors {400: Job is already in final status and cannot be cancelled., 404: Crawl job not found., 500: Internal server error.}\n\n@endpoint GET /accounts/{account_id}/browser-rendering/crawl/{job_id}\n@desc Get crawl result.\n@required {account_id: str # Account ID., job_id: str # Crawl job ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable., status: str(queued/errored/completed/disallowed/skipped/cancelled) # Filter by URL status., cursor: num=0 # Cursor for pagination., limit: num=50 # Limit for pagination.}\n@returns(200) {errors: [map], result: map{browserSecondsUsed: num, cursor: str, finished: num, id: str, records: [map], skipped: num, status: str, total: num}, success: bool} # Returns the result of a crawl job.\n@errors {400: The request contains errors or didn't properly encode content., 500: Internal server error.}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/json\n@desc Get json.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], result: map, success: bool} # Returns the JSON based on a user prompt or JSON schema.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/links\n@desc Get Links.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], result: [str], success: bool} # Returns the links.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/markdown\n@desc Get markdown.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], result: str, success: bool} # Returns the page markdown.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/pdf\n@desc Get PDF.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) Returns the PDF.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/scrape\n@desc Scrape elements.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], result: [map], success: bool} # Returns the scraped elements.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"elements\":[{\"selector\":\"h1\"}],\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/screenshot\n@desc Get screenshot.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], success: bool} # Returns the screenshot.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint POST /accounts/{account_id}/browser-rendering/snapshot\n@desc Get HTML content and screenshot.\n@required {account_id: str # Account ID.}\n@optional {cacheTTL: num=5 # Cache TTL default is 5s. Set to 0 to disable.}\n@returns(200) {errors: [map], meta: map{status: num, title: str}, result: map{content: str, screenshot: str}, success: bool} # Returns the screenshot.\n@errors {400: The request contains errors or didn't properly encode content., 422: Request failed due to site-related issues such as timeouts, SSL errors, or inaccessible content., 429: Request failed due to rate limiting. The Retry-After header indicates when the client should retry the request., 500: Internal server error.}\n@example_request {\"url\":\"https://www.example.com/\"}\n\n@endpoint GET /accounts/{account_id}/builds/account/limits\n@desc Get account limits\n@required {account_id: str}\n@returns(200) Account limits retrieved successfully\n\n@endpoint GET /accounts/{account_id}/builds/builds\n@desc Get builds by version IDs\n@required {account_id: str, version_ids: str}\n@returns(200) Builds retrieved successfully\n\n@endpoint GET /accounts/{account_id}/builds/builds/latest\n@desc Get latest builds by script IDs\n@required {account_id: str, external_script_ids: str}\n@returns(200) Latest builds retrieved successfully\n\n@endpoint GET /accounts/{account_id}/builds/builds/{build_uuid}\n@desc Get build by UUID\n@required {account_id: str, build_uuid: str(uuid)}\n@returns(200) Build retrieved successfully\n@errors {404: Resource not found}\n\n@endpoint PUT /accounts/{account_id}/builds/builds/{build_uuid}/cancel\n@desc Cancel build\n@required {account_id: str, build_uuid: str(uuid)}\n@returns(200) Build canceled successfully\n@errors {404: Resource not found}\n\n@endpoint GET /accounts/{account_id}/builds/builds/{build_uuid}/logs\n@desc Get build logs\n@required {account_id: str, build_uuid: str(uuid)}\n@optional {cursor: str}\n@returns(200) Build logs retrieved successfully\n@errors {404: Resource not found}\n\n@endpoint PUT /accounts/{account_id}/builds/repos/connections\n@desc Create or update repository connection\n@required {account_id: str, provider_account_id: str # Provider account identifier., provider_account_name: str, provider_type: str, repo_id: str # Repository identifier., repo_name: str}\n@returns(200) Repository connection upserted successfully\n\n@endpoint DELETE /accounts/{account_id}/builds/repos/connections/{repo_connection_uuid}\n@desc Delete repository connection\n@required {account_id: str, repo_connection_uuid: str(uuid)}\n@returns(200) {errors: [map], messages: [str], result: map?, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # Operation successful\n@errors {404: Resource not found}\n\n@endpoint GET /accounts/{account_id}/builds/repos/{provider_type}/{provider_account_id}/{repo_id}/config_autofill\n@desc Get repository configuration autofill\n@required {account_id: str, provider_type: str # SCM provider type, provider_account_id: str, repo_id: str, branch: str}\n@optional {root_directory: str}\n@returns(200) Configuration autofill data retrieved successfully\n\n@endpoint GET /accounts/{account_id}/builds/tokens\n@desc List build tokens\n@required {account_id: str}\n@optional {page: int=1 # Page number for pagination, per_page: int=50 # Number of items per page}\n@returns(200) Build tokens retrieved successfully\n\n@endpoint POST /accounts/{account_id}/builds/tokens\n@desc Create build token\n@required {account_id: str, build_token_name: str, build_token_secret: str, cloudflare_token_id: str}\n@returns(200) Build token created successfully\n\n@endpoint DELETE /accounts/{account_id}/builds/tokens/{build_token_uuid}\n@desc Delete build token\n@required {account_id: str, build_token_uuid: str(uuid)}\n@returns(200) {errors: [map], messages: [str], result: map?, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # Operation successful\n@errors {404: Resource not found}\n\n@endpoint POST /accounts/{account_id}/builds/triggers\n@desc Create trigger\n@required {account_id: str, branch_excludes: [str], branch_includes: [str], build_command: str, build_token_uuid: str(uuid) # Build token UUID., deploy_command: str, external_script_id: str # External script identifier., path_excludes: [str], path_includes: [str]=*, repo_connection_uuid: str(uuid) # Repository connection UUID., root_directory: str # Root directory path., trigger_name: str}\n@optional {build_caching_enabled: bool=false}\n@returns(200) Trigger created successfully\n\n@endpoint DELETE /accounts/{account_id}/builds/triggers/{trigger_uuid}\n@desc Delete trigger\n@required {account_id: str, trigger_uuid: str(uuid)}\n@returns(200) {errors: [map], messages: [str], result: map?, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # Operation successful\n@errors {404: Resource not found}\n\n@endpoint PATCH /accounts/{account_id}/builds/triggers/{trigger_uuid}\n@desc Update trigger\n@required {account_id: str, trigger_uuid: str(uuid)}\n@optional {branch_excludes: [str], branch_includes: [str], build_caching_enabled: bool=false, build_command: str, build_token_uuid: str(uuid) # Build token UUID., deploy_command: str, path_excludes: [str], path_includes: [str]=*, root_directory: str # Root directory path., trigger_name: str}\n@returns(200) Trigger updated successfully\n@errors {404: Resource not found}\n\n@endpoint POST /accounts/{account_id}/builds/triggers/{trigger_uuid}/builds\n@desc Create manual build\n@required {account_id: str, trigger_uuid: str(uuid)}\n@optional {branch: any # Git branch name (required if commit_hash not provided), commit_hash: any # Git commit hash (required if branch not provided), seed_repo: map{branch!: str, files: [map], owner!: str, path!: str, provider!: str, repository!: str}}\n@returns(200) Build created successfully\n\n@endpoint GET /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables\n@desc List environment variables\n@required {account_id: str, trigger_uuid: str(uuid)}\n@returns(200) Environment variables retrieved successfully\n\n@endpoint PATCH /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables\n@desc Upsert environment variables\n@required {account_id: str, trigger_uuid: str(uuid)}\n@returns(200) Environment variables updated successfully\n@errors {404: Resource not found}\n\n@endpoint DELETE /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables/{environment_variable_key}\n@desc Delete environment variable\n@required {account_id: str, trigger_uuid: str(uuid), environment_variable_key: str}\n@returns(200) {errors: [map], messages: [str], result: map?, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # Operation successful\n@errors {404: Resource not found}\n\n@endpoint POST /accounts/{account_id}/builds/triggers/{trigger_uuid}/purge_build_cache\n@desc Purge build cache\n@required {account_id: str, trigger_uuid: str(uuid)}\n@returns(200) {errors: [map], messages: [str], result: map?, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # Operation successful\n@errors {404: Resource not found}\n\n@endpoint GET /accounts/{account_id}/builds/workers/{external_script_id}/builds\n@desc List builds by script\n@required {account_id: str, external_script_id: str}\n@optional {page: int=1 # Page number for pagination, per_page: int=50 # Number of items per page}\n@returns(200) Builds retrieved successfully\n\n@endpoint GET /accounts/{account_id}/builds/workers/{external_script_id}/triggers\n@desc List triggers by script\n@required {account_id: str, external_script_id: str}\n@returns(200) Triggers retrieved successfully\n\n@endpoint GET /accounts/{account_id}/calls/apps\n@desc List apps\n@required {account_id: str}\n@returns(200) List apps response\n@errors {4XX: List apps response failure}\n\n@endpoint POST /accounts/{account_id}/calls/apps\n@desc Create a new app\n@required {account_id: str}\n@optional {name: str= # A short description of Calls app, not shown to end users.}\n@returns(201) Created a new app\n\n@endpoint DELETE /accounts/{account_id}/calls/apps/{app_id}\n@desc Delete app\n@required {app_id: str, account_id: str}\n@returns(200) Delete app response\n@errors {4XX: Delete app response failure}\n\n@endpoint GET /accounts/{account_id}/calls/apps/{app_id}\n@desc Retrieve app details\n@required {app_id: str, account_id: str}\n@returns(200) Retrieve app details response\n@errors {4XX: Retrieve app details response failure}\n\n@endpoint PUT /accounts/{account_id}/calls/apps/{app_id}\n@desc Edit app details\n@required {app_id: str, account_id: str}\n@optional {name: str= # A short description of Calls app, not shown to end users.}\n@returns(200) Edit app details response\n@errors {4XX: Edit app details response failure}\n\n@endpoint GET /accounts/{account_id}/calls/turn_keys\n@desc List TURN Keys\n@required {account_id: str}\n@returns(200) List TURN key response\n@errors {4XX: List TURN key response failure}\n\n@endpoint POST /accounts/{account_id}/calls/turn_keys\n@desc Create a new TURN key\n@required {account_id: str}\n@optional {name: str= # A short description of a TURN key, not shown to end users.}\n@returns(201) Created a new TURN key\n\n@endpoint DELETE /accounts/{account_id}/calls/turn_keys/{key_id}\n@desc Delete TURN key\n@required {key_id: str, account_id: str}\n@returns(200) Delete TURN key response\n@errors {4XX: Delete TURN key response failure}\n\n@endpoint GET /accounts/{account_id}/calls/turn_keys/{key_id}\n@desc Retrieve TURN key details\n@required {key_id: str, account_id: str}\n@returns(200) Retrieve TURN key details response\n@errors {4XX: Retrieve TURN key details failure}\n\n@endpoint PUT /accounts/{account_id}/calls/turn_keys/{key_id}\n@desc Edit TURN key details\n@required {key_id: str, account_id: str}\n@optional {name: str= # A short description of a TURN key, not shown to end users.}\n@returns(200) Edit TURN key details response\n@errors {4XX: Edit TURN key details response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel\n@desc List Cloudflare Tunnels\n@required {account_id: str}\n@optional {name: str, is_deleted: bool, existed_at: str(url-encoded-date-time), uuid: str(uuid), was_active_at: str(date-time), was_inactive_at: str(date-time), include_prefix: str, exclude_prefix: str, status: str, per_page: num, page: num}\n@returns(200) List Cloudflare Tunnels response\n@errors {4XX: List Cloudflare Tunnels response failure}\n\n@endpoint POST /accounts/{account_id}/cfd_tunnel\n@desc Create a Cloudflare Tunnel\n@required {account_id: str, name: str # A user-friendly name for a tunnel.}\n@optional {config_src: str(local/cloudflare)=local # Indicates if this is a locally or remotely configured tunnel. If `local`, manage the tunnel using a YAML file on the origin machine. If `cloudflare`, manage the tunnel on the Zero Trust dashboard., tunnel_secret: str # Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.}\n@returns(200) Create a Cloudflare Tunnel response\n@errors {4XX: Create a Cloudflare Tunnel response failure}\n\n@endpoint DELETE /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n@desc Delete a Cloudflare Tunnel\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Delete a Cloudflare Tunnel response\n@errors {4XX: Delete a Cloudflare Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n@desc Get a Cloudflare Tunnel\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Get a Cloudflare Tunnel response\n@errors {4XX: Get a Cloudflare Tunnel response failure}\n\n@endpoint PATCH /accounts/{account_id}/cfd_tunnel/{tunnel_id}\n@desc Update a Cloudflare Tunnel\n@required {tunnel_id: str(uuid), account_id: str}\n@optional {name: str # A user-friendly name for a tunnel., tunnel_secret: str # Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.}\n@returns(200) Update a Cloudflare Tunnel response\n@errors {4XX: Update a Cloudflare Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations\n@desc Get configuration\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Get configuration response\n@errors {4XX: Get configuration response failure}\n\n@endpoint PUT /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations\n@desc Put configuration\n@required {account_id: str, tunnel_id: str(uuid)}\n@optional {config: map{ingress: [map], originRequest: map, warp-routing: map} # The tunnel configuration and ingress rules.}\n@returns(200) Put configuration response\n@errors {4XX: Put configuration response failure}\n\n@endpoint DELETE /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections\n@desc Clean up Cloudflare Tunnel connections\n@required {account_id: str, tunnel_id: str(uuid)}\n@optional {client_id: str(uuid)}\n@returns(200) Clean up Cloudflare Tunnel connections response\n@errors {4XX: Clean up Cloudflare Tunnel connections response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections\n@desc List Cloudflare Tunnel connections\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) List Cloudflare Tunnel connections response\n@errors {4XX: List Cloudflare Tunnel connections response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id}\n@desc Get Cloudflare Tunnel connector\n@required {account_id: str, tunnel_id: str(uuid), connector_id: str(uuid)}\n@returns(200) Get Cloudflare Tunnel connector response\n@errors {4XX: Get Cloudflare Tunnel connector response failure}\n\n@endpoint POST /accounts/{account_id}/cfd_tunnel/{tunnel_id}/management\n@desc Get a Cloudflare Tunnel management token\n@required {account_id: str, tunnel_id: str(uuid), resources: [str]}\n@returns(200) Get a Cloudflare Tunnel management token response\n@errors {4XX: Cloudflare API response failure}\n\n@endpoint GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token\n@desc Get a Cloudflare Tunnel token\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Get a Cloudflare Tunnel token response\n@errors {4XX: Get a Cloudflare Tunnel token response failure}\n\n@endpoint GET /accounts/{account_id}/challenges/widgets\n@desc List Turnstile Widgets\n@returns(200) List Turnstile Widgets\n@errors {4XX: List Turnstile Widgets Error}\n\n@endpoint POST /accounts/{account_id}/challenges/widgets\n@desc Create a Turnstile Widget\n@required {domains: [str], mode: str(non-interactive/invisible/managed) # Widget Mode, name: str # Human readable widget name. Not unique. Cloudflare suggests that you set this to a meaningful string to make it easier to identify your widget, and where it is used.}\n@optional {bot_fight_mode: bool # If bot_fight_mode is set to `true`, Cloudflare issues computationally expensive challenges in response to malicious bots (ENT only)., clearance_level: str(no_clearance/jschallenge/managed/interactive) # If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance, this setting can determine the clearance level to be set, ephemeral_id: bool # Return the Ephemeral ID in /siteverify (ENT only)., offlabel: bool # Do not show any Cloudflare branding on the widget (ENT only)., region: str(world/china)=world # Region where this widget can be used. This cannot be changed after creation.}\n@returns(200) Create Turnstile Widget Response\n@errors {4XX: Create Turnstile Widget Response Error}\n\n@endpoint DELETE /accounts/{account_id}/challenges/widgets/{sitekey}\n@desc Delete a Turnstile Widget\n@returns(200) Delete Turnstile Widget Response\n@errors {4XX: Delete Turnstile Widget Response Error}\n\n@endpoint GET /accounts/{account_id}/challenges/widgets/{sitekey}\n@desc Turnstile Widget Details\n@returns(200) Turnstile Widget Details Response\n@errors {4XX: Turnstile Widget Details Response Error}\n\n@endpoint PUT /accounts/{account_id}/challenges/widgets/{sitekey}\n@desc Update a Turnstile Widget\n@required {domains: [str], mode: str(non-interactive/invisible/managed) # Widget Mode, name: str # Human readable widget name. Not unique. Cloudflare suggests that you set this to a meaningful string to make it easier to identify your widget, and where it is used.}\n@optional {bot_fight_mode: bool # If bot_fight_mode is set to `true`, Cloudflare issues computationally expensive challenges in response to malicious bots (ENT only)., clearance_level: str(no_clearance/jschallenge/managed/interactive) # If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance, this setting can determine the clearance level to be set, ephemeral_id: bool # Return the Ephemeral ID in /siteverify (ENT only)., offlabel: bool # Do not show any Cloudflare branding on the widget (ENT only)., region: str(world/china)=world # Region where this widget can be used. This cannot be changed after creation.}\n@returns(200) Update Turnstile Widget Response\n@errors {4XX: Update Turnstile Widget Response Error}\n\n@endpoint POST /accounts/{account_id}/challenges/widgets/{sitekey}/rotate_secret\n@desc Rotate Secret for a Turnstile Widget\n@optional {invalidate_immediately: bool=false # If `invalidate_immediately` is set to `false`, the previous secret will remain valid for two hours. Otherwise, the secret is immediately invalidated, and requests using it will be rejected.}\n@returns(200) Rotate Secret Response\n@errors {4XX: Rotate Secret Response Error}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/binary\n@desc Posts a file to Binary Storage\n@required {account_id: num # Account ID.}\n@returns(200) {content_type: str, md5: str, sha1: str, sha256: str} # Returns file information\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/binary/{hash}\n@desc Retrieves a file from Binary Storage\n@required {account_id: num # Account ID., hash: str # hash of the binary}\n@returns(200) Returns file information\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events\n@desc Filter and list events\n@required {account_id: str # Account ID.}\n@optional {cursor: str, search: [map]=, page: num, pageSize: num, orderBy: str, order: str(asc/desc), datasetId: [str], forceRefresh: bool, format: str(json/stix2)}\n@returns(200) Returns a list of events.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/aggregate\n@desc Aggregate events by single or multiple columns with optional date filtering\n@required {account_id: str # Account ID., aggregateBy: str # Column(s) to aggregate by - single column or comma-separated list (e.g., 'attacker', 'targetIndustry', 'attacker,targetIndustry')}\n@optional {datasetId: [str] # Dataset ID(s) to filter by. Can be a single dataset ID, comma-separated list, or array. If not provided, uses default dataset, startDate: str # Start date for filtering (ISO 8601 format, e.g., '2024-01-01'), endDate: str # End date for filtering (ISO 8601 format, e.g., '2024-12-31'), groupByDate: bool # Whether to group results by date (daily aggregation), limit: num=100 # Maximum number of results to return}\n@returns(200) {aggregateBy: str, aggregations: [any], dateRange: map{endDate: str, startDate: str}, total: num} # Returns aggregated event data.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/attackers\n@desc Lists attackers across multiple datasets\n@required {account_id: str # Account ID.}\n@optional {datasetIds: [str] # Array of dataset IDs to query attackers from. If not provided, uses the default dataset.}\n@returns(200) {items: map{type: str}, type: str} # Returns a list of attackers.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/categories\n@desc Lists categories across multiple datasets\n@required {account_id: str # Account ID.}\n@optional {datasetIds: [str] # Array of dataset IDs to query categories from. If not provided, uses the default dataset.}\n@returns(200) Returns a list of categories.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/categories/catalog\n@desc Lists categories\n@required {account_id: str # Account ID.}\n@returns(200) Returns a list of categories.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/categories/create\n@desc Creates a new category\n@required {account_id: str # Account ID., killChain: num, name: str}\n@optional {mitreAttack: [str], mitreCapec: [str], shortname: str}\n@returns(200) {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str, uuid: str} # Returns the created category.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n@desc Deletes a category\n@required {account_id: str # Account ID., category_id: str(uuid) # Category UUID.}\n@returns(200) {uuid: str} # Returns the uuid of the deleted category.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n@desc Reads a category\n@required {account_id: str # Account ID., category_id: str(uuid) # Category UUID.}\n@returns(200) {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str, uuid: str} # Returns a category.\n@errors {400: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n@desc Updates a category\n@required {account_id: str # Account ID., category_id: str(uuid) # Category UUID.}\n@optional {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str}\n@returns(200) {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str, uuid: str} # Returns the updated category.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/categories/{category_id}\n@desc Updates a category\n@required {account_id: str # Account ID., category_id: str(uuid) # Category UUID.}\n@optional {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str}\n@returns(200) {killChain: num, mitreAttack: [str], mitreCapec: [str], name: str, shortname: str, uuid: str} # Returns the updated category.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/countries\n@desc Retrieves countries information for all countries\n@required {account_id: str # Account ID.}\n@returns(200) Returns the long and short country code for every country.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/create\n@desc Creates a new event\n@required {account_id: str # Account ID., category: str, date: str(date-time), event: str, raw: map{data!: map, source: str, tlp: str}, tlp: str}\n@optional {accountId: num, attacker: str, attackerCountry: str, datasetId: str, indicator: str, indicatorType: str, indicators: [map{indicatorType!: str, value!: str}] # Array of indicators for this event. Supports multiple indicators per event for complex scenarios., insight: str, tags: [str], targetCountry: str, targetIndustry: str}\n@returns(200) {attacker: str, attackerCountry: str, category: str, datasetId: str, date: str, event: str, hasChildren: bool, indicator: str, indicatorType: str, indicatorTypeId: num, insight: str, killChain: num, mitreAttack: [str], mitreCapec: [str], numReferenced: num, numReferences: num, rawId: str, referenced: [str], referencedIds: [num], references: [str], referencesIds: [num], releasabilityId: str, tags: [str], targetCountry: str, targetIndustry: str, tlp: str, uuid: str} # Returns the created event.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/create/bulk\n@desc Creates bulk events\n@required {account_id: str # Account ID., data: [map{accountId: num, attacker: str, attackerCountry: str, category!: str, datasetId: str, date!: str(date-time), event!: str, indicator: str, indicatorType: str, indicators: [map], insight: str, raw!: map, tags: [str], targetCountry: str, targetIndustry: str, tlp!: str}], datasetId: str}\n@optional {includeCreatedEvents: bool # When true, response includes array of created event UUIDs and shard IDs. Useful for tracking which events were created and where.}\n@returns(202) {createBulkEventsRequestId: str(uuid), createdEvents: [map], createdEventsCount: num, createdTagsCount: num, errorCount: num, errors: [map], queuedIndicatorsCount: num} # Accepted. Events created; indicators queued for async processing.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/create/bulk/relationships\n@desc Creates bulk DOS event with relationships and indicators\n@required {account_id: str # Account ID., data: [map{accountId: num, attacker: str, attackerCountry: str, category!: str, datasetId: str, date!: str(date-time), event!: str, indicator: str, indicatorType: str, indicators: [map], insight: str, raw!: map, tags: [str], targetCountry: str, targetIndustry: str, tlp!: str}], datasetId: str}\n@returns(200) {createdEventsCount: num, createdIndicatorsCount: num, createdRelationshipsCount: num, errorCount: num, errors: [map]} # Returns the number of created bulk events with relationships.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset\n@desc Lists all datasets in an account\n@required {account_id: str # Account ID.}\n@returns(200) Returns a list of dataset in an account.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups\n@desc List groups for an account\n@required {account_id: str # Account ID.}\n@returns(200) Returns the list of groups.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/-/groups\n@desc Create a group\n@required {account_id: str # Account ID., description: str, name: str}\n@returns(200) {createdAt: str(date-time), description: str, name: str, updatedAt: str(date-time), uuid: str} # Returns the created group.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}\n@desc Delete a group for an account\n@required {account_id: str # Account ID., group_id: str}\n@returns(200) {message: str, success: bool} # Group deleted successfully.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}\n@desc Read a group for an account\n@required {account_id: str # Account ID., group_id: str}\n@returns(200) {createdAt: str(date-time), description: str, members: [map], name: str, updatedAt: str(date-time), uuid: str} # Return the group.\n@errors {400: Bad Request.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}\n@desc Update a group\n@required {account_id: str # Account ID., group_id: str, description: str, name: str}\n@returns(200) {createdAt: str(date-time), description: str, name: str, updatedAt: str(date-time), uuid: str} # Returns the updated group.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members\n@desc List group members\n@required {account_id: str # Account ID., group_id: str}\n@returns(200) Returns the group members.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members\n@desc Create a group member\n@required {account_id: str # Account ID., group_id: str}\n@optional {accountId: str, accountTag: str}\n@returns(200) {accountId: str, accountTag: str, createdAt: str(date-time), updatedAt: str(date-time), uuid: str} # Returns the created group member.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members/{member_id}\n@desc Delete a group member\n@required {account_id: str # Account ID., group_id: str, member_id: str}\n@returns(200) {message: str, success: bool} # Returns the created group member.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/create\n@desc Creates a dataset\n@required {account_id: str # Account ID., isPublic: bool # If true, then anyone can search the dataset. If false, then its limited to the account., name: str # Used to describe the dataset within the account context.}\n@returns(200) {isPublic: bool, name: str, uuid: str} # Returns dataset information.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}\n@desc Delete a dataset\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID to delete}\n@returns(200) {name: str, uuid: str} # Returns the uuid and name of the deleted dataset.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}\n@desc Reads a dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset ID.}\n@returns(200) {isPublic: bool, name: str, uuid: str} # Returns a dataset.\n@errors {400: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}\n@desc Updates an existing dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset ID., isPublic: bool # If true, then anyone can search the dataset. If false, then its limited to the account., name: str # Used to describe the dataset within the account context.}\n@returns(200) {isPublic: bool, name: str, uuid: str} # Returns dataset information.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}\n@desc Updates an existing dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset ID., isPublic: bool # If true, then anyone can search the dataset. If false, then its limited to the account., name: str # Used to describe the dataset within the account context.}\n@returns(200) {isPublic: bool, name: str, uuid: str} # Returns dataset information.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/copy\n@desc Copies specified events from one dataset to another dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., destDatasetId: str, eventIds: [str]}\n@optional {keepRawData: bool # If true, copies raw data to the destination dataset. Default is false (raw data is stripped/not copied).}\n@returns(200) {copied: num, indicatorsCopied: num, insertFailures: [map], relationshipsCopied: num} # Returns the number of copied events\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id}\n@desc Reads an event\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID., event_id: str # Event UUID.}\n@returns(200) {attacker: str, attackerCountry: str, category: str, datasetId: str, date: str, event: str, hasChildren: bool, indicator: str, indicatorType: str, indicatorTypeId: num, insight: str, killChain: num, mitreAttack: [str], mitreCapec: [str], numReferenced: num, numReferences: num, rawId: str, referenced: [str], referencedIds: [num], references: [str], referencesIds: [num], releasabilityId: str, tags: [str], targetCountry: str, targetIndustry: str, tlp: str, uuid: str} # Returns the event.\n@errors {404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicatorTypes/create\n@desc Create a new indicator type\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID., indicatorType: str # The indicator type to create (e.g., 'DOMAIN', 'IP', 'URL', 'HASH', 'EMAIL')}\n@optional {description: str # Optional description for the indicator type}\n@returns(200) {durableObjectId: str, indicatorType: str, message: str} # Indicator type created successfully\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators\n@desc Lists indicators\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID.}\n@optional {page: num, pageSize: num, name: str # Filter by indicator value (substring match), indicatorType: str, relatedEvent: [str] # Filter indicators by related event UUID(s). Multiple UUIDs can be provided by repeating the parameter.}\n@returns(200) {indicators: [map], pagination: map{page: num, pageSize: num, totalCount: num, totalPages: num}} # Returns a list of indicators.\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/bulk\n@desc Creates multiple indicators in bulk\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., indicators: [map{autoCreateType: bool, indicatorType!: str, relatedEvents: [map], tags: [any], value!: str}]}\n@optional {autoCreateType: bool # Global flag to automatically create indicator types if they don't exist. Individual indicators can override this with their own autoCreateType flag.}\n@returns(200) Returns the number of created indicators.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/create\n@desc Creates a new indicator\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., indicatorType: str, value: str}\n@optional {autoCreateType: bool # If true, automatically create the indicator type if it doesn't exist. If false (default), throw an error when the indicator type doesn't exist., relatedEvents: [map{datasetId!: str, eventId!: str}], tags: [any]}\n@returns(200) {createdAt: str(date-time), datasetId: str, indicatorType: str, relatedEvents: [map], tags: [map], updatedAt: str(date-time), uuid: str, value: str} # Returns the created indicator.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/tags\n@desc List mirrored tags for an indicator dataset\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID.}\n@returns(200) Returns an array of mirrored tags.\n@errors {400: Bad Request., 404: Bad Request., 500: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n@desc Deletes an indicator\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID., indicator_id: str # Indicator UUID.}\n@returns(200) {message: str, success: bool} # Indicator deleted successfully.\n@errors {404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n@desc Reads an indicator\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID., indicator_id: str # Indicator UUID.}\n@returns(200) {createdAt: str(date-time), datasetId: str, indicatorType: str, relatedEvents: [map], tags: [map], updatedAt: str(date-time), uuid: str, value: str} # Returns the indicator.\n@errors {404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}\n@desc Updates an indicator\n@required {account_id: str # Account ID., dataset_id: str # Dataset ID., indicator_id: str # Indicator UUID.}\n@optional {indicatorType: str, relatedEvents: [map{datasetId!: str, eventId!: str}], tags: [any], value: str}\n@returns(200) {createdAt: str(date-time), datasetId: str, indicatorType: str, relatedEvents: [map], tags: [map], updatedAt: str(date-time), uuid: str, value: str} # Returns the updated indicator.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/move\n@desc Moves specified events from one dataset to another dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., destDatasetId: str, eventIds: [str]}\n@optional {keepRawData: bool # If true, copies raw data to the destination dataset. Default is false (raw data is stripped/not copied). Raw data is always deleted from the source.}\n@returns(200) {deletionFailures: [map], indicatorsCopied: num, insertFailures: [map], moved: num, relationshipsCopied: num} # Returns the number of moved events\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions\n@desc List permissions for dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID.}\n@returns(200) Returns the list of permissions.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions\n@desc Create a permission for dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., role: str(read/write), subjectId: str, subjectType: str(account/group)}\n@returns(200) {createdAt: str(date-time), resourceId: str, resourceType: str, role: str, subjectId: str, subjectType: str, updatedAt: str(date-time), uuid: str} # Returns the created permission.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id}\n@desc Delete a permission for dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., grant_id: str}\n@returns(200) {message: str, success: bool} # Permission deleted successfully\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions/{grant_id}\n@desc Update a permission for dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., grant_id: str, role: str(read/write)}\n@returns(200) {message: str, success: bool} # Permission updated successfully\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/tags/{tag_uuid}/indicators\n@desc List indicators related to a tag\n@required {account_id: str # Account ID., tag_uuid: str # Tag UUID., dataset_id: str(uuid) # Dataset UUID.}\n@optional {page: num, pageSize: num, indicatorType: str, relatedEvent: [str] # Filter indicators by related event UUID(s). Multiple UUIDs can be provided by repeating the parameter.}\n@returns(200) {indicators: [map], pagination: map{page: num, pageSize: num, totalCount: num, totalPages: num}} # Returns a paginated list of indicators.\n@errors {400: Bad Request., 404: Bad Request., 500: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/targetIndustries\n@desc Lists all target industries for a specific dataset\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID.}\n@returns(200) {items: map{type: str}, type: str} # Returns a list of target industries for the dataset.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/datasets/populate\n@desc Populate dataset-specific lookup tables from existing Events data with batch processing\n@required {account_id: str # Account ID.}\n@returns(200) {properties: map{accountId: map{type: str}, datasets: map{items: map{properties: map, type: str}, type: str}, errors: map{items: map{type: str}, type: str}, summary: map{properties: map{failedDatasets: map, successfulDatasets: map, totalDatasets: map, totalIndicatorTypes: map, totalProcessingTimeMs: map}, type: str}}, type: str} # Returns population results with counts and any errors\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}\n@desc Removes a tag from an event\n@required {account_id: str # Account ID., event_id: str # Event UUID., tags: [str]}\n@returns(200) {result: map{success: bool}, success: bool} # Returns success if operation succeeded.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}/create\n@desc Adds a tag to an event\n@required {account_id: str # Account ID., event_id: str # Event UUID., tags: [str]}\n@returns(200) {result: map{success: bool}, success: bool} # Returns success if operation succeeded.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/graphql\n@desc GraphQL endpoint for event aggregation\n@required {account_id: str # Account ID.}\n@returns(200) {data: map?, errors: [map]?} # GraphQL response payload (data and errors).\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/indicator-types\n@desc Lists indicator types across multiple datasets\n@required {account_id: str # Account ID.}\n@optional {datasetIds: [str] # Array of dataset IDs to query indicator types from. If not provided, queries all datasets for the account.}\n@returns(200) {items: map{type: str}, type: str} # Returns a list of indicator types.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/indicatorTypes\n@desc Lists all indicator types\n@required {account_id: str # Account ID.}\n@returns(200) {items: map{type: str}, type: str} # Returns a list of indicator types.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/indicators\n@desc Lists indicators across multiple datasets\n@required {account_id: str # Account ID.}\n@optional {datasetIds: [str] # Dataset IDs to query indicators from (array of UUIDs), or special value 'all' or '*' to query all datasets. If not provided, uses the default dataset., page: num, pageSize: num, search: [map] # Structured search as a JSON array of {field, op, value} objects. Searchable fields: value, indicatorType. Supports operators: equals, not, contains, startsWith, endsWith, gt, lt, gte, lte, like, in, find. Use the 'in' operator with an array value to bulk-check up to 100 indicators in a single request, e.g. search=[{\"field\":\"value\",\"op\":\"in\",\"value\":[\"evil.com\",\"bad.org\"]}]. Multiple conditions are AND'd together. Max 10 conditions per request., name: str # Filter indicators by value using substring match (LIKE). Legacy alternative to structured search., indicatorType: str, relatedEvents: [str] # Filter by related event IDs, tags: [str] # Filter by tag values or UUIDs. Indicators must have at least one of the specified tags (OR logic). Supports both tag UUID and tag value., createdAfter: str(date-time) # Filter indicators created on or after this date. Must use ISO 8601 format (e.g., '2024-01-15T00:00:00Z')., createdBefore: str(date-time) # Filter indicators created on or before this date. Must use ISO 8601 format (e.g., '2024-12-31T23:59:59Z')., relatedEventsLimit: num # Limit the number of related events returned per indicator. Default: 2. Set to 0 for none, -1 for all events., includeTags: bool # Whether to include full tag details for each indicator. Defaults to true., includeTotalCount: bool # Whether to compute accurate total count via COUNT(*). Defaults to false for performance. When false, total_count is an approximation., format: str(json/stix2) # Output format for indicator data. 'json' returns the default format, 'stix2' returns STIX 2.1 Indicator SDOs.}\n@returns(200) {properties: map{indicators: map{items: map{createdAt: str(date-time), datasetId: str, indicatorType: str, relatedEvents: [map], tags: [map], updatedAt: str(date-time), uuid: str, value: str}, type: str}, pagination: map{properties: map{count: map, page: map, per_page: map, total_count: map}, type: str}}, type: str} # Returns a paginated list of indicators.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/queries\n@desc List all saved event queries\n@required {account_id: str # Account ID.}\n@returns(200) Returns a list of event queries.\n@errors {500: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/queries/alerts\n@desc List all event query alerts\n@required {account_id: str # Account ID.}\n@returns(200) Returns a list of event query alerts.\n@errors {500: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/queries/alerts/create\n@desc Create an event query alert\n@required {account_id: str # Account ID., query_id: int # ID of the event query to create an alert for}\n@optional {enabled: bool # Whether the alert is enabled, frequency: str(immediate/daily)=daily # Alert frequency (immediate or daily), notification_type: str=ans # Type of notification (e.g., ans)}\n@returns(200) {account_id: int, created_at: str, enabled: bool, frequency: str, id: int, last_sent_at: str, notification_type: str, query_id: int, updated_at: str, user_email: str} # Returns the created event query alert.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n@desc Delete an event query alert\n@required {account_id: str # Account ID., alert_id: int # Event query alert ID}\n@returns(200) Event query alert deleted successfully.\n@errors {404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n@desc Read an event query alert\n@required {account_id: str # Account ID., alert_id: int # Event query alert ID}\n@returns(200) {account_id: int, created_at: str, enabled: bool, frequency: str, id: int, last_sent_at: str, notification_type: str, query_id: int, updated_at: str, user_email: str} # Returns the event query alert.\n@errors {404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n@desc Update an event query alert\n@required {account_id: str # Account ID., alert_id: int # Event query alert ID}\n@optional {enabled: bool # Whether the alert is enabled, frequency: str(immediate/daily) # Alert frequency (immediate or daily), notification_type: str # Type of notification (e.g., ans)}\n@returns(200) {account_id: int, created_at: str, enabled: bool, frequency: str, id: int, last_sent_at: str, notification_type: str, query_id: int, updated_at: str, user_email: str} # Returns the updated event query alert.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}\n@desc Update an event query alert\n@required {account_id: str # Account ID., alert_id: int # Event query alert ID}\n@optional {enabled: bool # Whether the alert is enabled, frequency: str(immediate/daily) # Alert frequency (immediate or daily), notification_type: str # Type of notification (e.g., ans)}\n@returns(200) {account_id: int, created_at: str, enabled: bool, frequency: str, id: int, last_sent_at: str, notification_type: str, query_id: int, updated_at: str, user_email: str} # Returns the updated event query alert.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/queries/create\n@desc Create a saved event query\n@required {account_id: str # Account ID., alert_enabled: bool # Enable alerts for this query, alert_rollup_enabled: bool # Enable alert rollup for this query, name: str # Unique name for the saved query, query_json: str # JSON string containing the query parameters, rule_enabled: bool # Enable rule for this query}\n@optional {rule_scope: str # Scope for the rule}\n@returns(200) {account_id: int, alert_enabled: bool, alert_rollup_enabled: bool, created_at: str, id: int, name: str, query_json: str, rule_enabled: bool, rule_scope: str, updated_at: str, user_email: str} # Returns the created event query.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n@desc Delete a saved event query\n@required {account_id: str # Account ID., query_id: int # Event query ID}\n@returns(200) Event query deleted successfully.\n@errors {404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n@desc Read a saved event query\n@required {account_id: str # Account ID., query_id: int # Event query ID}\n@returns(200) {account_id: int, alert_enabled: bool, alert_rollup_enabled: bool, created_at: str, id: int, name: str, query_json: str, rule_enabled: bool, rule_scope: str, updated_at: str, user_email: str} # Returns the event query.\n@errors {404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n@desc Update a saved event query\n@required {account_id: str # Account ID., query_id: int # Event query ID}\n@optional {alert_enabled: bool # Enable alerts for this query, alert_rollup_enabled: bool # Enable alert rollup for this query, name: str # Unique name for the saved query, query_json: str # JSON string containing the query parameters, rule_enabled: bool # Enable rule for this query, rule_scope: str # Scope for the rule}\n@returns(200) {account_id: int, alert_enabled: bool, alert_rollup_enabled: bool, created_at: str, id: int, name: str, query_json: str, rule_enabled: bool, rule_scope: str, updated_at: str, user_email: str} # Returns the updated event query.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/queries/{query_id}\n@desc Update a saved event query\n@required {account_id: str # Account ID., query_id: int # Event query ID}\n@optional {alert_enabled: bool # Enable alerts for this query, alert_rollup_enabled: bool # Enable alert rollup for this query, name: str # Unique name for the saved query, query_json: str # JSON string containing the query parameters, rule_enabled: bool # Enable rule for this query, rule_scope: str # Scope for the rule}\n@returns(200) {account_id: int, alert_enabled: bool, alert_rollup_enabled: bool, created_at: str, id: int, name: str, query_json: str, rule_enabled: bool, rule_scope: str, updated_at: str, user_email: str} # Returns the updated event query.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id}\n@desc Reads raw data for an event by UUID\n@required {account_id: str # Account ID., event_id: str # Event ID., dataset_id: str # Dataset ID.}\n@returns(200) {accountId: num, created: str, data: str, id: num, source: str, tlp: str} # Returns the raw event data.\n@errors {404: Bad Request., 500: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/relate/{event_id}\n@desc Removes an event reference\n@required {account_id: str # Account ID., event_id: str # Event UUID., events: [str]}\n@returns(200) {result: map{success: bool}, success: bool} # Returns success if operation succeeded.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/relate/{event_id}/create\n@desc Creates event references for a event\n@required {account_id: str # Account ID., event_id: str # Event UUID., events: [str]}\n@returns(200) {result: map{success: bool}, success: bool} # Returns success if operation succeeded.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/relationships/create\n@desc Create a relationship between two events\n@required {account_id: str # Account ID., childIds: [str(uuid)] # Array of UUIDs for child events. Single child = 1:1 relationship, multiple = 1:many relationships, datasetId: str # Dataset identifier where the events are stored, parentId: str(uuid) # UUID of the parent event that will be the source of the relationship, relationshipType: str(related_to/caused_by/attributed_to) # Type of relationship to create between parent and child events}\n@returns(200) {childIds: [str(uuid)], errors: [map], message: str, relationships: [map], relationshipsCreated: num, success: bool} # Relationship created successfully\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/tags\n@desc Lists all tags (SoT)\n@required {account_id: str # Account ID.}\n@optional {page: num, pageSize: num, search: str, categoryUuid: str}\n@returns(200) {pagination: map{page: num, pageSize: num, totalCount: num, totalPages: num}, tags: [map]} # Returns a paginated list of tags.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/tags/categories\n@desc Lists all tag categories (SoT)\n@required {account_id: str # Account ID.}\n@optional {search: str}\n@returns(200) {categories: [map]} # Returns a list of tag categories.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/tags/categories/create\n@desc Creates a new tag category (SoT)\n@required {account_id: str # Account ID., name: str}\n@optional {description: str}\n@returns(200) {createdAt: str, description: str, name: str, updatedAt: str, uuid: str} # Returns the created tag category.\n@errors {400: Bad Request., 409: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/tags/categories/{category_uuid}\n@desc Deletes a tag category (SoT)\n@required {account_id: str # Account ID., category_uuid: str # Tag Category UUID.}\n@returns(200) {uuid: str} # Returns the uuid of the deleted tag category.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/tags/categories/{category_uuid}\n@desc Updates a tag category (SoT)\n@required {account_id: str # Account ID., category_uuid: str # Tag Category UUID.}\n@optional {description: str, name: str}\n@returns(200) {createdAt: str, description: str, name: str, updatedAt: str, uuid: str} # Returns the updated tag category.\n@errors {400: Bad Request., 404: Bad Request., 409: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/tags/create\n@desc Creates a new tag\n@required {account_id: str # Account ID., value: str}\n@optional {activeDuration: str, actorCategory: str, aliasGroupNames: [str], aliasGroupNamesInternal: [str], analyticPriority: num, attributionConfidence: str, attributionOrganization: str, categoryUuid: str, externalReferenceLinks: [str], internalDescription: str, motive: str, opsecLevel: str, originCountryISO: str, priority: num, sophisticationLevel: str}\n@returns(200) {activeDuration: str, actorCategory: str, aliasGroupNames: [str], aliasGroupNamesInternal: [str], analyticPriority: num, attributionConfidence: str, attributionOrganization: str, categoryName: str, categoryUuid: str, externalReferenceLinks: [str], internalDescription: str, motive: str, opsecLevel: str, originCountryISO: str, priority: num, sophisticationLevel: str, uuid: str, value: str} # Returns the created tag.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/tags/{tag_uuid}\n@desc Deletes a tag (SoT)\n@required {account_id: str # Account ID., tag_uuid: str # Tag UUID.}\n@returns(200) {uuid: str} # Returns the uuid of the deleted tag.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/tags/{tag_uuid}\n@desc Updates a tag (SoT)\n@required {account_id: str # Account ID., tag_uuid: str # Tag UUID.}\n@optional {activeDuration: str, actorCategory: str, aliasGroupNames: [str], aliasGroupNamesInternal: [str], analyticPriority: num, attributionConfidence: str, attributionOrganization: str, categoryUuid: str, externalReferenceLinks: [str], internalDescription: str, motive: str, opsecLevel: str, originCountryISO: str, priority: num, sophisticationLevel: str, value: str}\n@returns(200) {activeDuration: str, actorCategory: str, aliasGroupNames: [str], aliasGroupNamesInternal: [str], analyticPriority: num, attributionConfidence: str, attributionOrganization: str, categoryName: str, categoryUuid: str, externalReferenceLinks: [str], internalDescription: str, motive: str, opsecLevel: str, originCountryISO: str, priority: num, sophisticationLevel: str, uuid: str, value: str} # Returns the updated tag.\n@errors {400: Bad Request., 404: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/targetIndustries\n@desc Lists target industries across multiple datasets\n@required {account_id: str # Account ID.}\n@optional {datasetIds: [str] # Array of dataset IDs to query target industries from. If not provided, uses the default dataset.}\n@returns(200) {items: map{type: str}, type: str} # Returns a list of target industries.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/targetIndustries/catalog\n@desc Lists all target industries from industry map catalog\n@required {account_id: str # Account ID.}\n@returns(200) {items: map{type: str}, type: str} # Returns all target industries from industry map catalog.\n@errors {400: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/update/bulk\n@desc Bulk update events\n@required {account_id: str # Account ID., datasetId: str # Dataset ID containing the events to update. Required to prevent cross-account modifications., eventIds: [str] # List of event UUIDs to update (1-100), updates: map{attacker: str, attackerCountry: str, category: str, createdAt: str(date-time), event: str, indicator: str, indicatorType: str, insight: str, raw: map, targetCountry: str, targetIndustry: str, tlp: str} # Fields to update on all specified events. All fields including 'insight' are supported, except 'date' which requires shard migration.}\n@returns(200) {failedCount: num, failures: [map], updatedCount: num} # Returns the count of updated events and any failures.\n@errors {400: Bad Request.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/events/{dataset_id}/delete\n@desc Deletes one or more events\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., eventIds: [str] # Array of Event IDs to delete.}\n@returns(200) Returns the number of deleted events.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/{dataset_id}/revert-do\n@desc Revert an Events Durable Object to a point in time\n@required {account_id: str # Account ID., dataset_id: str(uuid) # Dataset UUID., minutesAgo: num}\n@returns(200) {properties: map{datasetId: map{type: str}, minutesAgo: map{type: str}, revertBookmark: map{type: str}, targetTimestamp: map{type: str}, undoBookmark: map{type: str}}, required: [str], type: str} # Revert scheduled for the specified Durable Object.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/{event_id}\n@desc Reads an event\n@required {account_id: str # Account ID., event_id: str # Event UUID.}\n@returns(200) {attacker: str, attackerCountry: str, category: str, datasetId: str, date: str, event: str, hasChildren: bool, indicator: str, indicatorType: str, indicatorTypeId: num, insight: str, killChain: num, mitreAttack: [str], mitreCapec: [str], numReferenced: num, numReferences: num, rawId: str, referenced: [str], referencedIds: [num], references: [str], referencesIds: [num], releasabilityId: str, tags: [str], targetCountry: str, targetIndustry: str, tlp: str, uuid: str} # Returns an event.\n@errors {404: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/{event_id}\n@desc Updates an event\n@required {account_id: str # Account ID., event_id: str # Event UUID., datasetId: str # Dataset ID containing the event to update.}\n@optional {attacker: str, attackerCountry: str, category: str, createdAt: str(date-time), date: str(date-time), event: str, indicator: str, indicatorType: str, insight: str, raw: map{data: map, source: str, tlp: str}, targetCountry: str, targetIndustry: str, tlp: str}\n@returns(200) {attacker: str, attackerCountry: str, category: str, datasetId: str, date: str, event: str, hasChildren: bool, indicator: str, indicatorType: str, indicatorTypeId: num, insight: str, killChain: num, mitreAttack: [str], mitreCapec: [str], numReferenced: num, numReferences: num, rawId: str, referenced: [str], referencedIds: [num], references: [str], referencesIds: [num], releasabilityId: str, tags: [str], targetCountry: str, targetIndustry: str, tlp: str, uuid: str} # Returns the updated event.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/{event_id}\n@desc Updates an event\n@required {account_id: str # Account ID., event_id: str # Event UUID., datasetId: str # Dataset ID containing the event to update.}\n@optional {attacker: str, attackerCountry: str, category: str, createdAt: str(date-time), date: str(date-time), event: str, indicator: str, indicatorType: str, insight: str, raw: map{data: map, source: str, tlp: str}, targetCountry: str, targetIndustry: str, tlp: str}\n@returns(200) {attacker: str, attackerCountry: str, category: str, datasetId: str, date: str, event: str, hasChildren: bool, indicator: str, indicatorType: str, indicatorTypeId: num, insight: str, killChain: num, mitreAttack: [str], mitreCapec: [str], numReferenced: num, numReferences: num, rawId: str, referenced: [str], referencedIds: [num], references: [str], referencesIds: [num], releasabilityId: str, tags: [str], targetCountry: str, targetIndustry: str, tlp: str, uuid: str} # Returns the updated event.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}\n@desc Reads data for a raw event\n@required {account_id: str # Account ID., event_id: str # Event UUID., raw_id: str # Raw Event UUID.}\n@returns(200) {accountId: num, created: str, data: map, id: str, source: str, tlp: str} # Returns the raw event.\n@errors {400: Bad Request.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}\n@desc Updates a raw event\n@required {account_id: str # Account ID., event_id: str # Event UUID., raw_id: str # Raw Event UUID.}\n@optional {data: map, source: str, tlp: str}\n@returns(200) {data: map, id: str} # Returns the uuid of the updated raw event and its data.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}\n@desc Updates a raw event\n@required {account_id: str # Account ID., event_id: str # Event UUID., raw_id: str # Raw Event UUID.}\n@optional {data: map, source: str, tlp: str}\n@returns(200) {data: map, id: str} # Returns the uuid of the updated raw event and its data.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/events/{event_id}/relationships\n@desc Filter and list events related to specific event\n@required {account_id: str # Account ID., event_id: str # Event UUID., datasetId: str # The dataset ID to search within.}\n@optional {direction: str(ancestors/descendants/both)=both # The direction to traverse the graph. Defaults to 'both' to search all., maxDepth: num # The maximum depth to traverse. Defaults to 5., relationshipTypes: any # An optional array of relationship types to filter by., indicatorTypeIds: [str] # An optional array of indicator type IDs to filter the results by., includeParent: bool=true # Whether to include the starting event in the results. Defaults to true., page: num, pageSize: num}\n@returns(200) Returns a list of events related to the specified starting event.\n@errors {400: Bad Request.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests\n@desc List Requests\n@required {account_id: str, page: int # Page number of results., per_page: int # Number of results per page.}\n@optional {completed_after: any # Retrieve requests completed after this time., completed_before: any # Retrieve requests completed before this time., created_after: any # Retrieve requests created after this time., created_before: any # Retrieve requests created before this time., request_type: str # Requested information from request., sort_by: str # Field to sort results by., sort_order: str(asc/desc) # Sort order (asc or desc)., status: str(open/accepted/reported/approved/completed/declined) # Request Status.}\n@returns(200) List requests response.\n@errors {4XX: Create response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/constants\n@desc Get Request Priority, Status, and TLP constants\n@required {account_id: str}\n@returns(200) Get request constants response.\n@errors {4XX: Get request constants response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/new\n@desc Create a New Request.\n@required {account_id: str}\n@optional {content: str # Request content., priority: str # Priority for analyzing the request., request_type: str # Requested information from request., summary: str # Brief description of the request., tlp: str(clear/amber/amber-strict/green/red) # The CISA defined Traffic Light Protocol (TLP).}\n@returns(200) Create request response.\n@errors {4XX: Create response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/priority\n@desc List Priority Intelligence Requirements\n@required {account_id: str, page: int # Page number of results., per_page: int # Number of results per page.}\n@returns(200) List priorities response.\n@errors {4XX: List priorities response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/priority/new\n@desc Create a New Priority Intelligence Requirement\n@required {account_id: str, labels: [str] # List of labels., priority: int # Priority., requirement: str # Requirement., tlp: str(clear/amber/amber-strict/green/red) # The CISA defined Traffic Light Protocol (TLP).}\n@returns(200) Create priority response.\n@errors {4XX: Create priority response  failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/priority/quota\n@desc Get Priority Intelligence Requirement Quota\n@required {account_id: str}\n@returns(200) Get priority quota response.\n@errors {4XX: Get priority quota response failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n@desc Delete a Priority Intelligence Requirement\n@required {account_id: str, priority_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete priority response.\n@errors {4XX: Delete priority response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n@desc Get a Priority Intelligence Requirement\n@required {account_id: str, priority_id: str}\n@returns(200) Get priority response.\n@errors {4XX: Get priority response failure.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}\n@desc Update a Priority Intelligence Requirement\n@required {account_id: str, priority_id: str, labels: [str] # List of labels., priority: int # Priority., requirement: str # Requirement., tlp: str(clear/amber/amber-strict/green/red) # The CISA defined Traffic Light Protocol (TLP).}\n@returns(200) Update priority response.\n@errors {4XX: Update priority response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/quota\n@desc Get Request Quota\n@required {account_id: str}\n@returns(200) Get request quota response.\n@errors {4XX: Get request quota response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/types\n@desc Get Request Types\n@required {account_id: str}\n@returns(200) Get request types response.\n@errors {4XX: Get request types response failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/requests/{request_id}\n@desc Delete a Request\n@required {account_id: str, request_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete request response.\n@errors {4XX: Delete request response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/{request_id}\n@desc Get a Request\n@required {account_id: str, request_id: str}\n@returns(200) Get request response.\n@errors {4XX: Get request response failure.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/requests/{request_id}\n@desc Update a Request\n@required {account_id: str, request_id: str}\n@optional {content: str # Request content., priority: str # Priority for analyzing the request., request_type: str # Requested information from request., summary: str # Brief description of the request., tlp: str(clear/amber/amber-strict/green/red) # The CISA defined Traffic Light Protocol (TLP).}\n@returns(200) Update request response.\n@errors {4XX: Update request response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset\n@desc List Request Assets\n@required {account_id: str, request_id: str, page: int # Page number of results., per_page: int # Number of results per page.}\n@returns(200) List request assets response.\n@errors {4XX: List request assets response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/new\n@desc Create a New Request Asset\n@required {account_id: str, request_id: str}\n@returns(200) Create request asset response.\n@errors {4XX: Create request asset response failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id}\n@desc Delete a Request Asset\n@required {account_id: str, request_id: str, asset_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete request asset response.\n@errors {4XX: Delete request asset response failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id}\n@desc Get a Request Asset\n@required {account_id: str, request_id: str, asset_id: str}\n@returns(200) Get request asset response.\n@errors {4XX: Get request asset response failure.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id}\n@desc Update a Request Asset\n@required {account_id: str, request_id: str, asset_id: str}\n@optional {source: str # Asset file to upload.}\n@returns(200) Update request asset response.\n@errors {4XX: Update request asset response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/{request_id}/message\n@desc List Request Messages\n@required {account_id: str, request_id: str, page: int # Page number of results., per_page: int # Number of results per page.}\n@optional {after: any # Retrieve mes  ges created after this time., before: any # Retrieve messages created before this time., sort_by: str # Field to sort results by., sort_order: str(asc/desc) # Sort order (asc or desc).}\n@returns(200) List request messages response.\n@errors {4XX: List request messages response failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/new\n@desc Create a New Request Message\n@required {account_id: str, request_id: str}\n@optional {content: str # Content of message.}\n@returns(200) Create request message response.\n@errors {4XX: Create request message response failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id}\n@desc Delete a Request Message\n@required {account_id: str, request_id: str, message_id: int}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete request message response.\n@errors {4XX: Delete request message response failure.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/requests/{request_id}/message/{message_id}\n@desc Update a Request Message\n@required {account_id: str, request_id: str, message_id: int}\n@optional {content: str # Content of message.}\n@returns(200) Update request message response.\n@errors {4XX: Update request message response failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/rules\n@desc Delete all rules\n@required {account_id: str # Cloudflare account ID.}\n@returns(200) {deleted: num} # All rules deleted.\n@errors {401: Unauthorized.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/rules\n@desc List rules\n@required {account_id: str # Cloudflare account ID.}\n@optional {namespace: str, recursive: str(true/false), search: str, is_public: str(true/false) # Filter by public visibility., limit: num=50, offset: num=0}\n@returns(200) {rules: [map], total: num} # List of rules.\n@errors {401: Unauthorized.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/rules\n@desc Create a rule\n@required {account_id: str # Cloudflare account ID., content: str, name: str, namespaces: [str]}\n@optional {actions: [map{action_config!: map, action_type!: str, enabled: bool}], enabled: bool=true # Whether this rule is active for dice consumers., is_public: bool=false # Whether this rule is visible to other internal accounts.}\n@returns(201) {content: str, created_at: num, created_by: str, enabled: bool, id: str(uuid), is_public: bool, name: str, namespaces: [str], updated_at: num, updated_by: str} # Rule created (customer accounts).\n@returns(202) {approval_id: num, message: str} # Rule pending approval (internal accounts).\n@errors {400: Validation error., 401: Unauthorized.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/rules/stats\n@desc Get dashboard stats\n@required {account_id: str # Cloudflare account ID.}\n@returns(200) {pending_approvals: num, rules_by_namespace: map, total_rules: num} # Dashboard statistics.\n@errors {401: Unauthorized.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/rules/tree\n@desc Get folder tree structure\n@required {account_id: str # Cloudflare account ID.}\n@returns(200) {tree: [map]} # Folder tree structure.\n@errors {401: Unauthorized.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/rules/validate\n@desc Validate rule with context\n@required {account_id: str # Cloudflare account ID., content: str, name: str, namespaces: [str]}\n@optional {excludeRuleId: str(uuid)}\n@returns(200) {error: str, valid: bool} # Validation result.\n@errors {401: Unauthorized.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/rules/{id}\n@desc Delete a rule\n@required {account_id: str # Cloudflare account ID., id: str(uuid) # The unique identifier for the rule.}\n@returns(200) {success: bool} # Rule deleted (customer accounts).\n@returns(202) {approval_id: num, message: str} # Deletion pending approval (internal accounts).\n@errors {401: Unauthorized., 404: Rule not found.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/rules/{id}\n@desc Get a rule\n@required {account_id: str # Cloudflare account ID., id: str(uuid) # The unique identifier for the rule.}\n@returns(200) {content: str, created_at: num, created_by: str, enabled: bool, id: str(uuid), is_public: bool, name: str, namespaces: [str], updated_at: num, updated_by: str} # Rule details.\n@errors {401: Unauthorized., 404: Rule not found.}\n\n@endpoint PUT /accounts/{account_id}/cloudforce-one/rules/{id}\n@desc Update a rule\n@required {account_id: str # Cloudflare account ID., id: str(uuid) # The unique identifier for the rule.}\n@optional {content: str, enabled: bool # Whether this rule is active for dice consumers., is_public: bool # Whether this rule is visible to other internal accounts., name: str, namespaces: [str]}\n@returns(200) {content: str, created_at: num, created_by: str, enabled: bool, id: str(uuid), is_public: bool, name: str, namespaces: [str], updated_at: num, updated_by: str} # Rule updated (customer accounts).\n@returns(202) {approval_id: num, message: str} # Update pending approval (internal accounts).\n@errors {401: Unauthorized., 404: Rule not found.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/scans/config\n@desc List Scan Configs\n@required {account_id: str # Defines the Account ID.}\n@returns(200) Returns all Scan Configs.\n@errors {4XX: List Scan Configs failure.}\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/scans/config\n@desc Create a new Scan Config\n@required {account_id: str # Defines the Account ID., ips: [str] # Defines a list of IP addresses or CIDR blocks to scan. The maximum number of total IP addresses allowed is 5000.}\n@optional {frequency: num # Defines the number of days between each scan (0 = One-off scan)., ports: [str] # Defines a list of ports to scan. Valid values are:\"default\", \"all\", or a comma-separated list of ports or range of ports (e.g. [\"1-80\", \"443\"]). \"default\" scans the 100 most commonly open ports.}\n@returns(200) Returns the created config.\n@errors {4XX: Create a new Scan Config failure.}\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/scans/config/{config_id}\n@desc Delete a Scan Config\n@required {account_id: str # Defines the Account ID., config_id: str # Defines the Config ID.}\n@returns(200) {errors: [str], messages: [str], result: map, success: bool} # Delete a Scan Config.\n@errors {4XX: Delete a Scan Config failure.}\n\n@endpoint PATCH /accounts/{account_id}/cloudforce-one/scans/config/{config_id}\n@desc Update an existing Scan Config\n@required {account_id: str # Defines the Account ID., config_id: str # Defines the Config ID.}\n@optional {frequency: num # Defines the number of days between each scan (0 = One-off scan)., ips: [str] # Defines a list of IP addresses or CIDR blocks to scan. The maximum number of total IP addresses allowed is 5000., ports: [str] # Defines a list of ports to scan. Valid values are:\"default\", \"all\", or a comma-separated list of ports or range of ports (e.g. [\"1-80\", \"443\"]). \"default\" scans the 100 most commonly open ports.}\n@returns(200) Returns the updated config.\n@errors {4XX: Update an Existing Scan Config failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/scans/results/{config_id}\n@desc Get the Latest Scan Result\n@required {account_id: str # Defines the Account ID., config_id: str # Defines the Config ID.}\n@returns(200) {errors: [str], messages: [str], result: map{1.1.1.1: [map]}, success: bool} # Returns Current Open Ports.\n@errors {4XX: Get the Latest Scan Result failure.}\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/matches\n@desc List saved query matches\n@required {account_id: str, query_id: [str]}\n@optional {offset: str=0, limit: str=50, include_domain_id: str=false, include_dismissed: str, domain_search: str, orderBy: str(domain/first_seen), order: str(asc/desc)}\n@returns(200) {matches: [map], total: int} # Successfully retrieved query matches\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/queries\n@desc Get queries\n@required {account_id: str}\n@optional {id: str}\n@returns(200) Successfully retrieved queries\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/matches\n@desc List logo matches\n@required {account_id: str, query_id: str}\n@optional {offset: str=0, limit: str=50, download: str, orderBy: str(matchedAt/domain/similarityScore), order: str(asc/desc)}\n@returns(200) {matches: [map], total: int} # Successfully retrieved logo matches\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries\n@desc Get logo queries\n@required {account_id: str}\n@optional {id: str # Optional query ID to retrieve a specific logo query, download: str # If true, include base64-encoded image data in the response}\n@returns(200) Successfully retrieved logo queries\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries\n@desc Insert logo query\n@required {account_id: str, image_data: str # Base64 encoded image data. Can include data URI prefix (e.g., 'data:image/png;base64,...') or just the base64 string., similarity_threshold: num # Minimum similarity score (0-1) required for visual matches, tag: str # Unique identifier for the logo query}\n@optional {search_lookback: bool=true # If true, search historic scanned images for matches above the similarity threshold}\n@returns(200) {message: str, query_id: int, success: bool} # Logo query inserted successfully\n\n@endpoint DELETE /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries/{query_id}\n@desc Delete logo query\n@required {account_id: str, query_id: str}\n@returns(200) {message: str, success: bool} # Logo query deleted successfully\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/search\n@desc Search scanned images\n@required {account_id: str, image_data: str # Base64 encoded image data. Can include data URI prefix (e.g., 'data:image/png;base64,...') or just the base64 string.}\n@optional {showHistoric: str=false # Include scanned images without domain metadata (historic data). Default: false (only show images with domain), download: str # If true, include base64-encoded image data in the response, score_threshold: num=0 # Minimum similarity score threshold for matches (0-1, default: 0), top_k: int=10 # Number of closest matches to return (1-100, default: 10)}\n@returns(200) {matches: [map]} # Scanned images search completed successfully\n\n@endpoint GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/total-queries\n@desc Get total queries\n@required {account_id: str}\n@returns(200) Successfully retrieved total query count\n\n@endpoint POST /accounts/{account_id}/cloudforce-one/v2/events/graphql\n@desc GraphQL endpoint for event aggregation\n@required {account_id: str # Account ID.}\n@returns(200) {data: map?, errors: [map]?} # GraphQL response payload (data and errors).\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/cni/cnis\n@desc List existing CNI objects\n@required {account_id: str}\n@optional {slot: str # If specified, only show CNIs associated with the specified slot, tunnel_id: str # If specified, only show cnis associated with the specified tunnel id, cursor: int(int32), limit: int}\n@returns(200) {items: [map], next: int(int32)?} # List of matching CNI objects\n@errors {400: Bad request, 500: Internal server error}\n\n@endpoint POST /accounts/{account_id}/cni/cnis\n@desc Create a new CNI object\n@required {account_id: str, account: str # Customer account tag, interconnect: str, magic: map{conduit_name!: str, description!: str, mtu!: int(int32)}}\n@optional {bgp: map{customer_asn!: int(int32), extra_prefixes!: [str(A.B.C.D/N)], md5_key: str}}\n@returns(200) {account: str, bgp: map{customer_asn: int(int32), extra_prefixes: [str(A.B.C.D/N)], md5_key: str?}, cust_ip: str(A.B.C.D/N), id: str(uuid), interconnect: str, magic: map{conduit_name: str, description: str, mtu: int(int32)}, p2p_ip: str(A.B.C.D/N)} # CNI was successfully created\n@errors {400: Bad request, 409: Name Conflict, 500: Internal server error}\n\n@endpoint DELETE /accounts/{account_id}/cni/cnis/{cni}\n@desc Delete a specified CNI object\n@required {cni: str(uuid) # CNI ID to retrieve information about, account_id: str}\n@returns(200) CNI has been successfully deleted\n@errors {400: Bad request, 404: CNI not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/cnis/{cni}\n@desc Get information about a CNI object\n@required {cni: str(uuid) # CNI ID to retrieve information about, account_id: str}\n@returns(200) {account: str, bgp: map{customer_asn: int(int32), extra_prefixes: [str(A.B.C.D/N)], md5_key: str?}, cust_ip: str(A.B.C.D/N), id: str(uuid), interconnect: str, magic: map{conduit_name: str, description: str, mtu: int(int32)}, p2p_ip: str(A.B.C.D/N)} # CNI's associated data\n@errors {400: Bad request, 404: CNI not found, 500: Internal server error}\n\n@endpoint PUT /accounts/{account_id}/cni/cnis/{cni}\n@desc Modify stored information about a CNI object\n@required {cni: str(uuid) # CNI ID to retrieve information about, account_id: str, account: str # Customer account tag, cust_ip: str(A.B.C.D/N) # Customer end of the point-to-point link  This should always be inside the same prefix as `p2p_ip`., id: str(uuid), interconnect: str # Interconnect identifier hosting this CNI, magic: map{conduit_name!: str, description!: str, mtu!: int(int32)}, p2p_ip: str(A.B.C.D/N) # Cloudflare end of the point-to-point link}\n@optional {bgp: map{customer_asn!: int(int32), extra_prefixes!: [str(A.B.C.D/N)], md5_key: str}}\n@returns(200) {account: str, bgp: map{customer_asn: int(int32), extra_prefixes: [str(A.B.C.D/N)], md5_key: str?}, cust_ip: str(A.B.C.D/N), id: str(uuid), interconnect: str, magic: map{conduit_name: str, description: str, mtu: int(int32)}, p2p_ip: str(A.B.C.D/N)} # CNI has been successfully modified\n@errors {400: Bad request, 404: CNI not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/interconnects\n@desc List existing interconnects\n@required {account_id: str}\n@optional {site: str # If specified, only show interconnects located at the given site, type: str # If specified, only show interconnects of the given type, cursor: int(int32), limit: int}\n@returns(200) {items: [map], next: int(int32)?} # List of matching interconnect objects\n@errors {400: Bad request, 500: Internal server error}\n\n@endpoint POST /accounts/{account_id}/cni/interconnects\n@desc Create a new interconnect\n@required {account_id: str}\n@returns(200) Information about the new interconnect\n@errors {400: Bad request, 500: Internal server error}\n\n@endpoint DELETE /accounts/{account_id}/cni/interconnects/{icon}\n@desc Delete an interconnect object\n@required {icon: str # Interconnect name to retrieve information about, account_id: str}\n@returns(200) Successfully deleted interconnect\n@errors {400: Bad request, 404: Interconnect not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/interconnects/{icon}\n@desc Get information about an interconnect object\n@required {icon: str # Interconnect name to retrieve information about, account_id: str}\n@returns(200) Information about the specified interconnect\n@errors {400: Bad request, 404: Interconnect not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/interconnects/{icon}/loa\n@desc Generate the Letter of Authorization (LOA) for a given interconnect\n@required {icon: str # Interconnect name to retrieve information about, account_id: str}\n@returns(200) Generated LOA in PDF format\n@errors {400: Bad request, 404: Interconnect not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/interconnects/{icon}/status\n@desc Get the current status of an interconnect object\n@required {icon: str # Interconnect name to retrieve information about, account_id: str}\n@returns(200) Current interconnect status\n@errors {400: Bad request, 404: Interconnect not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/settings\n@desc Get the current settings for the active account\n@required {account_id: str # Account tag to retrieve settings for}\n@returns(200) {default_asn: int(int32)} # The active account settings values\n@errors {400: Bad request, 404: Account not found, 500: Internal server error}\n\n@endpoint PUT /accounts/{account_id}/cni/settings\n@desc Update the current settings for the active account\n@required {account_id: str # Account tag to update settings for}\n@optional {default_asn: int(int32)}\n@returns(200) {default_asn: int(int32)} # The active account settings values\n@errors {400: Bad request, 404: Account not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/slots\n@desc Retrieve a list of all slots matching the specified parameters\n@required {account_id: str}\n@optional {address_contains: str # If specified, only show slots with the given text in their address field, site: str # If specified, only show slots located at the given site, speed: str # If specified, only show slots that support the given speed, occupied: bool # If specified, only show slots with a specific occupied/unoccupied state, cursor: int(int32), limit: int}\n@returns(200) {items: [map], next: int(int32)?} # List of matching slots\n@errors {400: Bad request, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/cni/slots/{slot}\n@desc Get information about the specified slot\n@required {slot: str(uuid), account_id: str}\n@returns(200) {account: str, facility: map{address: [str], name: str}, id: str(uuid), occupied: bool, site: str, speed: str} # Information about the specified slot\n@errors {400: Bad request, 404: Slot not found, 500: Internal server error}\n\n@endpoint GET /accounts/{account_id}/connectivity/directory/services\n@desc List Workers VPC connectivity services\n@required {account_id: str}\n@optional {type: str, page: int(int32)=1 # Current page in the response, per_page: int(int32)=1000 # Max amount of entries returned per page}\n@returns(200) Successfully retrieved Workers VPC connectivity services\n@errors {4XX: Failed to retrieve Workers VPC connectivity services}\n\n@endpoint POST /accounts/{account_id}/connectivity/directory/services\n@desc Create Workers VPC connectivity service\n@required {account_id: str}\n@returns(200) Successfully created Workers VPC connectivity service\n@errors {4XX: Failed to create Workers VPC connectivity service}\n@example_request {\"host\":{\"hostname\":\"api.example.com\",\"resolver_network\":{\"tunnel_id\":\"0191dce4-9ab4-7fce-b660-8e5dec5172da\"}},\"name\":\"web-server\",\"type\":\"http\"}\n\n@endpoint DELETE /accounts/{account_id}/connectivity/directory/services/{service_id}\n@desc Delete Workers VPC connectivity service\n@required {account_id: str, service_id: str(uuid)}\n@returns(200) Successfully deleted Workers VPC connectivity service\n@errors {4XX: Failed to delete Workers VPC connectivity service}\n\n@endpoint GET /accounts/{account_id}/connectivity/directory/services/{service_id}\n@desc Get Workers VPC connectivity service\n@required {account_id: str, service_id: str(uuid)}\n@returns(200) Successfully retrieved Workers VPC connectivity service\n@errors {4XX: Failed to retrieve Workers VPC connectivity service}\n\n@endpoint PUT /accounts/{account_id}/connectivity/directory/services/{service_id}\n@desc Update Workers VPC connectivity service\n@required {account_id: str, service_id: str(uuid)}\n@returns(200) Successfully updated Workers VPC connectivity service\n@errors {4XX: Failed to update Workers VPC connectivity service}\n\n@endpoint GET /accounts/{account_id}/containers\n@desc List containers.\n@optional {name: str # Filter containers by name, image: str # Filter containers by image}\n@returns(200) Returns all public applications associated with your account.\n@errors {401: Unauthorized for Public API., 500: InternalError500.}\n\n@endpoint POST /accounts/{account_id}/containers/registries/{domain}/credentials\n@desc Generate a JWT to interact with the specified image registry.\n@required {domain: str, expiration_minutes: int # The number of minutes the credentials will be valid for., permissions: [str]}\n@returns(201) Credentials with 'pull' or 'push' permissions to access the registry\n@errors {400: Bad Request for Public API., 403: The requested token permissions are not allowed for this account, 404: The image registry does not exist, 409: The registry was configured as public, so credentials can not be generated, 500: InternalError500.}\n\n@endpoint GET /accounts/{account_id}/custom_ns\n@desc List Account Custom Nameservers\n@required {account_id: str}\n@returns(200) List Account Custom Nameservers response\n@errors {4XX: List Account Custom Nameservers response failure}\n\n@endpoint POST /accounts/{account_id}/custom_ns\n@desc Add Account Custom Nameserver\n@required {account_id: str, ns_name: str(hostname) # The FQDN of the name server.}\n@optional {ns_set: num=1 # The number of the set that this name server belongs to.}\n@returns(200) Add Account Custom Nameserver response\n@errors {4XX: Add Account Custom Nameserver response failure}\n\n@endpoint DELETE /accounts/{account_id}/custom_ns/{custom_ns_id}\n@desc Delete Account Custom Nameserver\n@required {custom_ns_id: str(hostname), account_id: str}\n@returns(200) Delete Account Custom Nameserver response\n@errors {4XX: Delete Account Custom Nameserver response failure}\n\n@endpoint GET /accounts/{account_id}/d1/database\n@desc List D1 Databases\n@required {account_id: str}\n@optional {name: str, page: num=1, per_page: num=1000}\n@returns(200) List D1 databases response\n@errors {4XX: List D1 databases response failure}\n\n@endpoint POST /accounts/{account_id}/d1/database\n@desc Create D1 Database\n@required {account_id: str, name: str # D1 database name.}\n@optional {jurisdiction: str(eu/fedramp) # Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored., primary_location_hint: str(wnam/enam/weur/eeur/apac/oc) # Specify the region to create the D1 primary, if available. If this option is omitted, the D1 will be created as close as possible to the current user.}\n@returns(200) Returns the created D1 database's metadata\n@errors {4XX: Database details response failure}\n\n@endpoint DELETE /accounts/{account_id}/d1/database/{database_id}\n@desc Delete D1 Database\n@required {account_id: str, database_id: str}\n@returns(200) Delete D1 database response\n@errors {4XX: Delete D1 database response failure}\n\n@endpoint GET /accounts/{account_id}/d1/database/{database_id}\n@desc Get D1 Database\n@required {account_id: str, database_id: any}\n@returns(200) Database details response\n@errors {4XX: Database details response failure}\n\n@endpoint PATCH /accounts/{account_id}/d1/database/{database_id}\n@desc Update D1 Database partially\n@required {account_id: str, database_id: str}\n@optional {read_replication: map{mode!: str} # Configuration for D1 read replication.}\n@returns(200) Database details response\n@errors {4XX: Update D1 database response failure}\n\n@endpoint PUT /accounts/{account_id}/d1/database/{database_id}\n@desc Update D1 Database\n@required {account_id: str, database_id: str, read_replication: map{mode!: str} # Configuration for D1 read replication.}\n@returns(200) Database details response\n@errors {4XX: Update D1 database response failure}\n\n@endpoint POST /accounts/{account_id}/d1/database/{database_id}/export\n@desc Export D1 Database as SQL\n@required {account_id: str, database_id: str, output_format: str # Specifies that you will poll this endpoint until the export completes}\n@optional {current_bookmark: str # To poll an in-progress export, provide the current bookmark (returned by your first polling response), dump_options: map{no_data: bool, no_schema: bool, tables: [str]}}\n@returns(200) Polled successfully, task no longer running (errored or complete)\n@returns(202) Polled successfully, task is currently running\n@errors {4XX: Poll failed (API error)}\n\n@endpoint POST /accounts/{account_id}/d1/database/{database_id}/import\n@desc Import SQL into your D1 Database\n@required {account_id: str, database_id: str}\n@returns(200) Successful action. Import is either ready to start, under way, or finished (succeeded or failed).\n@returns(202) Polled successfully, task is currently running\n@errors {4XX: Poll failed (API error)}\n\n@endpoint POST /accounts/{account_id}/d1/database/{database_id}/query\n@desc Query D1 Database\n@required {account_id: str, database_id: str}\n@returns(200) Query response\n@errors {4XX: Query response failure}\n\n@endpoint POST /accounts/{account_id}/d1/database/{database_id}/raw\n@desc Raw D1 Database query\n@required {account_id: str, database_id: str}\n@returns(200) Raw query response\n@errors {4XX: Query response failure}\n\n@endpoint GET /accounts/{account_id}/d1/database/{database_id}/time_travel/bookmark\n@desc Get D1 database bookmark\n@required {account_id: str, database_id: str}\n@optional {timestamp: str(date-time) # An optional ISO 8601 timestamp. If provided, returns the nearest available bookmark at or before this timestamp. If omitted, returns the current bookmark.}\n@returns(200) Bookmark retrieved successfully\n@errors {4XX: Failed to retrieve bookmark}\n\n@endpoint POST /accounts/{account_id}/d1/database/{database_id}/time_travel/restore\n@desc Restore D1 Database to a bookmark or point in time\n@required {account_id: str, database_id: str}\n@optional {bookmark: str # A bookmark to restore the database to. Required if `timestamp` is not provided., timestamp: str(date-time) # An ISO 8601 timestamp to restore the database to. Required if `bookmark` is not provided.}\n@returns(200) Database restored successfully\n@errors {4XX: Restore operation failed}\n\n@endpoint GET /accounts/{account_id}/devices\n@desc List devices (deprecated)\n@required {account_id: any}\n@returns(200) List devices response.\n@errors {4XX: List devices response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/ip-profiles\n@desc List IP profiles\n@required {account_id: str}\n@optional {per_page: int=50 # The number of IP profiles to return per page.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # List Device IP profiles response.\n\n@endpoint POST /accounts/{account_id}/devices/ip-profiles\n@desc Create IP profile\n@required {account_id: str, match: str # The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\"., name: str # A user-friendly name for the Device IP profile., precedence: int # The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field., subnet_id: str # The ID of the Subnet.}\n@optional {description: str # An optional description of the Device IP profile., enabled: bool=true # Whether the Device IP profile will be applied to matching devices.}\n@returns(200) {errors: [map], messages: [map], result: map{created_at: str, description: str?, enabled: bool, id: str, match: str, name: str, precedence: int, subnet_id: str, updated_at: str}, success: bool} # Create Device IP profile response.\n\n@endpoint DELETE /accounts/{account_id}/devices/ip-profiles/{profile_id}\n@desc Delete IP profile\n@required {account_id: str, profile_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{id: str}, success: bool} # Delete Device IP profile response.\n\n@endpoint GET /accounts/{account_id}/devices/ip-profiles/{profile_id}\n@desc Get IP profile\n@required {account_id: str, profile_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{created_at: str, description: str?, enabled: bool, id: str, match: str, name: str, precedence: int, subnet_id: str, updated_at: str}, success: bool} # Get Device IP profile response.\n\n@endpoint PATCH /accounts/{account_id}/devices/ip-profiles/{profile_id}\n@desc Update IP profile\n@required {account_id: str, profile_id: str}\n@optional {description: str # An optional description of the Device IP profile., enabled: bool # Whether the Device IP profile is enabled., match: str # The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\"., name: str # A user-friendly name for the Device IP profile., precedence: int # The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field., subnet_id: str # The ID of the Subnet.}\n@returns(200) {errors: [map], messages: [map], result: map{created_at: str, description: str?, enabled: bool, id: str, match: str, name: str, precedence: int, subnet_id: str, updated_at: str}, success: bool} # Update Device IP profile response.\n\n@endpoint GET /accounts/{account_id}/devices/networks\n@desc List your device managed networks\n@required {account_id: any}\n@returns(200) List your device managed networks response.\n@errors {4XX: List your device managed networks response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/networks\n@desc Create a device managed network\n@required {account_id: any, config: map # The configuration object containing information for the WARP client to detect the managed network., name: str # The name of the device managed network. This name must be unique., type: str # The type of device managed network.}\n@returns(200) Create a device managed networks response.\n@errors {4XX: Create a device managed networks response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/networks/{network_id}\n@desc Delete a device managed network\n@required {network_id: str, account_id: any}\n@returns(200) Delete a device managed network response.\n@errors {4XX: Delete a device managed network response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/networks/{network_id}\n@desc Get device managed network details\n@required {network_id: str, account_id: any}\n@returns(200) Get device managed network details response.\n@errors {4XX: Get device managed network details response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/networks/{network_id}\n@desc Update a device managed network\n@required {network_id: str, account_id: any}\n@optional {config: map # The configuration object containing information for the WARP client to detect the managed network., name: str # The name of the device managed network. This name must be unique., type: str # The type of device managed network.}\n@returns(200) Update a device managed network response.\n@errors {4XX: Update a device managed network response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/physical-devices\n@desc List devices\n@required {account_id: str}\n@optional {cursor: str # Opaque token indicating the starting position when requesting the next set of records. A cursor value can be obtained from the result_info.cursor field in the response., sort_by: str(name/id/client_version/last_seen_user.email/last_seen_at/active_registrations/created_at) # The device field to order results by., sort_order: str(asc/desc) # Sort direction., last_seen_user.email: str # Filter by the last seen user's email., seen_after: str # Filter by the last_seen timestamp - returns only devices last seen after this timestamp., seen_before: str # Filter by the last_seen timestamp - returns only devices last seen before this timestamp., per_page: int(uint64) # The maximum number of devices to return in a single response., search: str # Search by device details., active_registrations: str(include/only/exclude) # Include or exclude devices with active registrations. The default is \"only\" - return only devices with active registrations., id: [str] # Filter by a one or more device IDs., include: str # Comma-separated list of additional information that should be included in the device response. Supported values are: \"last_seen_registration.policy\".}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: int, cursor: str, per_page: int, total_count: int?}, success: bool} # Returns a list of Devices.\n\n@endpoint DELETE /accounts/{account_id}/devices/physical-devices/{device_id}\n@desc Delete device\n@required {device_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map?, success: bool} # Device was successfully deleted.\n\n@endpoint GET /accounts/{account_id}/devices/physical-devices/{device_id}\n@desc Get device\n@required {device_id: str, account_id: str}\n@optional {include: str # Comma-separated list of additional information that should be included in the device response. Supported values are: \"last_seen_registration.policy\".}\n@returns(200) {errors: [map], messages: [map], result: map{active_registrations: int, client_version: str?, created_at: str, deleted_at: str?, device_type: str?, hardware_id: str?, id: str, last_seen_at: str?, last_seen_registration: map?, last_seen_user: map?, mac_address: str?, manufacturer: str?, model: str?, name: str, os_version: str?, os_version_extra: str?, public_ip: str?, serial_number: str?, updated_at: str}, success: bool} # Returns a Device.\n\n@endpoint POST /accounts/{account_id}/devices/physical-devices/{device_id}/revoke\n@desc Revoke device registrations\n@required {account_id: str, device_id: str}\n@returns(200) {errors: [map], messages: [map], result: map?, success: bool} # Revoke device registrations response.\n\n@endpoint GET /accounts/{account_id}/devices/policies\n@desc List device settings profiles\n@required {account_id: any}\n@returns(200) List device settings profiles response.\n@errors {4XX: List device settings profiles response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy\n@desc Get the default device settings profile\n@required {account_id: any}\n@returns(200) Get the default device settings profile response.\n@errors {4XX: Get the default device settings profile response failure.}\n\n@endpoint PATCH /accounts/{account_id}/devices/policy\n@desc Update the default device settings profile\n@required {account_id: any}\n@optional {allow_mode_switch: bool=false # Whether to allow the user to switch WARP between modes., allow_updates: bool=false # Whether to receive update notifications when a new version of the client is available., allowed_to_leave: bool=true # Whether to allow devices to leave the organization., auto_connect: num=0 # The amount of time in seconds to reconnect after having been disabled., captive_portal: num=180 # Turn on the captive portal after the specified amount of time., disable_auto_fallback: bool=false # If the `dns_server` field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to `true`., exclude: [map] # List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., exclude_office_ips: bool=false # Whether to add Microsoft IPs to Split Tunnel exclusions., include: [map] # List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., lan_allow_minutes: num # The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset., lan_allow_subnet_size: num # The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset., register_interface_ip_with_dns: bool=true # Determines if the operating system will register WARP's local interface IP with your on-premises DNS server., sccm_vpn_boundary_support: bool=false # Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only)., service_mode_v2: map{mode: str, port: num}, support_url: str= # The URL to launch when the Send Feedback button is clicked., switch_locked: bool=false # Whether to allow the user to turn off the WARP switch and disconnect the client., tunnel_protocol: str= # Determines which tunnel protocol to use.}\n@returns(200) Update the default device settings profile response.\n@errors {4XX: Update the default device settings profile response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/policy\n@desc Create a device settings profile\n@required {account_id: any, match: str # The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service_token_uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\"., name: str # The name of the device settings profile., precedence: num # The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field.}\n@optional {allow_mode_switch: bool=false # Whether to allow the user to switch WARP between modes., allow_updates: bool=false # Whether to receive update notifications when a new version of the client is available., allowed_to_leave: bool=true # Whether to allow devices to leave the organization., auto_connect: num=0 # The amount of time in seconds to reconnect after having been disabled., captive_portal: num=180 # Turn on the captive portal after the specified amount of time., description: any, disable_auto_fallback: bool=false # If the `dns_server` field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to `true`., enabled: bool=true # Whether the policy will be applied to matching devices., exclude: [map] # List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., exclude_office_ips: bool=false # Whether to add Microsoft IPs to Split Tunnel exclusions., include: [map] # List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., lan_allow_minutes: num # The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset., lan_allow_subnet_size: num # The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset., register_interface_ip_with_dns: bool=true # Determines if the operating system will register WARP's local interface IP with your on-premises DNS server., sccm_vpn_boundary_support: bool=false # Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only)., service_mode_v2: map{mode: str, port: num}, support_url: str= # The URL to launch when the Send Feedback button is clicked., switch_locked: bool=false # Whether to allow the user to turn off the WARP switch and disconnect the client., tunnel_protocol: str= # Determines which tunnel protocol to use.}\n@returns(200) Create a device settings profile response.\n@errors {4XX: Create a device settings profile response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/exclude\n@desc Get the Split Tunnel exclude list\n@required {account_id: any}\n@returns(200) Get the Split Tunnel exclude list response.\n@errors {4XX: Get the Split Tunnel exclude list response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/exclude\n@desc Set the Split Tunnel exclude list\n@required {account_id: any}\n@returns(200) Set the Split Tunnel exclude list response.\n@errors {4XX: Set the Split Tunnel exclude list response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/fallback_domains\n@desc Get your Local Domain Fallback list\n@required {account_id: any}\n@returns(200) Get your Local Domain Fallback list response.\n@errors {4XX: Get your Local Domain Fallback list response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/fallback_domains\n@desc Set your Local Domain Fallback list\n@required {account_id: any}\n@returns(200) Set your Local Domain Fallback list response.\n@errors {4XX: Set your Local Domain Fallback list response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/include\n@desc Get the Split Tunnel include list\n@required {account_id: any}\n@returns(200) Get the Split Tunnel include list response.\n@errors {4XX: Get the Split Tunnel include list response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/include\n@desc Set the Split Tunnel include list\n@required {account_id: any}\n@returns(200) Set the Split Tunnel include list response.\n@errors {4XX: Set the Split Tunnel include list response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/policy/{policy_id}\n@desc Delete a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Delete a device settings profile response.\n@errors {4XX: Delete a device settings profile response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/{policy_id}\n@desc Get device settings profile by ID\n@required {policy_id: str, account_id: any}\n@returns(200) Get device settings profile by ID response.\n@errors {4XX: Get device settings profile by ID response failure.}\n\n@endpoint PATCH /accounts/{account_id}/devices/policy/{policy_id}\n@desc Update a device settings profile\n@required {policy_id: str, account_id: any}\n@optional {allow_mode_switch: bool=false # Whether to allow the user to switch WARP between modes., allow_updates: bool=false # Whether to receive update notifications when a new version of the client is available., allowed_to_leave: bool=true # Whether to allow devices to leave the organization., auto_connect: num=0 # The amount of time in seconds to reconnect after having been disabled., captive_portal: num=180 # Turn on the captive portal after the specified amount of time., description: str # A description of the policy., disable_auto_fallback: bool=false # If the `dns_server` field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to `true`., enabled: bool # Whether the policy will be applied to matching devices., exclude: [map] # List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., exclude_office_ips: bool=false # Whether to add Microsoft IPs to Split Tunnel exclusions., include: [map] # List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request., lan_allow_minutes: num # The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset., lan_allow_subnet_size: num # The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset., match: str # The wirefilter expression to match devices. Available values: \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.service_token_uuid\", \"identity.saml_attributes\", \"network\", \"os.name\", \"os.version\"., name: str # The name of the device settings profile., precedence: num # The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field., register_interface_ip_with_dns: bool=true # Determines if the operating system will register WARP's local interface IP with your on-premises DNS server., sccm_vpn_boundary_support: bool=false # Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only)., service_mode_v2: map{mode: str, port: num}, support_url: str= # The URL to launch when the Send Feedback button is clicked., switch_locked: bool=false # Whether to allow the user to turn off the WARP switch and disconnect the client., tunnel_protocol: str= # Determines which tunnel protocol to use.}\n@returns(200) Update a device settings profile Policy response.\n@errors {4XX: Update a device settings profile Policy response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/{policy_id}/exclude\n@desc Get the Split Tunnel exclude list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Get the Split Tunnel exclude list for a device settings profile response.\n@errors {4XX: Get the Split Tunnel exclude list for a device settings profile response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/{policy_id}/exclude\n@desc Set the Split Tunnel exclude list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Set the Split Tunnel exclude list for a device settings profile response.\n@errors {4XX: Set the Split Tunnel exclude list for a device settings profile response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains\n@desc Get the Local Domain Fallback list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Get the Local Domain Fallback list for a device settings profile response.\n@errors {4XX: Get the Local Domain Fallback list for a device settings profile response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains\n@desc Set the Local Domain Fallback list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Set the Local Domain Fallback list for a device settings profile response.\n@errors {4XX: Set the Local Domain Fallback list for a device settings profile response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/policy/{policy_id}/include\n@desc Get the Split Tunnel include list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Get the Split Tunnel include list for a device settings profile response.\n@errors {4XX: Get the Split Tunnel include list for a device settings profile response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/policy/{policy_id}/include\n@desc Set the Split Tunnel include list for a device settings profile\n@required {policy_id: str, account_id: any}\n@returns(200) Set the Split Tunnel include list for a device settings profile response.\n@errors {4XX: Set the Split Tunnel include list for a device settings profile response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/posture\n@desc List device posture rules\n@required {account_id: any}\n@returns(200) List device posture rules response.\n@errors {4XX: List device posture rules response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/posture\n@desc Create a device posture rule\n@required {account_id: any, name: str # The name of the device posture rule., type: str(file/application/tanium/gateway/warp/disk_encryption/serial_number/sentinelone/carbonblack/firewall/os_version/domain_joined/client_certificate/client_certificate_v2/antivirus/unique_client_id/kolide/tanium_s2s/crowdstrike_s2s/intune/workspace_one/sentinelone_s2s/custom_s2s) # The type of device posture rule.}\n@optional {description: str # The description of the device posture rule., expiration: str # Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client., input: map # The value to be checked against., match: [map{platform: str}] # The conditions that the client must match to run the rule., schedule: str # Polling frequency for the WARP client posture check. Default: `5m` (poll every five minutes). Minimum: `1m`.}\n@returns(200) Create device posture rule response.\n@errors {4XX: Create device posture rule response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/posture/integration\n@desc List your device posture integrations\n@required {account_id: any}\n@returns(200) List your device posture integrations response.\n@errors {4XX: List your device posture integrations response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/posture/integration\n@desc Create a device posture integration\n@required {account_id: any, config: map # The configuration object containing third-party integration information., interval: str # The interval between each posture check with the third-party API. Use `m` for minutes (e.g. `5m`) and `h` for hours (e.g. `12h`)., name: str # The name of the device posture integration., type: str(workspace_one/crowdstrike_s2s/uptycs/intune/kolide/tanium_s2s/sentinelone_s2s/custom_s2s) # The type of device posture integration.}\n@returns(200) Create a device posture integration response.\n@errors {4XX: Create a device posture integration response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/posture/integration/{integration_id}\n@desc Delete a device posture integration\n@required {integration_id: str, account_id: any}\n@returns(200) Delete a device posture integration response.\n@errors {4XX: Delete a device posture integration response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/posture/integration/{integration_id}\n@desc Get device posture integration details\n@required {integration_id: str, account_id: any}\n@returns(200) Get device posture integration details response.\n@errors {4XX: Get device posture integration details response failure.}\n\n@endpoint PATCH /accounts/{account_id}/devices/posture/integration/{integration_id}\n@desc Update a device posture integration\n@required {integration_id: str, account_id: any}\n@optional {config: map # The configuration object containing third-party integration information., interval: str # The interval between each posture check with the third-party API. Use `m` for minutes (e.g. `5m`) and `h` for hours (e.g. `12h`)., name: str # The name of the device posture integration., type: str(workspace_one/crowdstrike_s2s/uptycs/intune/kolide/tanium_s2s/sentinelone_s2s/custom_s2s) # The type of device posture integration.}\n@returns(200) Update a device posture integration response.\n@errors {4XX: Update a device posture integration response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/posture/{rule_id}\n@desc Delete a device posture rule\n@required {rule_id: str, account_id: any}\n@returns(200) Delete a device posture rule response.\n@errors {4XX: Delete a device posture rule response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/posture/{rule_id}\n@desc Get device posture rule details\n@required {rule_id: str, account_id: any}\n@returns(200) Get device posture rule details response.\n@errors {4XX: Get device posture rule details response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/posture/{rule_id}\n@desc Update a device posture rule\n@required {rule_id: str, account_id: any, name: str # The name of the device posture rule., type: str(file/application/tanium/gateway/warp/disk_encryption/serial_number/sentinelone/carbonblack/firewall/os_version/domain_joined/client_certificate/client_certificate_v2/antivirus/unique_client_id/kolide/tanium_s2s/crowdstrike_s2s/intune/workspace_one/sentinelone_s2s/custom_s2s) # The type of device posture rule.}\n@optional {description: str # The description of the device posture rule., expiration: str # Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client., input: map # The value to be checked against., match: [map{platform: str}] # The conditions that the client must match to run the rule., schedule: str # Polling frequency for the WARP client posture check. Default: `5m` (poll every five minutes). Minimum: `1m`.}\n@returns(200) Update a device posture rule response.\n@errors {4XX: Update a device posture rule response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/registrations\n@desc Delete registrations\n@required {account_id: str, id: [str] # A list of registration IDs to delete.}\n@returns(200) {errors: [map], messages: [map], result: map?, result_info: map{count: int, cursor: str, per_page: int, total_count: int?}, success: bool} # Delete a list of registrations response.\n\n@endpoint GET /accounts/{account_id}/devices/registrations\n@desc List registrations\n@required {account_id: str}\n@optional {user.id: [str] # Filter by user ID., seen_after: str # Filter by the last_seen timestamp - returns only registrations last seen after this timestamp., seen_before: str # Filter by the last_seen timestamp - returns only registrations last seen before this timestamp., status: str(active/all/revoked) # Filter by registration status. Defaults to 'active'., per_page: int(uint64) # The maximum number of devices to return in a single response., search: str # Filter by registration details., sort_by: str(id/user.name/user.email/last_seen_at/created_at) # The registration field to order results by., sort_order: str(asc/desc) # Sort direction., cursor: str # Opaque token indicating the starting position when requesting the next set of records. A cursor value can be obtained from the result_info.cursor field in the response., id: [str] # Filter by registration ID., device.id: str # Filter by WARP device ID., include: str # Comma-separated list of additional information that should be included in the registration response. Supported values are: \"policy\".}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: int, cursor: str, per_page: int, total_count: int?}, success: bool} # List of registrations response.\n\n@endpoint POST /accounts/{account_id}/devices/registrations/revoke\n@desc Revoke registrations\n@required {account_id: str, id: [str] # A list of registration IDs to revoke.}\n@returns(200) {errors: [map], messages: [map], result: map?, result_info: map{count: int, cursor: str, per_page: int, total_count: int?}, success: bool} # Revoke registrations response.\n\n@endpoint POST /accounts/{account_id}/devices/registrations/unrevoke\n@desc Unrevoke registrations\n@required {account_id: str, id: [str] # A list of registration IDs to unrevoke.}\n@returns(200) {errors: [map], messages: [map], result: map?, result_info: map{count: int, cursor: str, per_page: int, total_count: int?}, success: bool} # Unrevoke registrations response.\n\n@endpoint DELETE /accounts/{account_id}/devices/registrations/{registration_id}\n@desc Delete registration\n@required {registration_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map?, success: bool} # Registration deleted response.\n\n@endpoint GET /accounts/{account_id}/devices/registrations/{registration_id}\n@desc Get registration\n@required {registration_id: str, account_id: str}\n@optional {include: str # Comma-separated list of additional information that should be included in the registration response. Supported values are: \"policy\".}\n@returns(200) {errors: [map], messages: [map], result: map{created_at: str, deleted_at: str?, device: map{client_version: str, id: str, name: str}, id: str, key: str, key_type: str?, last_seen_at: str, policy: map{default: bool, deleted: bool, id: str, name: str, updated_at: str}, revoked_at: str?, tunnel_type: str?, updated_at: str, user: map{email: str, id: str, name: str}}, success: bool} # Returns a Registration.\n\n@endpoint GET /accounts/{account_id}/devices/registrations/{registration_id}/override_codes\n@desc Get override codes\n@required {account_id: str, registration_id: str}\n@returns(200) {errors: [map], messages: [map], result: any, success: bool} # Get admin override codes for a registration response.\n\n@endpoint GET /accounts/{account_id}/devices/resilience/disconnect\n@desc Retrieve Global WARP override state\n@required {account_id: any}\n@returns(200) Fetch Global WARP override state response.\n@errors {4XX: Fetch Global WARP override state failure.}\n\n@endpoint POST /accounts/{account_id}/devices/resilience/disconnect\n@desc Set Global WARP override state\n@required {account_id: any, disconnect: bool # Disconnects all devices on the account using Global WARP override.}\n@optional {justification: str # Reasoning for setting the Global WARP override state. This will be surfaced in the audit log.}\n@returns(200) Set Global WARP override state response.\n@errors {4XX: Set Global WARP override state response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/revoke\n@desc Revoke devices (deprecated)\n@required {account_id: any}\n@returns(200) Revoke devices response.\n@errors {4XX: Revoke devices response failure.}\n\n@endpoint DELETE /accounts/{account_id}/devices/settings\n@desc Reset device settings for a Zero Trust account with defaults. This turns off all proxying.\n@required {account_id: any}\n@returns(200) Reset response for device settings for a Zero Trust account.\n@errors {4XX: Reset failure response device settings for a Zero Trust account.}\n\n@endpoint GET /accounts/{account_id}/devices/settings\n@desc Get device settings for a Zero Trust account\n@required {account_id: any}\n@returns(200) Get device settings for a Zero Trust account response.\n@errors {4XX: Get device settings for a Zero Trust account response failure.}\n\n@endpoint PATCH /accounts/{account_id}/devices/settings\n@desc Patch device settings for a Zero Trust account\n@required {account_id: any}\n@optional {disable_for_time: num # Sets the time limit, in seconds, that a user can use an override code to bypass WARP., external_emergency_signal_enabled: bool # Controls whether the external emergency disconnect feature is enabled., external_emergency_signal_fingerprint: str # The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external_emergency_signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value., external_emergency_signal_interval: str # The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds., external_emergency_signal_url: str # The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host., gateway_proxy_enabled: bool # Enable gateway proxy filtering on TCP., gateway_udp_proxy_enabled: bool # Enable gateway proxy filtering on UDP., root_certificate_installation_enabled: bool # Enable installation of cloudflare managed root certificate., use_zt_virtual_ip: bool # Enable using CGNAT virtual IPv4.}\n@returns(200) Patch device settings for a Zero Trust account response.\n@errors {4XX: Patch device settings for a Zero Trust account response failure.}\n\n@endpoint PUT /accounts/{account_id}/devices/settings\n@desc Update device settings for a Zero Trust account\n@required {account_id: any}\n@optional {disable_for_time: num # Sets the time limit, in seconds, that a user can use an override code to bypass WARP., external_emergency_signal_enabled: bool # Controls whether the external emergency disconnect feature is enabled., external_emergency_signal_fingerprint: str # The SHA256 fingerprint (64 hexadecimal characters) of the HTTPS server certificate for the external_emergency_signal_url. If provided, the WARP client will use this value to verify the server's identity. The device will ignore any response if the server's certificate fingerprint does not exactly match this value., external_emergency_signal_interval: str # The interval at which the WARP client fetches the emergency disconnect signal, formatted as a duration string (e.g., \"5m\", \"2m30s\", \"1h\"). Minimum 30 seconds., external_emergency_signal_url: str # The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host., gateway_proxy_enabled: bool # Enable gateway proxy filtering on TCP., gateway_udp_proxy_enabled: bool # Enable gateway proxy filtering on UDP., root_certificate_installation_enabled: bool # Enable installation of cloudflare managed root certificate., use_zt_virtual_ip: bool # Enable using CGNAT virtual IPv4.}\n@returns(200) Update device settings for a Zero Trust account response.\n@errors {4XX: Update device settings for a Zero Trust account response failure.}\n\n@endpoint POST /accounts/{account_id}/devices/unrevoke\n@desc Unrevoke devices (deprecated)\n@required {account_id: any}\n@returns(200) Unrevoke devices response.\n@errors {4XX: Unrevoke devices response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/{device_id}\n@desc Get device (deprecated)\n@required {device_id: str, account_id: any}\n@returns(200) Get device details response.\n@errors {4XX: Get device details response failure.}\n\n@endpoint GET /accounts/{account_id}/devices/{device_id}/override_codes\n@desc Get override codes (deprecated)\n@required {device_id: str, account_id: any}\n@returns(200) Get an admin override code for a device response.\n@errors {4XX: Get an admin override code for a device response failure.}\n\n@endpoint GET /accounts/{account_id}/dex/colos\n@desc List Cloudflare colos\n@required {account_id: str # unique identifier linked to an account in the API request path., from: str # Start time for connection period in ISO (RFC3339 - ISO 8601) format, to: str # End time for connection period in ISO (RFC3339 - ISO 8601) format}\n@optional {sortBy: str(fleet-status-usage/application-tests-usage) # Type of usage that colos should be sorted by. If unspecified, returns all Cloudflare colos sorted alphabetically.}\n@returns(200) List colos response\n@errors {4XX: List colos failure response}\n\n@endpoint GET /accounts/{account_id}/dex/commands\n@desc List account commands\n@required {account_id: str # unique identifier linked to an account in the API request path, page: num # Page number for pagination, per_page: num # Number of results per page}\n@optional {from: str(date-time) # Start time for the query in ISO (RFC3339 - ISO 8601) format, to: str(date-time) # End time for the query in ISO (RFC3339 - ISO 8601) format, device_id: str # Unique identifier for a device, user_email: str # Email tied to the device, command_type: str # Optionally filter executed commands by command type, status: str(PENDING_EXEC/PENDING_UPLOAD/SUCCESS/FAILED) # Optionally filter executed commands by status}\n@returns(200) Get commands response\n@errors {4XX: Get commands failure response}\n\n@endpoint POST /accounts/{account_id}/dex/commands\n@desc Create account commands\n@required {account_id: str # unique identifier linked to an account in the API request path, commands: [map{command_args: map, command_type!: str, device_id!: str, registration_id: str, user_email!: str}] # List of device-level commands to execute}\n@returns(200) Create commands response\n@errors {4XX: Create commands failure response}\n\n@endpoint GET /accounts/{account_id}/dex/commands/devices\n@desc List devices eligible for remote captures\n@required {account_id: str # unique identifier linked to an account in the API request path, page: num # Page number of paginated results, per_page: num # Number of items per page}\n@optional {search: str # Filter devices by name or email}\n@returns(200) List of eligible devices\n@errors {4XX: List eligible devices failure response}\n\n@endpoint GET /accounts/{account_id}/dex/commands/quota\n@desc Returns account commands usage, quota, and reset time\n@required {account_id: str # unique identifier linked to an account in the API request path}\n@returns(200) Get commands quota response\n@errors {4XX: Get commands quota failure response}\n\n@endpoint GET /accounts/{account_id}/dex/commands/{command_id}/downloads/{filename}\n@desc Download command output file\n@required {account_id: str # unique identifier linked to an account in the API request path, command_id: str # Unique identifier for command, filename: str # The name of the file to be downloaded, including the `.zip` extension}\n@returns(200) Get command artifacts response\n@errors {4XX: Get downloaded commands failure response}\n\n@endpoint GET /accounts/{account_id}/dex/devices/dex_tests\n@desc List Device DEX tests\n@required {account_id: str}\n@optional {page: num=1 # Page number of paginated results, per_page: num=10 # Number of items per page, testName: str # Filter by test name, kind: str(http/traceroute) # Filter by test type}\n@returns(200) Device DEX test details response\n@errors {4XX: Device DEX test response failure}\n\n@endpoint POST /accounts/{account_id}/dex/devices/dex_tests\n@desc Create Device DEX test\n@required {account_id: str, data: map{host!: str, kind!: str, method: str} # The configuration object which contains the details for the WARP client to conduct the test., enabled: bool # Determines whether or not the test is active., interval: str # How often the test will run., name: str # The name of the DEX test. Must be unique.}\n@optional {description: str # Additional details about the test., target_policies: [map{default: bool, id!: str, name: str}] # DEX rules targeted by this test, targeted: bool, test_id: str # The unique identifier for the test.}\n@returns(200) Update Dex test response\n@errors {4XX: Update Dex test response failure}\n\n@endpoint DELETE /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n@desc Delete Device DEX test\n@required {account_id: str, dex_test_id: str}\n@returns(200) Delete Device DEX test response\n@errors {4XX: Delete DEX test response failure}\n\n@endpoint GET /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n@desc Get Device DEX test\n@required {account_id: str, dex_test_id: str}\n@returns(200) Device DEX test details response\n@errors {4XX: Device DEX test response failure}\n\n@endpoint PUT /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}\n@desc Update Device DEX test\n@required {account_id: str, dex_test_id: str, data: map{host!: str, kind!: str, method: str} # The configuration object which contains the details for the WARP client to conduct the test., enabled: bool # Determines whether or not the test is active., interval: str # How often the test will run., name: str # The name of the DEX test. Must be unique.}\n@optional {description: str # Additional details about the test., target_policies: [map{default: bool, id!: str, name: str}] # DEX rules targeted by this test, targeted: bool, test_id: str # The unique identifier for the test.}\n@returns(200) Update Dex test response\n@errors {4XX: Update Dex test response failure}\n\n@endpoint GET /accounts/{account_id}/dex/devices/{device_id}/fleet-status/live\n@desc Get the live status of a latest device\n@required {account_id: str # Unique identifier for account, device_id: str # Unique identifier for device, since_minutes: num # Number of minutes before current time}\n@optional {time_now: str # Number of minutes before current time, colo: str # List of data centers to filter results}\n@returns(200) {alwaysOn: bool?, batteryCharging: bool?, batteryCycles: int(int64)?, batteryPct: num(float)?, colo: str, connectionType: str?, cpuPct: num(float)?, cpuPctByApp: [[map]]?, deviceId: str, deviceIpv4: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, deviceIpv6: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, deviceName: str, diskReadBps: int(int64)?, diskUsagePct: num(float)?, diskWriteBps: int(int64)?, dohSubdomain: str?, estimatedLossPct: num(float)?, firewallEnabled: bool?, gatewayIpv4: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, gatewayIpv6: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, handshakeLatencyMs: num(int64)?, ispIpv4: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, ispIpv6: map{address: str?, asn: int?, aso: str?, location: map{city: str?, country_iso: str?, state_iso: str?, zip: str?}, netmask: str?, version: str?}, metal: str?, mode: str, networkRcvdBps: int(int64)?, networkSentBps: int(int64)?, networkSsid: str?, personEmail: str, platform: str, ramAvailableKb: int(int64)?, ramUsedPct: num(float)?, ramUsedPctByApp: [[map]]?, status: str, switchLocked: bool?, timestamp: str, version: str, wifiStrengthDbm: int(int64)?} # Get the live status of a latest device\n@errors {4XX: Get the live status of a latest device failure}\n\n@endpoint GET /accounts/{account_id}/dex/fleet-status/devices\n@desc List fleet status devices\n@required {account_id: str # Unique identifier for account, to: str # Time range end in ISO format, from: str # Time range beginning in ISO format, page: num # Page number, per_page: num # Number of results per page}\n@optional {sort_by: str # Dimension to sort results by, colo: str # Cloudflare colo, device_id: str # Device-specific ID, given as UUID v4, mode: str # The mode under which the WARP client is run, status: str # Network status, platform: str # Operating system, version: str # WARP client version, source: str # Source:   * `hourly` - device details aggregated hourly, up to 7 days prior   * `last_seen` - device details, up to 60 minutes prior   * `raw` - device details, up to 7 days prior}\n@returns(200) List devices response\n@errors {4XX: List devices response failure}\n\n@endpoint GET /accounts/{account_id}/dex/fleet-status/live\n@desc List fleet status details by dimension\n@required {account_id: str # Unique identifier for account, since_minutes: num # Number of minutes before current time}\n@returns(200) List device details (live) response\n@errors {4XX: List device details (live) response failure}\n\n@endpoint GET /accounts/{account_id}/dex/fleet-status/over-time\n@desc List fleet status aggregate details by dimension\n@required {account_id: str # Unique identifier for account, to: str # Time range end in ISO format, from: str # Time range beginning in ISO format}\n@optional {colo: str # Cloudflare colo, device_id: str # Device-specific ID, given as UUID v4}\n@returns(200) List DEX devices response\n@errors {4XX: DEX HTTP test details failure response}\n\n@endpoint GET /accounts/{account_id}/dex/http-tests/{test_id}\n@desc Get details and aggregate metrics for an http test\n@required {account_id: str # unique identifier linked to an account in the API request path., test_id: str # unique identifier for a specific test, from: str # Start time for aggregate metrics in ISO ms, to: str # End time for aggregate metrics in ISO ms, interval: str(minute/hour) # Time interval for aggregate time slots.}\n@optional {deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param., colo: str # Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.}\n@returns(200) DEX HTTP test details response\n@errors {4XX: DEX HTTP test details failure response}\n\n@endpoint GET /accounts/{account_id}/dex/http-tests/{test_id}/percentiles\n@desc Get percentiles for an http test\n@required {account_id: str # unique identifier linked to an account in the API request path., test_id: str # unique identifier for a specific test, from: str # Start time for the query in ISO (RFC3339 - ISO 8601) format, to: str # End time for the query in ISO (RFC3339 - ISO 8601) format}\n@optional {deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param., colo: str # Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.}\n@returns(200) DEX HTTP test percentiles response\n@errors {4XX: DEX HTTP test percentiles failure response}\n\n@endpoint GET /accounts/{account_id}/dex/rules\n@desc List DEX Rules\n@required {account_id: str # unique identifier linked to an account in the API request path, page: num # Page number of paginated results, per_page: num # Number of items per page}\n@optional {sort_order: str(ASC/DESC)=ASC # Sort direction for sort_by property, sort_by: str(name/created_at/updated_at)=name # Which property to sort results by, name: str # Filter results by rule name}\n@returns(200) success response\n@errors {4XX: List DEX Rules failure response}\n\n@endpoint POST /accounts/{account_id}/dex/rules\n@desc Create a DEX Rule\n@required {account_id: str # unique identifier linked to an account in the API request path, match: str # The wirefilter expression to match., name: str # The name of the Rule.}\n@optional {description: str}\n@returns(200) success response\n@errors {4XX: Create DEX Rule failure response}\n\n@endpoint DELETE /accounts/{account_id}/dex/rules/{rule_id}\n@desc Delete a DEX Rule\n@required {account_id: str # unique identifier linked to an account in the API request path, rule_id: str # unique identifier of the rule}\n@returns(200) success response\n@errors {4XX: Update DEX Rule failure response}\n\n@endpoint GET /accounts/{account_id}/dex/rules/{rule_id}\n@desc Get DEX Rule\n@required {account_id: str # unique identifier linked to an account in the API request path, rule_id: str # unique identifier of the rule}\n@returns(200) success response\n@errors {4XX: List DEX Rule failure response}\n\n@endpoint PATCH /accounts/{account_id}/dex/rules/{rule_id}\n@desc Update a DEX Rule\n@required {account_id: str # unique identifier linked to an account in the API request path, rule_id: str # unique identifier of the rule}\n@optional {description: str, match: str # The wirefilter expression to match., name: str # The name of the Rule.}\n@returns(200) success response\n@errors {4XX: Update DEX Rule failure response}\n\n@endpoint GET /accounts/{account_id}/dex/tests/overview\n@desc List DEX test analytics\n@required {account_id: str # unique identifier linked to an account in the API request path.}\n@optional {colo: str # Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param., testName: str # Optionally filter results by test name, deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param., page: num=1 # Page number of paginated results, per_page: num=10 # Number of items per page, kind: str(http/traceroute) # Filter by test type}\n@returns(200) success response\n@errors {4XX: failure response}\n\n@endpoint GET /accounts/{account_id}/dex/tests/unique-devices\n@desc Get count of devices targeted\n@required {account_id: str # unique identifier linked to an account in the API request path.}\n@optional {testName: str # Optionally filter results by test name, deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.}\n@returns(200) DEX unique devices targeted response\n@errors {4XX: DEX unique devices targeted failure response}\n\n@endpoint GET /accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path\n@desc Get details for a specific traceroute test run\n@required {account_id: str # unique identifier linked to an account, test_result_id: str # unique identifier for a specific traceroute test}\n@returns(200) DEX traceroute test result network path response\n@errors {4XX: DEX traceroute test result network path failure response}\n\n@endpoint GET /accounts/{account_id}/dex/traceroute-tests/{test_id}\n@desc Get details and aggregate metrics for a traceroute test\n@required {account_id: str # Unique identifier linked to an account, test_id: str # Unique identifier for a specific test, from: str # Start time for aggregate metrics in ISO ms, to: str # End time for aggregate metrics in ISO ms, interval: str(minute/hour) # Time interval for aggregate time slots.}\n@optional {deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param., colo: str # Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.}\n@returns(200) DEX traceroute test details response\n@errors {4XX: DEX traceroute test details response failure response}\n\n@endpoint GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path\n@desc Get network path breakdown for a traceroute test\n@required {account_id: str # unique identifier linked to an account, test_id: str # unique identifier for a specific test, deviceId: str # Device to filter tracroute result runs to, from: str # Start time for aggregate metrics in ISO ms, to: str # End time for aggregate metrics in ISO ms, interval: str(minute/hour) # Time interval for aggregate time slots.}\n@returns(200) DEX traceroute test network path response\n@errors {4XX: DEX traceroute test network path failure response}\n\n@endpoint GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/percentiles\n@desc Get percentiles for a traceroute test\n@required {account_id: str # unique identifier linked to an account in the API request path., test_id: str # unique identifier for a specific test, from: str # Start time for the query in ISO (RFC3339 - ISO 8601) format, to: str # End time for the query in ISO (RFC3339 - ISO 8601) format}\n@optional {deviceId: [str] # Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param., colo: str # Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.}\n@returns(200) DEX Traceroute test percentiles response\n@errors {4XX: DEX Traceroute test percentiles failure response}\n\n@endpoint GET /accounts/{account_id}/dex/warp-change-events\n@desc List WARP change events.\n@required {account_id: str # unique identifier linked to an account in the API request path, page: num # Page number of paginated results, per_page: num # Number of items per page, from: str # Start time for the query in ISO (RFC3339 - ISO 8601) format, to: str # End time for the query in ISO (RFC3339 - ISO 8601) format}\n@optional {type: str(config/toggle) # Filter events by type 'config' or 'toggle', toggle: str(on/off) # Filter events by type toggle value. Applicable to type='toggle' events only., config_name: str # Filter events by WARP configuration name changed from or to. Applicable to type='config' events only., account_name: str # Filter events by account name., sort_order: str(ASC/DESC)=ASC # Sort response by event timestamp.}\n@returns(200) success response\n@errors {4XX: List WARP change events failure response}\n\n@endpoint GET /accounts/{account_id}/diagnostics/endpoint-healthchecks\n@desc List Endpoint Health Checks\n@required {account_id: str}\n@returns(200) Endpoint Health Checks for account.\n@errors {4XX: Endpoint Health Check response failure.}\n\n@endpoint POST /accounts/{account_id}/diagnostics/endpoint-healthchecks\n@desc Endpoint Health Check\n@required {account_id: str, check_type: str=icmp # type of check to perform, endpoint: str # the IP address of the host to perform checks against}\n@optional {name: str # Optional name associated with this check}\n@returns(201) Endpoint Health Check response.\n@errors {4XX: Endpoint Health Check response failure.}\n\n@endpoint DELETE /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n@desc Delete Endpoint Health Check\n@required {account_id: str, id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Endpoint Health Checks response.\n@errors {4XX: Endpoint Health Check failure.}\n\n@endpoint GET /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n@desc Get Endpoint Health Check\n@required {account_id: str, id: str}\n@returns(200) Endpoint Health Checks response.\n@errors {4XX: Endpoint Health Check failure.}\n\n@endpoint PUT /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}\n@desc Update Endpoint Health Check\n@required {account_id: str, id: str, check_type: str=icmp # type of check to perform, endpoint: str # the IP address of the host to perform checks against}\n@optional {name: str # Optional name associated with this check}\n@returns(200) Endpoint Health Checks response.\n@errors {4XX: Endpoint Health Check failure.}\n\n@endpoint POST /accounts/{account_id}/diagnostics/traceroute\n@desc Traceroute\n@required {account_id: str, targets: [str]}\n@optional {colos: [str] # If no source colo names specified, all colos will be used. China colos are unavailable for traceroutes., options: map{max_ttl: int, packet_type: str, packets_per_ttl: int, port: int, wait_time: int}}\n@returns(200) Traceroute response.\n@errors {4XX: Traceroute response failure.}\n\n@endpoint GET /accounts/{account_id}/dlp/datasets\n@desc Fetch all datasets\n@required {account_id: str}\n@returns(200) Datasets read successfully.\n@errors {4XX: Datasets read failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/datasets\n@desc Create a new dataset\n@required {account_id: str, name: str}\n@optional {case_sensitive: bool # Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if `secret` is true or undefined, description: str # The description of the dataset., encoding_version: int(int32) # Dataset encoding version  Non-secret custom word lists with no header are always version 1. Secret EDM lists with no header are version 1. Multicolumn CSV with headers are version 2. Omitting this field provides the default value 0, which is interpreted the same as 1., secret: bool # Generate a secret dataset.  If true, the response will include a secret to use with the EDM encoder. If false, the response has no secret and the dataset is uploaded in plaintext.}\n@returns(200) Dataset created successfully.\n@errors {4XX: Dataset creation failed.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/datasets/{dataset_id}\n@desc Delete a dataset\n@required {account_id: str, dataset_id: str(uuid)}\n@returns(200) Dataset deleted successfully.\n@errors {4XX: Dataset delete failed.}\n\n@endpoint GET /accounts/{account_id}/dlp/datasets/{dataset_id}\n@desc Fetch a specific dataset\n@required {account_id: str, dataset_id: str(uuid)}\n@returns(200) Dataset read successfully.\n@errors {4XX: Dataset read failed.}\n\n@endpoint PUT /accounts/{account_id}/dlp/datasets/{dataset_id}\n@desc Update details about a dataset\n@required {account_id: str, dataset_id: str(uuid)}\n@optional {case_sensitive: bool # Determines if the words should be matched in a case-sensitive manner.  Only required for custom word lists., description: str # The description of the dataset., name: str # The name of the dataset, must be unique.}\n@returns(200) Dataset updated successfully.\n@errors {4XX: Dataset update failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/datasets/{dataset_id}/upload\n@desc Prepare to upload a new version of a dataset\n@required {account_id: str, dataset_id: str(uuid)}\n@returns(200) Dataset version created successfully.\n@errors {4XX: Dataset version creation failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/datasets/{dataset_id}/upload/{version}\n@desc Upload a new version of a dataset\n@required {account_id: str, dataset_id: str(uuid), version: int(int64)}\n@returns(200) Dataset version uploaded successfully.\n@errors {4XX: Dataset version upload failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/datasets/{dataset_id}/versions/{version}\n@desc Sets the column information for a multi-column upload\n@required {account_id: str, dataset_id: str(uuid), version: int(int64)}\n@returns(200) Dataset columns created successfully.\n@errors {4XX: Failed to create dataset columns.}\n\n@endpoint POST /accounts/{account_id}/dlp/datasets/{dataset_id}/versions/{version}/entries/{entry_id}\n@desc Upload a new version of a multi-column dataset\n@required {account_id: str, dataset_id: str(uuid), version: int(int64), entry_id: str(uuid)}\n@returns(200) Dataset column uploaded successfully.\n@errors {4XX: Failed to upload dataset column.}\n\n@endpoint GET /accounts/{account_id}/dlp/document_fingerprints\n@desc Retrieve data about all document fingerprints.\n@required {account_id: str}\n@returns(200) Document fingerprint read was successful.\n@errors {4XX: Document fingerprint read failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/document_fingerprints\n@desc Creates a new document fingerprint.\n@required {account_id: str, match_percent: int(int32), name: str}\n@optional {description: str=}\n@returns(200) Document fingerprint created successfully.\n@errors {4XX: Document fingerprint creation failed.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n@desc Delete a single document fingerprint.\n@required {account_id: str, document_fingerprint_id: str(uuid)}\n@returns(200) Document fingerprint delete was successful.\n@errors {4XX: Document fingerprint delete failed.}\n\n@endpoint GET /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n@desc Retrieve data about a specific document fingerprint.\n@required {account_id: str, document_fingerprint_id: str(uuid)}\n@returns(200) Document fingerprint read was successful.\n@errors {4XX: Document fingerprint read failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n@desc Update the attributes of a single document fingerprint.\n@required {account_id: str, document_fingerprint_id: str(uuid)}\n@optional {description: str, match_percent: int(int32), name: str}\n@returns(200) Document fingerprint read was successful.\n@errors {4XX: Document fingerprint read failed.}\n\n@endpoint PUT /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}\n@desc Uploads a new version for a document fingerprint.\n@required {account_id: str, document_fingerprint_id: str(uuid)}\n@returns(200) File uploaded successfully.\n@errors {4XX: Failed to upload file.}\n\n@endpoint GET /accounts/{account_id}/dlp/email/account_mapping\n@desc Get mapping\n@required {account_id: str}\n@returns(200) Get Email Scanner Account Mapping response.\n@errors {4XX: Get Email Scanner Account Mapping failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/email/account_mapping\n@desc Create mapping\n@required {account_id: str, auth_requirements: any}\n@returns(200) New Email Scanner Account Mapping response.\n@errors {4XX: New Email Scanner Account Mapping failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/email/rules\n@desc List all email scanner rules\n@required {account_id: str}\n@returns(200) List all email scanner rules response.\n@errors {4XX: List all email scanner rules failure response.}\n\n@endpoint PATCH /accounts/{account_id}/dlp/email/rules\n@desc Update email scanner rule priorities\n@required {account_id: str, new_priorities: map}\n@returns(200) Update Email Scanner Rule priorities response.\n@errors {4XX: Update Email Scanner Rule priorities failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/email/rules\n@desc Create email scanner rule\n@required {account_id: str, action: any, conditions: [map{operator!: str, selector!: str, value!: any}] # Triggered if all conditions match., enabled: bool, name: str}\n@optional {description: str}\n@returns(200) New Email Scanner Rule response.\n@errors {4XX: New Email Scanner Rule failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/email/rules/{rule_id}\n@desc Delete email scanner rule\n@required {account_id: str, rule_id: str(uuid)}\n@returns(200) Delete Email Scanner Rule response.\n@errors {4XX: Delete Email Scanner Rule failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/email/rules/{rule_id}\n@desc Get an email scanner rule\n@required {account_id: str, rule_id: str(uuid)}\n@returns(200) Get Email Scanner Rule response.\n@errors {4XX: Get Email Scanner Rule failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/email/rules/{rule_id}\n@desc Update email scanner rule\n@required {account_id: str, rule_id: str(uuid), action: any, conditions: [map{operator!: str, selector!: str, value!: any}] # Triggered if all conditions match., enabled: bool, name: str}\n@optional {description: str}\n@returns(200) Update Email Scanner Rule response.\n@errors {4XX: Update Email Scanner Rule failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/entries\n@desc List all entries\n@required {account_id: str}\n@returns(200) List all entries response.\n@errors {4XX: List all entries failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/entries\n@desc Create custom entry\n@required {account_id: str, enabled: bool, name: str, pattern: map{regex!: str, validation: any}}\n@optional {description: str, profile_id: str(uuid)}\n@returns(200) Create new custom entry response.\n@errors {4XX: Create new custom entry failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/entries/custom/{entry_id}\n@desc Update custom entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Update entry response.\n@errors {4XX: Update entry failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/entries/integration\n@desc Create integration entry\n@required {account_id: str, enabled: bool, entry_id: str(uuid)}\n@optional {profile_id: str(uuid) # This field is not used as the owning profile. For predefined entries it is already set to a predefined profile.}\n@returns(200) Create integration entry response.\n@errors {4XX: Create entry failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/entries/integration/{entry_id}\n@desc Delete integration entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Delete integration entry response.\n@errors {4XX: Delete entry failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/entries/integration/{entry_id}\n@desc Update integration entry\n@required {account_id: str, entry_id: str(uuid), enabled: bool}\n@returns(200) Update integration entry response.\n@errors {4XX: Update entry failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/entries/predefined\n@desc Create predefined entry\n@required {account_id: str, enabled: bool, entry_id: str(uuid)}\n@optional {profile_id: str(uuid) # This field is not used as the owning profile. For predefined entries it is already set to a predefined profile.}\n@returns(200) Create predefined entry response.\n@errors {4XX: Create entry failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/entries/predefined/{entry_id}\n@desc Delete predefined entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Delete predefined entry response.\n@errors {4XX: Delete entry failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/entries/predefined/{entry_id}\n@desc Update predefined entry\n@required {account_id: str, entry_id: str(uuid), enabled: bool}\n@returns(200) Update predefined entry response.\n@errors {4XX: Update entry failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/entries/{entry_id}\n@desc Delete custom entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Delete custom entry response.\n@errors {4XX: Delete custom entry failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/entries/{entry_id}\n@desc Get DLP Entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Get entry response.\n@errors {4XX: Get entry failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/entries/{entry_id}\n@desc Update entry\n@required {account_id: str, entry_id: str(uuid)}\n@returns(200) Update entry response.\n@errors {4XX: Update entry failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/limits\n@desc Fetch limits associated with DLP for account\n@required {account_id: str}\n@returns(200) Limits retrieved successfully.\n@errors {4XX: Limits get failed.}\n\n@endpoint POST /accounts/{account_id}/dlp/patterns/validate\n@desc Validate a DLP regex pattern\n@required {account_id: str # Account ID., regex: str}\n@optional {max_match_bytes: int(int32) # Maximum number of bytes that the regular expression can match.  If this is `null` then there is no limit on the length. Patterns can use `*` and `+`. Otherwise repeats should use a range `{m,n}` to restrict patterns to the length. If this field is missing, then a default length limit is used.  Note that the length is specified in bytes. Since regular expressions use UTF-8 the pattern `.` can match up to 4 bytes. Hence `.{1,256}` has a maximum length of 1024 bytes.}\n@returns(200) Validation response.\n@errors {4XX: Failed to validate.}\n\n@endpoint GET /accounts/{account_id}/dlp/payload_log\n@desc Get payload log settings\n@required {account_id: str}\n@returns(200) Payload log settings.\n@errors {4XX: Failed to get payload log settings.}\n\n@endpoint PUT /accounts/{account_id}/dlp/payload_log\n@desc Set payload log settings\n@required {account_id: str}\n@optional {masking_level: any, public_key: str # Base64-encoded public key for encrypting payload logs.  - Set to null or empty string to disable payload logging. - Set to a non-empty base64 string to enable payload logging with the given key.  For customers with configurable payload masking feature rolled out: - If the field is missing, the existing setting will be kept. Note that this is different from setting to null or empty string.  For all other customers: - If the field is missing, the existing setting will be cleared.}\n@returns(200) Payload log settings.\n@errors {4XX: Failed to set payload log settings.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles\n@desc List all profiles\n@required {account_id: str}\n@optional {all: bool # Return all profiles, including those that current account does not have access to.}\n@returns(200) List all profiles response.\n@errors {4XX: List all profiles failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles/custom\n@desc List all custom profiles\n@required {account_id: str}\n@returns(200) List all custom profiles response.\n@errors {4XX: List all profiles failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/profiles/custom\n@desc Create custom profile\n@required {account_id: str, name: str}\n@optional {ai_context_enabled: bool=false, allowed_match_count: int(int32)=0 # Related DLP policies will trigger when the match count exceeds the number set., confidence_threshold: str=low, context_awareness: map{enabled!: bool, skip!: map} # Scan the context of predefined entries to only return matches surrounded by keywords., data_classes: [str(uuid)] # Data class IDs to associate with the profile., data_tags: [str(uuid)] # Data tag IDs to associate with the profile., description: str # The description of the profile., entries: [any], ocr_enabled: bool=false, sensitivity_levels: [[any]] # Sensitivity levels to associate with the profile as (group_id, level_id) tuples., shared_entries: [map{enabled!: bool, entry_id!: str(uuid)}] # Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles).}\n@returns(200) New custom profile response.\n@errors {4XX: New custom profile failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/profiles/custom/{profile_id}\n@desc Delete custom profile\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Delete custom profile response.\n@errors {4XX: Delete custom profile failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles/custom/{profile_id}\n@desc Get custom profile\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Custom profile response.\n@errors {4XX: Custom profile failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/profiles/custom/{profile_id}\n@desc Update custom profile\n@required {account_id: str, profile_id: str(uuid), name: str}\n@optional {ai_context_enabled: bool=false, allowed_match_count: int(int32), confidence_threshold: str=low, context_awareness: map{enabled!: bool, skip!: map} # Scan the context of predefined entries to only return matches surrounded by keywords., data_classes: [str(uuid)] # Data class IDs to associate with the profile. If omitted, existing associations are unchanged., data_tags: [str(uuid)] # Data tag IDs to associate with the profile. If omitted, existing associations are unchanged., description: str # The description of the profile., entries: [any] # Custom entries from this profile. If this field is omitted, entries owned by this profile will not be changed., ocr_enabled: bool=false, sensitivity_levels: [[any]] # Sensitivity levels to associate with the profile. If omitted, existing associations are unchanged., shared_entries: [map{enabled!: bool, entry_id!: str(uuid)}] # Other entries, e.g. predefined or integration.}\n@returns(200) Update custom profile response.\n@errors {4XX: Update custom profile failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/profiles/predefined\n@desc Create predefined profile\n@required {account_id: str}\n@returns(200) Create predefined profile response.\n@errors {4XX: Create predefined profile failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/profiles/predefined/{profile_id}\n@desc Delete predefined profile\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Delete predefined profile response.\n@errors {4XX: Delete predefined profile failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}\n@desc Get predefined profile\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Predefined profile response.\n@errors {4XX: Predefined profile failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/profiles/predefined/{profile_id}\n@desc Update predefined profile\n@required {account_id: str, profile_id: str(uuid)}\n@optional {ai_context_enabled: bool=false, allowed_match_count: int(int32)=0, confidence_threshold: str=low, context_awareness: map{enabled!: bool, skip!: map} # Scan the context of predefined entries to only return matches surrounded by keywords., entries: [map{enabled!: bool, id!: str(uuid)}], ocr_enabled: bool=false}\n@returns(200) Update predefined profile response.\n@errors {4XX: Update predefined profile failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config\n@desc Get predefined profile config\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Predefined profile response.\n@errors {4XX: Predefined profile failure response.}\n\n@endpoint POST /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config\n@desc Create predefined profile\n@required {account_id: str, profile_id: str(uuid)}\n@optional {ai_context_enabled: bool=false, allowed_match_count: int(int32)=0, confidence_threshold: str=low, enabled_entries: [str(uuid)], entries: [map{enabled!: bool, id!: str(uuid)}], ocr_enabled: bool=false}\n@returns(200) Create predefined profile response.\n@errors {4XX: Create predefined profile failure response.}\n\n@endpoint PUT /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config\n@desc Update predefined profile config\n@required {account_id: str, profile_id: str(uuid)}\n@optional {ai_context_enabled: bool=false, allowed_match_count: int(int32)=0, confidence_threshold: str=low, enabled_entries: [str(uuid)], entries: [map{enabled!: bool, id!: str(uuid)}], ocr_enabled: bool=false}\n@returns(200) Update predefined profile response.\n@errors {4XX: Update predefined profile failure response.}\n\n@endpoint GET /accounts/{account_id}/dlp/profiles/{profile_id}\n@desc Get DLP Profile\n@required {account_id: str, profile_id: str(uuid)}\n@returns(200) Get profile response.\n@errors {4XX: Get profile failure response.}\n\n@endpoint DELETE /accounts/{account_id}/dlp/settings\n@desc Delete (reset) DLP account-level settings to initial values.\n@required {account_id: str}\n@returns(200) DLP settings reset.\n@errors {4XX: Failed to delete DLP settings.}\n\n@endpoint GET /accounts/{account_id}/dlp/settings\n@desc Get DLP account-level settings.\n@required {account_id: str}\n@returns(200) DLP settings.\n@errors {4XX: Failed to get DLP settings.}\n\n@endpoint PATCH /accounts/{account_id}/dlp/settings\n@desc Partially update DLP account-level settings.\n@required {account_id: str}\n@optional {ai_context_analysis: bool=false # Whether AI context analysis is enabled at the account level., ocr: bool=false # Whether OCR is enabled at the account level., payload_logging: any}\n@returns(200) DLP settings.\n@errors {4XX: Failed to update DLP settings.}\n\n@endpoint PUT /accounts/{account_id}/dlp/settings\n@desc Update DLP account-level settings (full replacement).\n@required {account_id: str}\n@optional {ai_context_analysis: bool=false # Whether AI context analysis is enabled at the account level., ocr: bool=false # Whether OCR is enabled at the account level., payload_logging: any}\n@returns(200) DLP settings.\n@errors {4XX: Failed to update DLP settings.}\n\n@endpoint GET /accounts/{account_id}/dns_firewall\n@desc List DNS Firewall Clusters\n@required {account_id: str}\n@optional {page: num=1, per_page: num=20}\n@returns(200) List DNS Firewall Clusters response\n@errors {4XX: List DNS Firewall Clusters response failure}\n\n@endpoint POST /accounts/{account_id}/dns_firewall\n@desc Create DNS Firewall Cluster\n@required {account_id: str}\n@returns(200) Create DNS Firewall Cluster response\n@errors {4XX: Create DNS Firewall Cluster response failure}\n\n@endpoint DELETE /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n@desc Delete DNS Firewall Cluster\n@required {dns_firewall_id: str, account_id: str}\n@returns(200) Delete DNS Firewall Cluster response\n@errors {4XX: Delete DNS Firewall Cluster response failure}\n\n@endpoint GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n@desc DNS Firewall Cluster Details\n@required {dns_firewall_id: str, account_id: str}\n@returns(200) DNS Firewall Cluster Details response\n@errors {4XX: DNS Firewall Cluster Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/dns_firewall/{dns_firewall_id}\n@desc Update DNS Firewall Cluster\n@required {dns_firewall_id: str, account_id: str}\n@returns(200) Update DNS Firewall Cluster response\n@errors {4XX: Update DNS Firewall Cluster response failure}\n\n@endpoint GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report\n@desc Table\n@required {dns_firewall_id: str, account_id: str}\n@optional {metrics: str, dimensions: str, since: str(date-time), until: str(date-time), limit: int, sort: str, filters: str}\n@returns(200) Table response\n@errors {4XX: Table response failure}\n\n@endpoint GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report/bytime\n@desc By Time\n@required {dns_firewall_id: str, account_id: str}\n@optional {metrics: str, dimensions: str, since: str(date-time), until: str(date-time), limit: int, sort: str, filters: str, time_delta: str}\n@returns(200) By Time response\n@errors {4XX: By Time response failure}\n\n@endpoint GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns\n@desc Show DNS Firewall Cluster Reverse DNS\n@required {dns_firewall_id: str, account_id: str}\n@returns(200) Show DNS Firewall Cluster Reverse DNS response\n@errors {4XX: Show DNS Firewall Cluster Reverse DNS response failure}\n\n@endpoint PATCH /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns\n@desc Update DNS Firewall Cluster Reverse DNS\n@required {dns_firewall_id: str, account_id: str}\n@returns(200) Update DNS Firewall Cluster Reverse DNS response\n@errors {4XX: Update DNS Firewall Cluster Reverse DNS response failure}\n\n@endpoint GET /accounts/{account_id}/dns_records/usage\n@desc Get DNS Record Usage for Account\n@required {account_id: str}\n@returns(200) Get DNS Record Usage response\n@errors {4XX: Get DNS Record Usage response failure}\n\n@endpoint GET /accounts/{account_id}/dns_settings\n@desc Show DNS Settings\n@required {account_id: str}\n@returns(200) Show DNS Settings response\n@errors {4XX: Show DNS Settings response failure}\n\n@endpoint PATCH /accounts/{account_id}/dns_settings\n@desc Update DNS Settings\n@required {account_id: str}\n@optional {zone_defaults: map}\n@returns(200) Show DNS Settings response\n@errors {4XX: Show DNS Settings response failure}\n\n@endpoint GET /accounts/{account_id}/dns_settings/views\n@desc List Internal DNS Views\n@required {account_id: str}\n@optional {name: str, name.exact: str, name.contains: str, name.startswith: str, name.endswith: str, zone_id: str, zone_name: str, match: str, page: num, per_page: num, order: str, direction: str}\n@returns(200) List Internal DNS Views response\n@errors {4XX: List Internal DNS Views response failure}\n\n@endpoint POST /accounts/{account_id}/dns_settings/views\n@desc Create Internal DNS View\n@required {account_id: str}\n@returns(200) Create Internal DNS View response\n@errors {4XX: Create Internal DNS View response failure}\n\n@endpoint DELETE /accounts/{account_id}/dns_settings/views/{view_id}\n@desc Delete Internal DNS View\n@required {account_id: str, view_id: str}\n@returns(200) {result: map{id: str}} # Delete Internal DNS View response\n@errors {4XX: Update Internal DNS View response failure}\n\n@endpoint GET /accounts/{account_id}/dns_settings/views/{view_id}\n@desc DNS Internal View Details\n@required {account_id: str, view_id: str}\n@returns(200) Get DNS Internal View response\n@errors {4XX: List Internal DNS Views response failure}\n\n@endpoint PATCH /accounts/{account_id}/dns_settings/views/{view_id}\n@desc Update Internal DNS View\n@required {account_id: str, view_id: str}\n@returns(200) Update Internal DNS View response\n@errors {4XX: Update Internal DNS View response failure}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate\n@desc Search email messages\n@required {account_id: str}\n@optional {start: str(date-time) # The beginning of the search date range. Defaults to `now - 30 days` if not provided., end: str(date-time) # The end of the search date range. Defaults to `now` if not provided., query: str # The space-delimited term used in the query. The search is case-insensitive.  The content of the following email metadata fields are searched: * alert_id * CC * From (envelope_from) * From Name * final_disposition * md5 hash (of any attachment) * sha1 hash (of any attachment) * sha256 hash (of any attachment) * name (of any attachment) * Reason * Received DateTime (yyyy-mm-ddThh:mm:ss) * Sent DateTime (yyyy-mm-ddThh:mm:ss) * ReplyTo * To (envelope_to) * To Name * Message-ID * smtp_helo_server_ip * smtp_previous_hop_ip * x_originating_ip * Subject, detections_only: bool=true # Determines if the search results will include detections or not., action_log: bool=true # Determines if the message action log is included in the response., final_disposition: any # The dispositions the search filters by., metric: str, message_action: any # The message actions the search filters by., recipient: str # Filter by recipient. Matches either an email address or a domain., sender: str # Filter by sender. Matches either an email address or a domain., alert_id: str, domain: str # Filter by a domain found in the email: sender domain, recipient domain, or a domain in a link., message_id: str, subject: str # Search for messages containing individual keywords in any order within the subject., exact_subject: str # Search for messages with an exact subject match., submissions: bool=false # Search for submissions instead of original messages, cursor: str, per_page: int(int32)=20 # The number of results per page., page: int(int32)=1 # Deprecated: Use cursor pagination instead.}\n@returns(200) Contains the search results for the provided query.\n@returns(202) The search is taking longer than expected. Use the Location header to poll for results.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/investigate/move\n@desc Move multiple messages\n@required {account_id: str, destination: str(Inbox/JunkEmail/DeletedItems/RecoverableItemsDeletions/RecoverableItemsPurges)}\n@optional {ids: [str] # List of message IDs to move., postfix_ids: [str] # Deprecated: Use `ids` instead. List of message IDs to move.}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/investigate/preview\n@desc Preview for non-detection messages\n@required {account_id: str, postfix_id: str # The identifier of the message.}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/investigate/release\n@desc Release messages from quarantine\n@required {account_id: str}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate/{postfix_id}\n@desc Get message details\n@required {account_id: str, postfix_id: str}\n@returns(200) Contains the email message details.\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate/{postfix_id}/detections\n@desc Get message detection details\n@required {account_id: str, postfix_id: str}\n@returns(200) Contains the email message details.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/investigate/{postfix_id}/move\n@desc Move a message\n@required {account_id: str, postfix_id: str, destination: str(Inbox/JunkEmail/DeletedItems/RecoverableItemsDeletions/RecoverableItemsPurges)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate/{postfix_id}/preview\n@desc Get email preview\n@required {account_id: str, postfix_id: str}\n@returns(200) Contains a preview of the email.\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate/{postfix_id}/raw\n@desc Get raw email content\n@required {account_id: str, postfix_id: str}\n@returns(200) Contains the raw content of the email.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/investigate/{postfix_id}/reclassify\n@desc Change email classification\n@required {account_id: str, postfix_id: str, expected_disposition: str(NONE/BULK/MALICIOUS/SPAM/SPOOF/SUSPICIOUS)}\n@optional {eml_content: str # Base64 encoded content of the EML file, escalated_submission_id: str}\n@returns(202)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/investigate/{postfix_id}/trace\n@desc Get email trace\n@required {account_id: str, postfix_id: str}\n@returns(200) Contains the email trace.\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/phishguard/reports\n@desc Get `PhishGuard` reports\n@required {account_id: str}\n@optional {from_date: str(date), to_date: str(date), start: str(date-time) # The beginning of the search date range (RFC3339 format)., end: str(date-time) # The end of the search date range (RFC3339 format).}\n@returns(200) Contains a list of PhishGuard reports.\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/allow_policies\n@desc List email allow policies\n@required {account_id: str}\n@optional {page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page., order: str(pattern/created_at) # The field to sort by., direction: any # The sorting direction., search: str # Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future., is_sender: bool, is_trusted_sender: bool, is_recipient: bool, is_exempt_recipient: bool, is_spoof: bool, is_acceptable_sender: bool, verify_sender: bool, pattern_type: any, pattern: str}\n@returns(200) Contains a list of allow policies for the account.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/allow_policies\n@desc Create an email allow policy\n@required {account_id: str, is_acceptable_sender: bool # Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions., is_exempt_recipient: bool # Messages to this recipient will bypass all detections., is_regex: bool, is_trusted_sender: bool # Messages from this sender will bypass all detections and link following., pattern: str, pattern_type: str(EMAIL/DOMAIN/IP/UNKNOWN), verify_sender: bool # Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication.}\n@optional {comments: str, is_recipient: bool, is_sender: bool, is_spoof: bool}\n@returns(201) Contains the newly created policy.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/allow_policies/batch\n@desc Batch Allow Policies\n@required {account_id: str, deletes: [map{id!: int(int32)}], patches: [any], posts: [map{comments: str, is_acceptable_sender!: bool, is_exempt_recipient!: bool, is_recipient: bool, is_regex!: bool, is_sender: bool, is_spoof: bool, is_trusted_sender!: bool, pattern!: str, pattern_type!: str, verify_sender!: bool}], puts: [any]}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n@desc Delete an email allow policy\n@required {account_id: str, policy_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n@desc Get an email allow policy\n@required {account_id: str, policy_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint PATCH /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}\n@desc Update an email allow policy\n@required {account_id: str, policy_id: int(int32)}\n@optional {comments: str, is_acceptable_sender: bool # Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions. Note: This will not exempt messages with Malicious or Suspicious dispositions., is_exempt_recipient: bool # Messages to this recipient will bypass all detections., is_regex: bool, is_trusted_sender: bool # Messages from this sender will bypass all detections and link following., pattern: str, pattern_type: any, verify_sender: bool # Enforce DMARC, SPF or DKIM authentication. When on, Email Security only honors policies that pass authentication.}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/block_senders\n@desc List blocked email senders\n@required {account_id: str}\n@optional {page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page., order: str(pattern/created_at) # The field to sort by., direction: any # The sorting direction., search: str # Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future., pattern_type: any, pattern: str}\n@returns(200) Contains a list of blocked senders for the account.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/block_senders\n@desc Create a blocked email sender\n@required {account_id: str, is_regex: bool, pattern: str, pattern_type: str(EMAIL/DOMAIN/IP/UNKNOWN)}\n@optional {comments: str}\n@returns(201) Contains the newly created pattern.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/block_senders/batch\n@desc Batch Block Senders\n@required {account_id: str, deletes: [map{id!: int(int32)}], patches: [any], posts: [map{comments: str, is_regex!: bool, pattern!: str, pattern_type!: str}], puts: [any]}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n@desc Delete a blocked email sender\n@required {account_id: str, pattern_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n@desc Get a blocked email sender\n@required {account_id: str, pattern_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint PATCH /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}\n@desc Update a blocked email sender\n@required {account_id: str, pattern_id: int(int32)}\n@optional {comments: str, is_regex: bool, pattern: str, pattern_type: any}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/domains\n@desc Unprotect multiple email domains\n@required {account_id: str}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/domains\n@desc List protected email domains\n@required {account_id: str}\n@optional {page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page., order: str(domain/created_at) # The field to sort by., direction: any # The sorting direction., search: str # Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future., allowed_delivery_mode: any # Filters response to domains with the provided delivery mode., domain: [str] # Filters results by the provided domains, allowing for multiple occurrences., active_delivery_mode: any # Filters response to domains with the currently active delivery mode., integration_id: str(uuid) # Filters response to domains with the provided integration ID.}\n@returns(200) Contains a list of domains for the account.\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/domains/{domain_id}\n@desc Unprotect an email domain\n@required {account_id: str, domain_id: int(int32)}\n@returns(200) Deletes the domain with the provided id.\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/domains/{domain_id}\n@desc Get an email domain\n@required {account_id: str, domain_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint PATCH /accounts/{account_id}/email-security/settings/domains/{domain_id}\n@desc Update an email domain\n@required {account_id: str, domain_id: int(int32), ip_restrictions: [str]}\n@optional {allowed_delivery_modes: [str], domain: str, drop_dispositions: [str], folder: any, integration_id: str(uuid), lookback_hops: int(int32), regions: [str], require_tls_inbound: bool, require_tls_outbound: bool, transport: str}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/impersonation_registry\n@desc List entries in impersonation registry\n@required {account_id: str}\n@optional {page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page., order: str(name/email/created_at) # The field to sort by., direction: any # The sorting direction., search: str # Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future., provenance: any}\n@returns(200) Contains the list of impersonation registry entries for the account.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/impersonation_registry\n@desc Create an entry in impersonation registry\n@required {account_id: str, email: str, is_email_regex: bool, name: str}\n@returns(201)\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n@desc Delete an entry from impersonation registry\n@required {account_id: str, display_name_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n@desc Get an entry in impersonation registry\n@required {account_id: str, display_name_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint PATCH /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}\n@desc Update an entry in impersonation registry\n@required {account_id: str, display_name_id: int(int32)}\n@optional {email: str, is_email_regex: bool, name: str}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/sending_domain_restrictions/batch\n@desc Batch Sending Domain Restrictions\n@required {account_id: str, deletes: [map{id!: int(int32)}]}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/trusted_domains\n@desc List trusted email domains\n@required {account_id: str}\n@optional {page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page., order: str(pattern/created_at) # The field to sort by., direction: any # The sorting direction., search: str # Allows searching in multiple properties of a record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future., is_recent: bool, is_similarity: bool, pattern: str}\n@returns(200) Contains the list of trusted domains for the account.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/trusted_domains\n@desc Create a trusted email domain\n@required {account_id: str}\n@returns(201) Contains the new trusted domain in the shape of the request body.\n@errors {4XX: Client Error}\n\n@endpoint POST /accounts/{account_id}/email-security/settings/trusted_domains/batch\n@desc Batch Trusted Domains\n@required {account_id: str, deletes: [map{id!: int(int32)}], patches: [any], posts: [map{comments: str, is_recent!: bool, is_regex!: bool, is_similarity!: bool, pattern!: str}], puts: [any]}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint DELETE /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n@desc Delete a trusted email domain\n@required {account_id: str, trusted_domain_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n@desc Get a trusted email domain\n@required {account_id: str, trusted_domain_id: int(int32)}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint PATCH /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}\n@desc Update a trusted email domain\n@required {account_id: str, trusted_domain_id: int(int32)}\n@optional {comments: str, is_recent: bool # Select to prevent recently registered domains from triggering a Suspicious or Malicious disposition., is_regex: bool, is_similarity: bool # Select for partner or other approved domains that have similar spelling to your connected domains. Prevents listed domains from triggering a Spoof disposition., pattern: str}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email-security/submissions\n@desc Get reclassify submissions\n@required {account_id: str}\n@optional {start: str(date-time) # The beginning of the search date range. Defaults to `now - 30 days` if not provided., end: str(date-time) # The end of the search date range. Defaults to `now` if not provided., type: any, submission_id: str, original_disposition: any, requested_disposition: any, outcome_disposition: any, status: str, query: str, customer_status: any, page: int(int32)=1 # The page number of paginated results., per_page: int(int32)=20 # The number of results per page.}\n@returns(200)\n@errors {4XX: Client Error}\n\n@endpoint GET /accounts/{account_id}/email/routing/addresses\n@desc List destination addresses\n@required {account_id: str}\n@optional {page: num=1, per_page: num=20, direction: str(asc/desc)=asc, verified: bool(true/false)=true}\n@returns(200) List destination addresses response\n\n@endpoint POST /accounts/{account_id}/email/routing/addresses\n@desc Create a destination address\n@required {account_id: str, email: str # The contact email address of the user.}\n@returns(200) Create a destination address response\n\n@endpoint DELETE /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}\n@desc Delete destination address\n@required {destination_address_identifier: str, account_id: str}\n@returns(200) Delete destination address response\n\n@endpoint GET /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}\n@desc Get a destination address\n@required {destination_address_identifier: str, account_id: str}\n@returns(200) Get a destination address response\n\n@endpoint POST /accounts/{account_id}/email/sending/send\n@desc Send an email using the builder.\n@required {account_id: str # Identifier of the account., from: any # Sender email address. Either a plain string or an object with address and name., subject: str # Email subject line., to: any # Recipient(s). A single email string or an array of email strings.}\n@optional {attachments: [any] # File attachments and inline images., bcc: any # BCC recipient(s). A single email string or an array of email strings., cc: any # CC recipient(s). A single email string or an array of email strings., headers: map # Custom email headers as key-value pairs., html: str # HTML body of the email. At least one of text or html must be provided., reply_to: any # Reply-to address. Either a plain string or an object with address and name., text: str # Plain text body of the email. At least one of text or html must be provided.}\n@returns(200) {errors: [map], messages: [map], result: map{delivered: [str(email)], permanent_bounces: [str(email)], queued: [str(email)]}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Email sending results.\n@errors {400: Invalid request, generally because of the format/content of the email send request. No email will be sent when this happens., 403: Email sending is disabled for this zone/account., 429: Account/zone has surpassed the rate at which it can send email, please try again later. No email will be sent when this happens., 500: An unexpected error while processing the email send request. No email will be sent when this happens.}\n\n@endpoint POST /accounts/{account_id}/email/sending/send_raw\n@desc Send a raw MIME email message.\n@required {account_id: str # Identifier of the account., from: str(email) # Sender email address., mime_message: str # The full MIME-encoded email message. Should include standard RFC 5322 headers such as From, To, Subject, and Content-Type. The from and recipients fields in the request body control SMTP envelope routing; the From and To headers in the MIME message control what the recipient's email client displays., recipients: [str(email)] # List of recipient email addresses.}\n@returns(200) {errors: [map], messages: [map], result: map{delivered: [str(email)], permanent_bounces: [str(email)], queued: [str(email)]}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Email sending results.\n@errors {400: Invalid request, generally because of the format/content of the email send request. No email will be sent when this happens., 403: Email sending is disabled for this zone/account., 429: Account/zone has surpassed the rate at which it can send email, please try again later. No email will be sent when this happens., 500: An unexpected error while processing the email send request. No email will be sent when this happens.}\n\n@endpoint GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration\n@desc List Event Notification Rules\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Read Configuration response.\n@errors {404: No Configuration Found response., 4XX: Read Configuration failure.}\n\n@endpoint DELETE /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n@desc Delete Event Notification Rules\n@required {queue_id: str, bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str, ruleIds: [str] # Array of rule ids to delete.}\n@returns(200) Delete Configuration response.\n@errors {4XX: Delete Configuration failure.}\n\n@endpoint GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n@desc Get Event Notification Rule\n@required {queue_id: str, bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str(default/eu/fedramp)=default}\n@returns(200) Read Configuration response.\n@errors {404: No Configuration Found response., 4XX: Read Configuration failure.}\n\n@endpoint PUT /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}\n@desc Create Event Notification Rule\n@required {queue_id: str, bucket_name: str, account_id: str, rules: [map{actions!: [str], description: str, prefix: str, suffix: str}] # Array of rules to drive notifications.}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Create Configuration response.\n@errors {4XX: Create Configuration failure.}\n\n@endpoint GET /accounts/{account_id}/event_subscriptions/subscriptions\n@desc List Event Subscriptions\n@required {account_id: str}\n@optional {page: int=1 # Page number for pagination, per_page: int=20 # Number of items per page, order: str(created_at/name/enabled/source)=name # Field to sort by, direction: str(asc/desc)=asc # Sort direction}\n@returns(200) List of event subscriptions\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/event_subscriptions/subscriptions\n@desc Create Event Subscription\n@required {account_id: str}\n@optional {destination: map # Destination configuration for the subscription, enabled: bool # Whether the subscription is active, events: [str] # List of event types this subscription handles, name: str # Name of the subscription, source: map # Source configuration for the subscription}\n@returns(200) Successfully created event subscription\n@errors {400: Invalid request body or validation errors, 404: Queue does not exist or resource not found on source, 405: Multiple subscriptions on same resource not supported}\n\n@endpoint DELETE /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n@desc Delete Event Subscription\n@required {account_id: str, subscription_id: str}\n@returns(200) Successfully created event subscription\n\n@endpoint GET /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n@desc Get Event Subscription\n@required {account_id: str, subscription_id: str}\n@returns(200) Details about an event subscription\n@errors {404: Event subscription does not exist}\n\n@endpoint PATCH /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}\n@desc Update Event Subscription\n@required {account_id: str, subscription_id: str}\n@optional {destination: map # Destination configuration for the subscription, enabled: bool # Whether the subscription is active, events: [str] # List of event types this subscription handles, name: str # Name of the subscription}\n@returns(200) Successfully created event subscription\n@errors {400: Invalid request body or validation errors, 404: Queue does not exist or resource not found on source}\n\n@endpoint GET /accounts/{account_id}/firewall/access_rules/rules\n@desc List IP Access rules\n@required {account_id: str}\n@optional {mode: str, configuration.target: str(ip/ip_range/asn/country), configuration.value: str, notes: str, match: str(any/all)=all, page: num, per_page: num, order: str(configuration.target/configuration.value/mode), direction: str(asc/desc)}\n@returns(200) List IP Access rules response.\n@errors {4XX: List IP Access rules response failure.}\n\n@endpoint POST /accounts/{account_id}/firewall/access_rules/rules\n@desc Create an IP Access rule\n@required {account_id: str, configuration: map # The rule configuration., mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request.}\n@optional {notes: any}\n@returns(200) Create an IP Access rule response.\n@errors {4XX: Create an IP Access rule response failure.}\n\n@endpoint DELETE /accounts/{account_id}/firewall/access_rules/rules/{rule_id}\n@desc Delete an IP Access rule\n@required {rule_id: str, account_id: str}\n@returns(200) Delete an IP Access rule response.\n@errors {4XX: Delete an IP Access rule response failure.}\n\n@endpoint GET /accounts/{account_id}/firewall/access_rules/rules/{rule_id}\n@desc Get an IP Access rule\n@required {rule_id: str, account_id: str}\n@returns(200) Get an IP Access rule response.\n@errors {4XX: Get an IP Access rule response failure.}\n\n@endpoint PATCH /accounts/{account_id}/firewall/access_rules/rules/{rule_id}\n@desc Update an IP Access rule\n@required {rule_id: str, account_id: str}\n@returns(200) Update an IP Access rule response.\n@errors {4XX: Update an IP Access rule response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway\n@desc Get Zero Trust account information\n@required {account_id: str}\n@returns(200) Zero Trust account information response.\n@errors {4XX: Zero Trust account information response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway\n@desc Create Zero Trust account\n@required {account_id: str}\n@returns(200) Create Zero Trust account response.\n@errors {4XX: Create Zero Trust account response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/app_types\n@desc List application and application type mappings\n@required {account_id: str}\n@returns(200) List application and application type mappings response.\n@errors {4XX: List application and application type mappings response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/apps/review_status\n@desc List applications review statuses\n@required {account_id: str}\n@returns(200) List applications review status response.\n@errors {4XX: List applications review status failure response.}\n\n@endpoint PUT /accounts/{account_id}/gateway/apps/review_status\n@desc Update applications review statuses\n@required {account_id: str, approved_apps: [int] # Contains the ids of the approved applications., in_review_apps: [int] # Contains the ids of the applications in review., unapproved_apps: [int] # Contains the ids of the unapproved applications.}\n@returns(200) Update applications review status response.\n@errors {4XX: Update applications review status failure response.}\n\n@endpoint GET /accounts/{account_id}/gateway/audit_ssh_settings\n@desc Get Zero Trust SSH settings\n@required {account_id: str}\n@returns(200) Get Zero Trust SSH settings response.\n@errors {4XX: Get Zero Trust SSH settings response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/audit_ssh_settings\n@desc Update Zero Trust SSH settings\n@required {account_id: str, public_key: str # Provide the Base64-encoded HPKE public key that encrypts SSH session logs. See https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/#enable-ssh-command-logging.}\n@returns(200) Update Zero Trust SSH settings response.\n@errors {4XX: Update Zero Trust SSH settings response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/audit_ssh_settings/rotate_seed\n@desc Rotate Zero Trust SSH account seed\n@required {account_id: str}\n@returns(200) Rotate Zero Trust SSH account seed response.\n@errors {4XX: Rotate Zero Trust SSH account seed response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/categories\n@desc List categories\n@required {account_id: str}\n@returns(200) List categories response.\n@errors {4XX: List categories response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/certificates\n@desc List Zero Trust certificates\n@required {account_id: str}\n@returns(200) Lists Zero Trust certificates response.\n@errors {4XX: Lists Zero Trust certificates response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/certificates\n@desc Create Zero Trust certificate\n@required {account_id: str}\n@optional {validity_period_days: int # Sets the certificate validity period in days (range: 1-10,950 days / ~30 years). Defaults to 1,825 days (5 years). **Important**: This field is only settable during the certificate creation.  Certificates becomes immutable after creation - use the `/activate` and `/deactivate` endpoints to manage certificate lifecycle.}\n@returns(200) Creates Zero Trust certificate response.\n@errors {4XX: Creates Zero Trust certificate response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/certificates/{certificate_id}\n@desc Delete Zero Trust certificate\n@required {certificate_id: str, account_id: str}\n@returns(200) Deletes Zero Trust certificate response.\n@errors {4XX: Deletes Zero Trust certificate response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/certificates/{certificate_id}\n@desc Get Zero Trust certificate details\n@required {certificate_id: str, account_id: str}\n@returns(200) Gets Zero Trust certificate details response.\n@errors {4XX: Gets Zero Trust certificate details response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/certificates/{certificate_id}/activate\n@desc Activate a Zero Trust certificate\n@required {certificate_id: str, account_id: str}\n@returns(202) Activates Zero Trust certificate details response.\n@errors {4XX: Activates Zero Trust certificate details response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/certificates/{certificate_id}/deactivate\n@desc Deactivate a Zero Trust certificate\n@required {certificate_id: str, account_id: str}\n@returns(201) Deactivate Zero Trust certificate details response.\n@errors {4XX: Deactivate Zero Trust certificate details response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/configuration\n@desc Get Zero Trust account configuration\n@required {account_id: str}\n@returns(200) Zero Trust account configuration response.\n@errors {4XX: Zero Trust account configuration response failure.}\n\n@endpoint PATCH /accounts/{account_id}/gateway/configuration\n@desc Patch Zero Trust account configuration\n@required {account_id: str}\n@optional {settings: map{activity_log: map, antivirus: map, block_page: map, body_scanning: map, browser_isolation: map, certificate: map, custom_certificate: map, extended_email_matching: map, fips: map, host_selector: map, inspection: map, protocol_detection: map, sandbox: map, tls_decrypt: map} # Specify account settings.}\n@returns(200) Zero Trust account configuration response.\n@errors {4XX: Zero Trust account configuration response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/configuration\n@desc Update Zero Trust account configuration\n@required {account_id: str}\n@optional {settings: map{activity_log: map, antivirus: map, block_page: map, body_scanning: map, browser_isolation: map, certificate: map, custom_certificate: map, extended_email_matching: map, fips: map, host_selector: map, inspection: map, protocol_detection: map, sandbox: map, tls_decrypt: map} # Specify account settings.}\n@returns(200) Zero Trust account configuration response.\n@errors {4XX: Zero Trust account configuration response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/configuration/custom_certificate\n@desc Get Zero Trust certificate configuration\n@required {account_id: str}\n@returns(200) {binding_status: str, enabled: bool?, id: str, updated_at: str(date-time)} # Zero Trust account configuration response.\n@errors {4XX: Zero Trust account configuration response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/lists\n@desc List Zero Trust lists\n@required {account_id: str}\n@optional {type: str}\n@returns(200) List Zero Trust lists response.\n@errors {4XX: List Zero Trust lists response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/lists\n@desc Create Zero Trust list\n@required {account_id: str, name: str # Specify the list name., type: str(SERIAL/URL/DOMAIN/EMAIL/IP/CATEGORY/LOCATION/DEVICE) # Specify the list type.}\n@optional {description: str # Provide the list description., items: [map{description: str, value: str}] # Add items to the list.}\n@returns(200) Create Zero Trust list response.\n@errors {4XX: Create Zero Trust list response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/lists/{list_id}\n@desc Delete Zero Trust list\n@required {list_id: str, account_id: str}\n@returns(200) Delete Zero Trust list response.\n@errors {4XX: Delete Zero Trust list response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/lists/{list_id}\n@desc Get Zero Trust list details\n@required {list_id: str, account_id: str}\n@returns(200) Get Zero Trust list details response.\n@errors {4XX: Get Zero Trust list details response failure.}\n\n@endpoint PATCH /accounts/{account_id}/gateway/lists/{list_id}\n@desc Patch Zero Trust list.\n@required {list_id: str, account_id: str}\n@optional {append: [map{description: str, value: str}] # Add items to the list., remove: [str] # Lists of item values you want to remove.}\n@returns(200) Patch Zero Trust list response.\n@errors {4XX: Patch Zero Trust list response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/lists/{list_id}\n@desc Update Zero Trust list\n@required {list_id: str, account_id: str, name: str # Specify the list name.}\n@optional {description: str # Provide the list description., items: [map{description: str, value: str}] # Add items to the list.}\n@returns(200) Update Zero Trust list response.\n@errors {4XX: Update Zero Trust list response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/lists/{list_id}/items\n@desc Get Zero Trust list items\n@required {list_id: str, account_id: str}\n@returns(200) Get Zero Trust list items response.\n@errors {4XX: Get Zero Trust list items response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/locations\n@desc List Zero Trust Gateway locations\n@required {account_id: str}\n@returns(200) Lists Zero Trust Gateway locations response.\n@errors {4XX: Lists Zero Trust Gateway locations response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/locations\n@desc Create a Zero Trust Gateway location\n@required {account_id: str, name: str # Specify the location name.}\n@optional {client_default: bool=false # Indicate whether this location is the default location., dns_destination_ips_id: str # Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged., ecs_support: bool=false # Indicate whether the location must resolve EDNS queries., endpoints: map{doh!: map, dot!: map, ipv4!: map, ipv6!: map} # Configure the destination endpoints for this location., networks: [map{network!: str}] # Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.}\n@returns(200) Creates a Zero Trust Gateway location response.\n@errors {4XX: Creates a Zero Trust Gateway location response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/locations/{location_id}\n@desc Delete a Zero Trust Gateway location\n@required {location_id: str, account_id: str}\n@returns(200) Deletes a Zero Trust Gateway location response.\n@errors {4XX: Deletes a Zero Trust Gateway location response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/locations/{location_id}\n@desc Get Zero Trust Gateway location details\n@required {location_id: str, account_id: str}\n@returns(200) Gets Zero Trust Gateway location details response.\n@errors {4XX: Gets Zero Trust Gateway location details response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/locations/{location_id}\n@desc Update a Zero Trust Gateway location\n@required {location_id: str, account_id: str, name: str # Specify the location name.}\n@optional {client_default: bool=false # Indicate whether this location is the default location., dns_destination_ips_id: str # Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged., ecs_support: bool=false # Indicate whether the location must resolve EDNS queries., endpoints: map{doh!: map, dot!: map, ipv4!: map, ipv6!: map} # Configure the destination endpoints for this location., networks: [map{network!: str}] # Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location.}\n@returns(200) Updates a Zero Trust Gateway location response.\n@errors {4XX: Updates a Zero Trust Gateway location response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/logging\n@desc Get logging settings for the Zero Trust account\n@required {account_id: str}\n@returns(200) Logging settings retrieval response.\n@errors {4XX: Logging settings retrieval response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/logging\n@desc Update Zero Trust account logging settings\n@required {account_id: str}\n@optional {redact_pii: bool=false # Indicate whether to redact personally identifiable information from activity logging (PII fields include source IP, user email, user ID, device ID, URL, referrer, and user agent)., settings_by_rule_type: map{dns: any, http: any, l4: any} # Configure logging settings for each rule type.}\n@returns(200) Logging settings update response.\n@errors {4XX: Logging settings update response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/pacfiles\n@desc List PAC files\n@required {account_id: str}\n@returns(200) Returns a list of PAC files response.\n@errors {4XX: Returns a list of PAC files response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/pacfiles\n@desc Create a PAC file\n@required {account_id: str, contents: str # Actual contents of the PAC file, name: str # Name of the PAC file.}\n@optional {description: str # Detailed description of the PAC file., slug: str # URL-friendly version of the PAC file name. If not provided, it will be auto-generated}\n@returns(200) Returns a created PAC file response.\n@errors {4XX: Returns a created PAC file response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n@desc Delete a PAC file\n@required {pacfile_id: str, account_id: str}\n@returns(200) Returns a deleted PAC file response.\n@errors {4XX: Returns a deleted PAC file response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n@desc Get a PAC file\n@required {pacfile_id: str, account_id: str}\n@returns(200) Returns a PAC file response.\n@errors {4XX: Returns a PAC file response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/pacfiles/{pacfile_id}\n@desc Update a Zero Trust Gateway PAC file\n@required {pacfile_id: str, account_id: str, contents: str # Actual contents of the PAC file, description: str # Detailed description of the PAC file., name: str # Name of the PAC file.}\n@returns(200) Update a Zero Trust Gateway PAC file response.\n@errors {4XX: Update a Zero Trust Gateway PAC file response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/proxy_endpoints\n@desc List proxy endpoints\n@required {account_id: str}\n@returns(200) Returns a list of proxy endpoints response.\n@errors {4XX: Returns a list of proxy endpoints response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/proxy_endpoints\n@desc Create a proxy endpoint\n@required {account_id: str}\n@optional {kind: str(ip/identity)=ip # The proxy endpoint kind.}\n@returns(200) Returns a created proxy endpoint response.\n@errors {4XX: Returns a created proxy endpoint response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n@desc Delete a proxy endpoint\n@required {proxy_endpoint_id: str, account_id: str}\n@returns(200) Returns a deleted proxy endpoint response.\n@errors {4XX: Returns a deleted proxy endpoint response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n@desc Get a proxy endpoint\n@required {proxy_endpoint_id: str, account_id: str}\n@returns(200) Returns a proxy endpoint response.\n@errors {4XX: Returns a proxy endpoint response failure.}\n\n@endpoint PATCH /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}\n@desc Update a proxy endpoint\n@required {proxy_endpoint_id: str, account_id: str}\n@optional {ips: [str] # Specify the list of CIDRs to restrict ingress connections., name: str # Specify the name of the proxy endpoint.}\n@returns(200) Returns an updated proxy endpoint response.\n@errors {4XX: Returns an updated proxy endpoint response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/rules\n@desc List Zero Trust Gateway rules\n@required {account_id: str}\n@returns(200) List Zero Trust Gateway rules response.\n@errors {4XX: List Zero Trust Gateway rules response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/rules\n@desc Create a Zero Trust Gateway rule\n@required {account_id: str, action: str(on/off/allow/block/scan/noscan/safesearch/ytrestricted/isolate/noisolate/override/l4_override/egress/resolve/quarantine/redirect) # Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to `true`., name: str # Specify the rule name.}\n@optional {description: str # Specify the rule description., device_posture: str= # Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response., enabled: bool=false # Specify whether the rule is enabled., expiration: map{duration: int, expired: bool, expires_at!: any} # Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This  does not apply to HTTP or network policies. Settable only for `dns` rules., filters: [str] # Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value., identity: str= # Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response., precedence: int # Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to [Order of enforcement](http://developers.cloudflare.com/learning-paths/secure-internet-traffic/understand-policies/order-of-enforcement/#manage-precedence-with-terraform) to manage precedence via Terraform., rule_settings: map{add_headers: map, allow_child_bypass: bool, audit_ssh: map, biso_admin_controls: map, block_page: map, block_page_enabled: bool, block_reason: str, bypass_parent_rule: bool, check_session: map, dns_resolvers: map, egress: map, forensic_copy: map, ignore_cname_category_matches: bool, insecure_disable_dnssec_validation: bool, ip_categories: bool, ip_indicator_feeds: bool, l4override: map, notification_settings: map, override_host: str, override_ips: [str], payload_log: map, quarantine: map, redirect: map, resolve_dns_internally: map, resolve_dns_through_cloudflare: bool, untrusted_cert: map} # Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift., schedule: map{fri: str, mon: str, sat: str, sun: str, thu: str, time_zone: str, tue: str, wed: str} # Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules., traffic: str= # Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.}\n@returns(200) Create a Zero Trust Gateway rule response.\n@errors {4XX: Create a Zero Trust Gateway rule response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/rules/tenant\n@desc List Zero Trust Gateway rules inherited from the parent account\n@required {account_id: str}\n@returns(200) List Zero Trust Gateway rules response.\n@errors {4XX: List Zero Trust Gateway rules response failure.}\n\n@endpoint DELETE /accounts/{account_id}/gateway/rules/{rule_id}\n@desc Delete a Zero Trust Gateway rule\n@required {rule_id: str, account_id: str}\n@returns(200) Delete a Zero Trust Gateway rule response.\n@errors {4XX: Delete a Zero Trust Gateway rule response failure.}\n\n@endpoint GET /accounts/{account_id}/gateway/rules/{rule_id}\n@desc Get Zero Trust Gateway rule details.\n@required {rule_id: str, account_id: str}\n@returns(200) Get Zero Trust Gateway rule details response.\n@errors {4XX: Get Zero Trust Gateway rule details response failure.}\n\n@endpoint PUT /accounts/{account_id}/gateway/rules/{rule_id}\n@desc Update a Zero Trust Gateway rule\n@required {rule_id: str, account_id: str, action: str(on/off/allow/block/scan/noscan/safesearch/ytrestricted/isolate/noisolate/override/l4_override/egress/resolve/quarantine/redirect) # Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to `true`., name: str # Specify the rule name.}\n@optional {description: str # Specify the rule description., device_posture: str= # Specify the wirefilter expression used for device posture check. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response., enabled: bool=false # Specify whether the rule is enabled., expiration: map{duration: int, expired: bool, expires_at!: any} # Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This  does not apply to HTTP or network policies. Settable only for `dns` rules., filters: [str] # Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value., identity: str= # Specify the wirefilter expression used for identity matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response., precedence: int # Set the order of your rules. Lower values indicate higher precedence. At each processing phase, evaluate applicable rules in ascending order of this value. Refer to [Order of enforcement](http://developers.cloudflare.com/learning-paths/secure-internet-traffic/understand-policies/order-of-enforcement/#manage-precedence-with-terraform) to manage precedence via Terraform., rule_settings: map{add_headers: map, allow_child_bypass: bool, audit_ssh: map, biso_admin_controls: map, block_page: map, block_page_enabled: bool, block_reason: str, bypass_parent_rule: bool, check_session: map, dns_resolvers: map, egress: map, forensic_copy: map, ignore_cname_category_matches: bool, insecure_disable_dnssec_validation: bool, ip_categories: bool, ip_indicator_feeds: bool, l4override: map, notification_settings: map, override_host: str, override_ips: [str], payload_log: map, quarantine: map, redirect: map, resolve_dns_internally: map, resolve_dns_through_cloudflare: bool, untrusted_cert: map} # Defines settings for this rule. Settings apply only to specific rule types and must use compatible selectors. If Terraform detects drift, confirm the setting supports your rule type and check whether the API modifies the value. Use API-returned values in your configuration to prevent drift., schedule: map{fri: str, mon: str, sat: str, sun: str, thu: str, time_zone: str, tue: str, wed: str} # Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules., traffic: str= # Specify the wirefilter expression used for traffic matching. The API automatically formats and sanitizes expressions before storing them. To prevent Terraform state drift, use the formatted expression returned in the API response.}\n@returns(200) Update a Zero Trust Gateway rule response.\n@errors {4XX: Update a Zero Trust Gateway rule response failure.}\n\n@endpoint POST /accounts/{account_id}/gateway/rules/{rule_id}/reset_expiration\n@desc Reset the expiration of a Zero Trust Gateway Rule\n@required {rule_id: str, account_id: str}\n@returns(200) Reset the expiration of a Zero Trust Gateway rule response.\n@errors {4XX: Reset the expiration of a Zero Trust Gateway rule response failure.}\n\n@endpoint GET /accounts/{account_id}/hyperdrive/configs\n@desc List Hyperdrives\n@required {account_id: str # The Cloudflare account ID.}\n@returns(200) List Hyperdrives Response.\n@errors {4XX: List Hyperdrives Failure Response.}\n\n@endpoint POST /accounts/{account_id}/hyperdrive/configs\n@desc Create Hyperdrive\n@required {account_id: str # The Cloudflare account ID., id: str # Define configurations using a unique string identifier., name: str # The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API., origin: map}\n@optional {caching: map, created_on: str(date-time) # Defines the creation time of the Hyperdrive configuration., modified_on: str(date-time) # Defines the last modified time of the Hyperdrive configuration., mtls: map{ca_certificate_id: str, mtls_certificate_id: str, sslmode: str}, origin_connection_limit: int # The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.  Maximum allowed: 20 for free tier accounts, 100 for paid tier accounts. If not specified, defaults to 20 for free tier and 60 for paid tier. Contact Cloudflare if you need a higher limit.}\n@returns(200) Create Hyperdrive Response.\n@errors {4XX: Create Hyperdrive Failure Response.}\n\n@endpoint DELETE /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n@desc Delete Hyperdrive\n@required {account_id: str # The Cloudflare account ID., hyperdrive_id: str # The unique identifier of the Hyperdrive configuration.}\n@returns(200) Delete Hyperdrive Response.\n@errors {4XX: Delete Hyperdrive Failure.}\n\n@endpoint GET /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n@desc Get Hyperdrive\n@required {account_id: str # The Cloudflare account ID., hyperdrive_id: str # The unique identifier of the Hyperdrive configuration.}\n@returns(200) Get Hyperdrive Response.\n@errors {4XX: Get Hyperdrive Failure.}\n\n@endpoint PATCH /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n@desc Patch Hyperdrive\n@required {account_id: str # The Cloudflare account ID., hyperdrive_id: str # The unique identifier of the Hyperdrive configuration.}\n@optional {caching: map, mtls: map{ca_certificate_id: str, mtls_certificate_id: str, sslmode: str}, name: str # The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API., origin: map, origin_connection_limit: int # The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.  Maximum allowed: 20 for free tier accounts, 100 for paid tier accounts. If not specified, defaults to 20 for free tier and 60 for paid tier. Contact Cloudflare if you need a higher limit.}\n@returns(200) Patch Hyperdrive Response.\n@errors {4XX: Patch Hyperdrive Failure Response.}\n\n@endpoint PUT /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}\n@desc Update Hyperdrive\n@required {account_id: str # The Cloudflare account ID., hyperdrive_id: str # The unique identifier of the Hyperdrive configuration., id: str # Define configurations using a unique string identifier., name: str # The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API., origin: map}\n@optional {caching: map, created_on: str(date-time) # Defines the creation time of the Hyperdrive configuration., modified_on: str(date-time) # Defines the last modified time of the Hyperdrive configuration., mtls: map{ca_certificate_id: str, mtls_certificate_id: str, sslmode: str}, origin_connection_limit: int # The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.  Maximum allowed: 20 for free tier accounts, 100 for paid tier accounts. If not specified, defaults to 20 for free tier and 60 for paid tier. Contact Cloudflare if you need a higher limit.}\n@returns(200) Update Hyperdrive Response.\n@errors {4XX: Update Hyperdrive Failure Response.}\n\n@endpoint GET /accounts/{account_id}/iam/permission_groups\n@desc List Account Permission Groups\n@required {account_id: any}\n@optional {id: str, name: str, label: str, page: num=1, per_page: num=20}\n@returns(200) List Permission Groups response\n@errors {4XX: List Permission Groups response failure}\n\n@endpoint GET /accounts/{account_id}/iam/permission_groups/{permission_group_id}\n@desc Permission Group Details\n@required {account_id: any, permission_group_id: any}\n@returns(200) Permission Group Details response\n@errors {4XX: Permission Group Details response failure}\n\n@endpoint GET /accounts/{account_id}/iam/resource_groups\n@desc List Resource Groups\n@required {account_id: any}\n@optional {id: any, name: str}\n@returns(200) List Resource Groups response\n@errors {4XX: List Resource Groups response failure}\n\n@endpoint POST /accounts/{account_id}/iam/resource_groups\n@desc Create Resource Group\n@required {account_id: any, name: str # Name of the resource group, scope: map{key!: any, objects!: [map]} # A scope is a combination of scope objects which provides additional context.}\n@returns(200) Add Resource Group response\n@errors {4XX: Add Resource Group response failure}\n\n@endpoint DELETE /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n@desc Remove Resource Group\n@required {account_id: any, resource_group_id: any}\n@returns(200) Remove Resource Group response\n@errors {4XX: Remove Member response failure}\n\n@endpoint GET /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n@desc Resource Group Details\n@required {account_id: any, resource_group_id: any}\n@returns(200) Resource Group Details response\n@errors {4XX: Resource Group Details response failure}\n\n@endpoint PUT /accounts/{account_id}/iam/resource_groups/{resource_group_id}\n@desc Update Resource Group\n@required {account_id: any, resource_group_id: any}\n@optional {name: str # Name of the resource group, scope: map{key!: any, objects!: [map]} # A scope is a combination of scope objects which provides additional context.}\n@returns(200) Update Resource Group response\n@errors {4XX: Update Resource Group response failure}\n\n@endpoint GET /accounts/{account_id}/iam/user_groups\n@desc List User Groups\n@required {account_id: any}\n@optional {id: any # ID of the user group to be fetched., name: str, fuzzyName: str, page: num=1, per_page: num=20, direction: str}\n@returns(200) List User Group response\n@errors {4XX: List User Group response failure}\n\n@endpoint POST /accounts/{account_id}/iam/user_groups\n@desc Create User Group\n@required {account_id: any, name: str # Name of the User group., policies: [any] # Policies attached to the User group}\n@returns(200) Add User Group response\n@errors {4XX: Add User Group response failure}\n\n@endpoint DELETE /accounts/{account_id}/iam/user_groups/{user_group_id}\n@desc Remove User Group\n@required {account_id: any, user_group_id: any}\n@returns(200) Remove User Group response\n@errors {4XX: Remove User Group response failure}\n\n@endpoint GET /accounts/{account_id}/iam/user_groups/{user_group_id}\n@desc User Group Details\n@required {account_id: any, user_group_id: any}\n@returns(200) User Group Details response\n@errors {4XX: User Group Details response failure}\n\n@endpoint PUT /accounts/{account_id}/iam/user_groups/{user_group_id}\n@desc Update User Group\n@required {account_id: any, user_group_id: any}\n@optional {name: str # Name of the User group., policies: [any] # Policies attached to the User group}\n@returns(200) Update User Group response\n@errors {4XX: Update User Group response failure}\n\n@endpoint GET /accounts/{account_id}/iam/user_groups/{user_group_id}/members\n@desc List User Group Members\n@required {account_id: any, user_group_id: any}\n@optional {page: num=1, per_page: num=100}\n@returns(200) List User Group Members\n@errors {4XX: User Group Details response failure}\n\n@endpoint POST /accounts/{account_id}/iam/user_groups/{user_group_id}/members\n@desc Add User Group Members\n@required {account_id: any, user_group_id: any}\n@returns(200) Add User Group Member response\n@errors {4XX: Add User Group Member response failure}\n\n@endpoint PUT /accounts/{account_id}/iam/user_groups/{user_group_id}/members\n@desc Update User Group Members\n@required {account_id: any, user_group_id: any}\n@returns(200) Update User Group Members response\n@errors {4XX: Update User Group response failure}\n\n@endpoint DELETE /accounts/{account_id}/iam/user_groups/{user_group_id}/members/{member_id}\n@desc Remove User Group Member\n@required {account_id: any, user_group_id: any, member_id: any}\n@returns(200) Delete User Group Member response\n@errors {4XX: Delete User Group response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1\n@desc List images\n@required {account_id: str}\n@optional {page: num=1, per_page: num=1000, creator: str}\n@returns(200) List images response\n@errors {4XX: List images response failure}\n\n@endpoint POST /accounts/{account_id}/images/v1\n@desc Upload an image\n@required {account_id: str}\n@returns(200) Upload an image response\n@errors {4XX: Upload an image response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/keys\n@desc List Signing Keys\n@required {account_id: str}\n@returns(200) List Signing Keys response\n@errors {4XX: List Signing Keys response failure}\n\n@endpoint DELETE /accounts/{account_id}/images/v1/keys/{signing_key_name}\n@desc Delete Signing Key\n@required {signing_key_name: str, account_id: str}\n@returns(200) Delete Signing Key response\n@errors {4XX: Delete Signing Key response failure}\n\n@endpoint PUT /accounts/{account_id}/images/v1/keys/{signing_key_name}\n@desc Create a new Signing Key\n@required {signing_key_name: str, account_id: str}\n@returns(200) Add Signing Key response\n@errors {4XX: Add Signing Key response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/stats\n@desc Images usage statistics\n@required {account_id: str}\n@returns(200) Images usage statistics response\n@errors {4XX: Images usage statistics response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/variants\n@desc List variants\n@required {account_id: str}\n@returns(200) List variants response\n@errors {4XX: List variants response failure}\n\n@endpoint POST /accounts/{account_id}/images/v1/variants\n@desc Create a variant\n@required {account_id: str, id: str, options: map{fit!: str, height!: num, metadata!: str, width!: num} # Allows you to define image resizing sizes for different use cases.}\n@optional {neverRequireSignedURLs: bool=false # Indicates whether the variant can access an image without a signature, regardless of image access control.}\n@returns(200) Create a variant response\n@errors {4XX: Create a variant response failure}\n\n@endpoint DELETE /accounts/{account_id}/images/v1/variants/{variant_id}\n@desc Delete a variant\n@required {variant_id: str, account_id: str}\n@returns(200) Delete a variant response\n@errors {4XX: Delete a variant response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/variants/{variant_id}\n@desc Variant details\n@required {variant_id: str, account_id: str}\n@returns(200) Variant details response\n@errors {4XX: Variant details response failure}\n\n@endpoint PATCH /accounts/{account_id}/images/v1/variants/{variant_id}\n@desc Update a variant\n@required {variant_id: str, account_id: str, options: map{fit!: str, height!: num, metadata!: str, width!: num} # Allows you to define image resizing sizes for different use cases.}\n@optional {neverRequireSignedURLs: bool=false # Indicates whether the variant can access an image without a signature, regardless of image access control.}\n@returns(200) Update a variant response\n@errors {4XX: Update a variant response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/variants/{variant_id}/flat\n@desc Variant details (flat)\n@required {variant_id: str, account_id: str}\n@returns(200) Variant details flat response\n@errors {4XX: Variant details flat response failure}\n\n@endpoint DELETE /accounts/{account_id}/images/v1/{image_id}\n@desc Delete image\n@required {image_id: str, account_id: str}\n@returns(200) Delete image response\n@errors {4XX: Delete image response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/{image_id}\n@desc Image details\n@required {image_id: str, account_id: str}\n@returns(200) Image details response\n@errors {4XX: Image details response failure}\n\n@endpoint PATCH /accounts/{account_id}/images/v1/{image_id}\n@desc Update image\n@required {image_id: str, account_id: str}\n@optional {creator: str # Can set the creator field with an internal user ID., metadata: map # User modifiable key-value store. Can be used for keeping references to another system of record for managing images. No change if not specified., requireSignedURLs: bool # Indicates whether the image can be accessed using only its UID. If set to `true`, a signed token needs to be generated with a signing key to view the image. Returns a new UID on a change. No change if not specified.}\n@returns(200) Update image response\n@errors {4XX: Update image response failure}\n\n@endpoint GET /accounts/{account_id}/images/v1/{image_id}/blob\n@desc Base image\n@required {image_id: str, account_id: str}\n@returns(200) Base image response. Returns uploaded image data.\n@errors {4XX: Base image response failure}\n\n@endpoint GET /accounts/{account_id}/images/v2\n@desc List images V2\n@required {account_id: str}\n@optional {continuation_token: str, per_page: num=1000, sort_order: str(asc/desc)=desc, creator: str, meta.<field>[<operator>]: str # Optional metadata filter(s). Multiple filters can be combined with AND logic.  **Operators:** - `eq`, `eq:string`, `eq:number`, `eq:boolean` - Exact match - `in`, `in:string`, `in:number` - Match any value in pipe-separated list  **Examples:** - `meta.status[eq]=active` - `meta.priority[eq:number]=5` - `meta.enabled[eq:boolean]=true` - `meta.region[in]=us-east|us-west|eu-west`}\n@returns(200) List images response\n@errors {400: Bad request, 4XX: List images response failure}\n\n@endpoint POST /accounts/{account_id}/images/v2/direct_upload\n@desc Create authenticated direct upload URL V2\n@required {account_id: str}\n@returns(200) Create authenticated direct upload URL V2 response\n@errors {4XX: Create authenticated direct upload URL V2 response failure}\n\n@endpoint GET /accounts/{account_id}/infrastructure/targets\n@desc List all targets\n@required {account_id: str}\n@optional {hostname: str # Hostname of a target, hostname_contains: str # Partial match to the hostname of a target, virtual_network_id: str(uuid) # Private virtual network identifier of the target, ip_v4: str # IPv4 address of the target, ip_v6: str # IPv6 address of the target, created_before: str(date-time) # Date and time at which the target was created before (inclusive), created_after: str(date-time) # Date and time at which the target was created after (inclusive), modified_before: str(date-time) # Date and time at which the target was modified before (inclusive), modified_after: str(date-time) # Date and time at which the target was modified after (inclusive), ips: [str] # Filters for targets that have any of the following IP addresses. Specify `ips` multiple times in query parameter to build list of candidates., target_ids: [str(uuid)] # Filters for targets that have any of the following UUIDs. Specify `target_ids` multiple times in query parameter to build list of candidates., ip_like: str # Filters for targets whose IP addresses look like the specified string. Supports `*` as a wildcard character, ipv4_start: str # Defines an IPv4 filter range's starting value (inclusive). Requires `ipv4_end` to be specified as well., ipv4_end: str # Defines an IPv4 filter range's ending value (inclusive). Requires `ipv4_start` to be specified as well., ipv6_start: str # Defines an IPv6 filter range's starting value (inclusive). Requires `ipv6_end` to be specified as well., ipv6_end: str # Defines an IPv6 filter range's ending value (inclusive). Requires `ipv6_start` to be specified as well., page: int(int32)=1 # Current page in the response, per_page: int(int32)=1000 # Max amount of entries returned per page, order: str(hostname/created_at) # The field to sort by., direction: any # The sorting direction.}\n@returns(200) Successfully retrieved all targets in the account\n@errors {4XX: Failed to retrieve all targets in the account}\n\n@endpoint POST /accounts/{account_id}/infrastructure/targets\n@desc Create new target\n@required {account_id: str, hostname: str # A non-unique field that refers to a target. Case insensitive, maximum length of 255 characters, supports the use of special characters dash and period, does not support spaces, and must start and end with an alphanumeric character., ip: map{ipv4: map, ipv6: map} # The IPv4/IPv6 address that identifies where to reach a target}\n@returns(200) Successfully created the target\n@errors {4XX: Failed to create the target}\n\n@endpoint DELETE /accounts/{account_id}/infrastructure/targets/batch\n@desc Delete targets (Deprecated)\n@required {account_id: str, target_ids: [str(uuid)] # List of target IDs to bulk delete}\n@returns(200) Successfully deleted the targets\n@errors {4XX: Failed to delete the targets}\n\n@endpoint PUT /accounts/{account_id}/infrastructure/targets/batch\n@desc Create new targets\n@required {account_id: str}\n@returns(200) Successfully created the targets\n@errors {4XX: Failed to create the targets}\n\n@endpoint POST /accounts/{account_id}/infrastructure/targets/batch_delete\n@desc Delete targets\n@required {account_id: str, target_ids: [str(uuid)] # List of target IDs to bulk delete}\n@returns(200) Successfully deleted the targets\n@errors {4XX: Failed to delete the targets}\n\n@endpoint DELETE /accounts/{account_id}/infrastructure/targets/{target_id}\n@desc Delete target\n@required {account_id: str, target_id: str(uuid)}\n@returns(200) Successfully deleted the target\n@errors {4XX: Failed to delete the target}\n\n@endpoint GET /accounts/{account_id}/infrastructure/targets/{target_id}\n@desc Get target\n@required {account_id: str, target_id: str(uuid)}\n@returns(200) Successfully retrieved the target\n@errors {4XX: Failed to retrieve the target}\n\n@endpoint PUT /accounts/{account_id}/infrastructure/targets/{target_id}\n@desc Update target\n@required {account_id: str, target_id: str(uuid), hostname: str # A non-unique field that refers to a target. Case insensitive, maximum length of 255 characters, supports the use of special characters dash and period, does not support spaces, and must start and end with an alphanumeric character., ip: map{ipv4: map, ipv6: map} # The IPv4/IPv6 address that identifies where to reach a target}\n@returns(200) Successfully updated the target\n@errors {4XX: Failed to update the target}\n\n@endpoint GET /accounts/{account_id}/intel/asn/{asn}\n@desc Get ASN Overview.\n@required {asn: int, account_id: str}\n@returns(200) Get ASN Overview response.\n@errors {4XX: Get ASN Overview response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/asn/{asn}/subnets\n@desc Get ASN Subnets\n@required {asn: int, account_id: str}\n@returns(200) {asn: int, count: num, ip_count_total: int, page: num, per_page: num, subnets: [str]} # Get ASN Subnets response.\n@errors {4XX: Get ASN Subnets response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/attack-surface-report/issue-types\n@desc Retrieves Security Center Issues Types\n@required {account_id: str}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/intel/attack-surface-report/issues\n@desc Retrieves Security Center Issues\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str], page: any=1, per_page: any=25}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/intel/attack-surface-report/issues/class\n@desc Retrieves Security Center Issue Counts by Class\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/intel/attack-surface-report/issues/severity\n@desc Retrieves Security Center Issue Counts by Severity\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/intel/attack-surface-report/issues/type\n@desc Retrieves Security Center Issue Counts by Type\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint PUT /accounts/{account_id}/intel/attack-surface-report/{issue_id}/dismiss\n@desc Archives Security Center Insight\n@required {account_id: str, issue_id: str}\n@optional {dismiss: bool=true}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/intel/dns\n@desc Get Passive DNS by IP\n@required {account_id: str}\n@optional {start_end_params: map, ipv4: str, page: num, per_page: num}\n@returns(200) Get Passive DNS by IP response.\n@errors {4XX: Get Passive DNS by IP response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/domain\n@desc Get Domain Details\n@required {account_id: str}\n@optional {domain: str}\n@returns(200) Get Domain Details response.\n@errors {4XX: Get Domain Details response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/domain-history\n@desc Get Domain History\n@required {account_id: str}\n@optional {domain: str}\n@returns(200) Get Domain History response.\n@errors {4XX: Get Domain History response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/domain/bulk\n@desc Get Multiple Domain Details\n@required {account_id: str}\n@optional {domain: [str] # Accepts multiple values like `?domain=cloudflare.com&domain=example.com`.}\n@returns(200) Get Multiple Domain Details response.\n@errors {4XX: Get Multiple Domain Details response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/indicator-feeds\n@desc Get indicator feeds owned by this account\n@required {account_id: str}\n@returns(200) Get indicator feeds response\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint POST /accounts/{account_id}/intel/indicator-feeds\n@desc Create new indicator feed\n@required {account_id: str}\n@optional {description: str # The description of the example test, name: str # The name of the indicator feed}\n@returns(200) Create indicator feed response\n@errors {4XX: Get indicator feeds failure response}\n\n@endpoint PUT /accounts/{account_id}/intel/indicator-feeds/permissions/add\n@desc Grant permission to indicator feed\n@required {account_id: str}\n@optional {account_tag: str # The Cloudflare account tag of the account to change permissions on, feed_id: int # The ID of the feed to add/remove permissions on}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint PUT /accounts/{account_id}/intel/indicator-feeds/permissions/remove\n@desc Revoke permission to indicator feed\n@required {account_id: str}\n@optional {account_tag: str # The Cloudflare account tag of the account to change permissions on, feed_id: int # The ID of the feed to add/remove permissions on}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint GET /accounts/{account_id}/intel/indicator-feeds/permissions/view\n@desc List indicator feed permissions\n@required {account_id: str}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}\n@desc Get indicator feed metadata\n@required {account_id: str, feed_id: int}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint PUT /accounts/{account_id}/intel/indicator-feeds/{feed_id}\n@desc Update indicator feed metadata\n@required {account_id: str, feed_id: int}\n@optional {description: str # The new description of the feed, is_attributable: bool # The new is_attributable value of the feed, is_downloadable: bool # The new is_downloadable value of the feed, is_public: bool # The new is_public value of the feed, name: str # The new name of the feed}\n@returns(200) Get update public field response\n@errors {4XX: Get update public field response failure}\n\n@endpoint GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/data\n@desc Get indicator feed data\n@required {account_id: str, feed_id: int}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/download\n@desc Download indicator feed data\n@required {account_id: str, feed_id: int}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint PUT /accounts/{account_id}/intel/indicator-feeds/{feed_id}/snapshot\n@desc Update indicator feed data\n@required {account_id: str, feed_id: int}\n@returns(200) Get indicator feed metadata\n@errors {4XX: Get indicator feeds response failure}\n\n@endpoint GET /accounts/{account_id}/intel/ip\n@desc Get IP Overview\n@required {account_id: str}\n@optional {ipv4: str, ipv6: str}\n@returns(200) Get IP Overview response.\n@errors {4XX: Get IP Overview response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/ip-lists\n@desc Get Available IP Lists\n@required {account_id: str}\n@returns(200) Get Available IP Lists response.\n@errors {4XX: Get Available IP Lists response failure.}\n\n@endpoint POST /accounts/{account_id}/intel/miscategorization\n@desc Create Miscategorization\n@required {account_id: str}\n@optional {content_adds: [int] # Content category IDs to add., content_removes: [int] # Content category IDs to remove., indicator_type: str(domain/ipv4/ipv6/url), ip: str # Provide only if indicator_type is `ipv4` or `ipv6`., security_adds: [int] # Security category IDs to add., security_removes: [int] # Security category IDs to remove., url: str # Provide only if indicator_type is `domain` or `url`. Example if indicator_type is `domain`: `example.com`. Example if indicator_type is `url`: `https://example.com/news/`.}\n@returns(200) Create Miscategorization response.\n@errors {4XX: Create Miscategorization response failure.}\n\n@endpoint GET /accounts/{account_id}/intel/sinkholes\n@desc List sinkholes owned by this account\n@required {account_id: str}\n@returns(200) Successful Response\n\n@endpoint GET /accounts/{account_id}/intel/whois\n@desc Get WHOIS Record\n@required {account_id: str}\n@optional {domain: str}\n@returns(200) Get WHOIS Record response.\n@errors {4XX: Get WHOIS Record response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitor_groups\n@desc List Monitor Groups\n@required {account_id: str}\n@returns(200) List Monitor Groups response\n@errors {4XX: List Monitor Groups response failure}\n\n@endpoint POST /accounts/{account_id}/load_balancers/monitor_groups\n@desc Create Monitor Group\n@required {account_id: str, description: str # A short description of the monitor group, id: str # The ID of the Monitor Group to use for checking the health of origins within this pool., members: [map{created_at: str(date-time), enabled!: bool, monitor_id!: str, monitoring_only!: bool, must_be_healthy!: bool, updated_at: str(date-time)}] # List of monitors in this group}\n@optional {created_at: str(date-time) # The timestamp of when the monitor group was created, updated_at: str(date-time) # The timestamp of when the monitor group was last updated}\n@returns(200) Create Monitor Group response\n@errors {412: Precondition Failed - Referenced monitor does not exist, 4XX: Create Monitor Group response failure}\n\n@endpoint DELETE /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n@desc Delete Monitor Group\n@required {monitor_group_id: str, account_id: str}\n@returns(200) Delete Monitor Group response\n@errors {412: Precondition Failed - Monitor group is in use by one or more pools, 4XX: Delete Monitor Group response failure}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n@desc Monitor Group Details\n@required {monitor_group_id: str, account_id: str}\n@returns(200) Monitor Group Details response\n@errors {4XX: Monitor Group Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n@desc Patch Monitor Group\n@required {monitor_group_id: str, account_id: str, description: str # A short description of the monitor group, id: str # The ID of the Monitor Group to use for checking the health of origins within this pool., members: [map{created_at: str(date-time), enabled!: bool, monitor_id!: str, monitoring_only!: bool, must_be_healthy!: bool, updated_at: str(date-time)}] # List of monitors in this group}\n@optional {created_at: str(date-time) # The timestamp of when the monitor group was created, updated_at: str(date-time) # The timestamp of when the monitor group was last updated}\n@returns(200) Patch Monitor Group response\n@errors {412: Precondition Failed - Referenced monitor does not exist, 4XX: Patch Monitor Group response failure}\n\n@endpoint PUT /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}\n@desc Update Monitor Group\n@required {monitor_group_id: str, account_id: str, description: str # A short description of the monitor group, id: str # The ID of the Monitor Group to use for checking the health of origins within this pool., members: [map{created_at: str(date-time), enabled!: bool, monitor_id!: str, monitoring_only!: bool, must_be_healthy!: bool, updated_at: str(date-time)}] # List of monitors in this group}\n@optional {created_at: str(date-time) # The timestamp of when the monitor group was created, updated_at: str(date-time) # The timestamp of when the monitor group was last updated}\n@returns(200) Update Monitor Group response\n@errors {412: Precondition Failed - Referenced monitor does not exist, 4XX: Update Monitor Group response failure}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}/references\n@desc List Monitor Group References\n@required {monitor_group_id: str, account_id: str}\n@returns(200) List Monitor Group References response.\n@errors {4XX: List Monitor Group References response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitors\n@desc List Monitors\n@required {account_id: str}\n@returns(200) List Monitors response.\n@errors {4XX: List Monitors response failure.}\n\n@endpoint POST /accounts/{account_id}/load_balancers/monitors\n@desc Create Monitor\n@required {account_id: str}\n@returns(200) Create Monitor response.\n@errors {4XX: Create Monitor response failure.}\n\n@endpoint DELETE /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n@desc Delete Monitor\n@required {monitor_id: str, account_id: str}\n@returns(200) Delete Monitor response.\n@errors {4XX: Delete Monitor response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n@desc Monitor Details\n@required {monitor_id: str, account_id: str}\n@returns(200) Monitor Details response.\n@errors {4XX: Monitor Details response failure.}\n\n@endpoint PATCH /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n@desc Patch Monitor\n@required {monitor_id: str, account_id: str}\n@returns(200) Patch Monitor response.\n@errors {4XX: Patch Monitor response failure.}\n\n@endpoint PUT /accounts/{account_id}/load_balancers/monitors/{monitor_id}\n@desc Update Monitor\n@required {monitor_id: str, account_id: str}\n@returns(200) Update Monitor response.\n@errors {4XX: Update Monitor response failure.}\n\n@endpoint POST /accounts/{account_id}/load_balancers/monitors/{monitor_id}/preview\n@desc Preview Monitor\n@required {monitor_id: str, account_id: str}\n@returns(200) Preview Monitor response.\n@errors {4XX: Preview Monitor response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}/references\n@desc List Monitor References\n@required {monitor_id: str, account_id: str}\n@returns(200) List Monitor References response.\n@errors {4XX: List Monitor References response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/pools\n@desc List Pools\n@required {account_id: str}\n@optional {monitor: str}\n@returns(200) List Pools response.\n@errors {4XX: List Pools response failure.}\n\n@endpoint PATCH /accounts/{account_id}/load_balancers/pools\n@desc Patch Pools\n@required {account_id: str}\n@optional {notification_email: str # The email address to send health status notifications to. This field is now deprecated in favor of Cloudflare Notifications for Load Balancing, so only resetting this field with an empty string `\"\"` is accepted.}\n@returns(200) Patch Pools response.\n@errors {4XX: Patch Pools response failure.}\n\n@endpoint POST /accounts/{account_id}/load_balancers/pools\n@desc Create Pool\n@required {account_id: str, name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@optional {description: str= # A human-readable description of the pool., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.}\n@returns(200) Create Pool response.\n@errors {4XX: Create Pool response failure.}\n\n@endpoint DELETE /accounts/{account_id}/load_balancers/pools/{pool_id}\n@desc Delete Pool\n@required {pool_id: str, account_id: str}\n@returns(200) Delete Pool response.\n@errors {4XX: Delete Pool response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/pools/{pool_id}\n@desc Pool Details\n@required {pool_id: str, account_id: str}\n@returns(200) Pool Details response.\n@errors {4XX: Pool Details response failure.}\n\n@endpoint PATCH /accounts/{account_id}/load_balancers/pools/{pool_id}\n@desc Patch Pool\n@required {pool_id: str, account_id: str}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means every Cloudflare data center., description: str= # A human-readable description of the pool., disabled_at: str(date-time) # This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@returns(200) Patch Pool response.\n@errors {4XX: Patch Pool response failure.}\n\n@endpoint PUT /accounts/{account_id}/load_balancers/pools/{pool_id}\n@desc Update Pool\n@required {pool_id: str, account_id: str, name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means every Cloudflare data center., description: str= # A human-readable description of the pool., disabled_at: str(date-time) # This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.}\n@returns(200) Update Pool response.\n@errors {4XX: Update Pool response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/pools/{pool_id}/health\n@desc Pool Health Details\n@required {pool_id: str, account_id: str}\n@returns(200) Pool Health Details response.\n@errors {4XX: Pool Health Details response failure.}\n\n@endpoint POST /accounts/{account_id}/load_balancers/pools/{pool_id}/preview\n@desc Preview Pool\n@required {pool_id: str, account_id: str}\n@returns(200) Preview Pool response.\n@errors {4XX: Preview Pool response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/pools/{pool_id}/references\n@desc List Pool References\n@required {pool_id: str, account_id: str}\n@returns(200) List Pool References response.\n@errors {4XX: List Pool References response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/preview/{preview_id}\n@desc Preview Result\n@required {preview_id: str, account_id: str}\n@returns(200) Preview Result response.\n@errors {4XX: Preview Result response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/regions\n@desc List Regions\n@required {account_id: str}\n@optional {subdivision_code: str, subdivision_code_a2: str, country_code_a2: str}\n@returns(200) List Regions response.\n@errors {4XX: List Regions response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/regions/{region_id}\n@desc Get Region\n@required {region_id: str, account_id: str}\n@returns(200) Get Region response.\n@errors {4XX: Get Region response failure.}\n\n@endpoint GET /accounts/{account_id}/load_balancers/search\n@desc Search Resources\n@required {account_id: str}\n@optional {query: str=, references: str(/*/referral/referrer)=, page: num, per_page: num=25}\n@returns(200) Search Resources response.\n@errors {4XX: Search Resources response failure.}\n\n@endpoint GET /accounts/{account_id}/logpush/datasets/{dataset_id}/fields\n@desc List fields\n@required {dataset_id: str, account_id: str}\n@returns(200) List fields response.\n@errors {4XX: List fields response failure.}\n\n@endpoint GET /accounts/{account_id}/logpush/datasets/{dataset_id}/jobs\n@desc List Logpush jobs for a dataset\n@required {dataset_id: str, account_id: str}\n@returns(200) List Logpush jobs for a dataset response.\n@errors {4XX: List Logpush jobs for a dataset response failure.}\n\n@endpoint GET /accounts/{account_id}/logpush/jobs\n@desc List Logpush jobs\n@required {account_id: str}\n@returns(200) List Logpush jobs response.\n@errors {4XX: List Logpush jobs response failure.}\n\n@endpoint POST /accounts/{account_id}/logpush/jobs\n@desc Create Logpush job\n@required {account_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@optional {dataset: str(access_requests/audit_logs/audit_logs_v2/biso_user_actions/casb_findings/device_posture_results/dex_application_tests/dex_device_state_events/dlp_forensic_copies/dns_firewall_logs/dns_logs/email_security_alerts/firewall_events/gateway_dns/gateway_http/gateway_network/http_requests/ipsec_logs/magic_ids_detections/nel_reports/network_analytics_logs/page_shield_events/sinkhole_http_logs/spectrum_events/ssh_logs/warp_config_changes/warp_toggle_changes/workers_trace_events/zaraz_events/zero_trust_network_sessions)=http_requests # Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/)., enabled: bool=false # Flag that indicates if the job is enabled., filter: str # The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/)., frequency: str(high/low)=high # This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files., kind: str(/edge)= # The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset)., logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately., max_upload_bytes: int # The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or `0` to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size., max_upload_interval_seconds: int # The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or `0` to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this., max_upload_records: int # The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or `0` to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this., name: str # Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job., output_options: map{CVE-2021-44228: bool, batch_prefix: str, batch_suffix: str, field_delimiter: str, field_names: [str], merge_subrequests: bool, output_type: str, record_delimiter: str, record_prefix: str, record_suffix: str, record_template: str, sample_rate: num(float), timestamp_format: str} # The structured replacement for `logpull_options`. When including this field, the `logpull_option` field will be ignored., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Create Logpush job response.\n@errors {4XX: Create Logpush job response failure.}\n@example_request {\"dataset\":\"gateway_dns\",\"destination_conf\":\"s3://mybucket/logs?region=us-west-2\",\"enabled\":false,\"filter\":\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\"kind\":\"\",\"max_upload_bytes\":5000000,\"max_upload_interval_seconds\":30,\"max_upload_records\":1000,\"name\":\"example.com\",\"output_options\":{\"CVE-2021-44228\":false,\"batch_prefix\":\"\",\"batch_suffix\":\"\",\"field_delimiter\":\",\",\"field_names\":[\"Datetime\",\"DstIP\",\"SrcIP\"],\"output_type\":\"ndjson\",\"record_delimiter\":\"\",\"record_prefix\":\"{\",\"record_suffix\":\"}\\n\",\"sample_rate\":1,\"timestamp_format\":\"unixnano\"},\"ownership_challenge\":\"00000000000000000000\"}\n\n@endpoint DELETE /accounts/{account_id}/logpush/jobs/{job_id}\n@desc Delete Logpush job\n@required {job_id: int, account_id: str}\n@returns(200) Delete Logpush job response.\n@errors {4XX: Delete Logpush job response failure.}\n\n@endpoint GET /accounts/{account_id}/logpush/jobs/{job_id}\n@desc Get Logpush job details\n@required {job_id: int, account_id: str}\n@returns(200) Get Logpush job details response.\n@errors {4XX: Get Logpush job details response failure.}\n\n@endpoint PUT /accounts/{account_id}/logpush/jobs/{job_id}\n@desc Update Logpush job\n@required {job_id: int, account_id: str}\n@optional {destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included., enabled: bool=false # Flag that indicates if the job is enabled., filter: str # The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/)., frequency: str(high/low)=high # This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files., kind: str(/edge)= # The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset)., logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately., max_upload_bytes: int # The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or `0` to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size., max_upload_interval_seconds: int # The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or `0` to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this., max_upload_records: int # The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or `0` to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this., name: str # Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job., output_options: map{CVE-2021-44228: bool, batch_prefix: str, batch_suffix: str, field_delimiter: str, field_names: [str], merge_subrequests: bool, output_type: str, record_delimiter: str, record_prefix: str, record_suffix: str, record_template: str, sample_rate: num(float), timestamp_format: str} # The structured replacement for `logpull_options`. When including this field, the `logpull_option` field will be ignored., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Update Logpush job response.\n@errors {4XX: Update Logpush job response failure.}\n@example_request {\"destination_conf\":\"s3://mybucket/logs?region=us-west-2\",\"enabled\":false,\"filter\":\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\"kind\":\"\",\"max_upload_bytes\":5000000,\"max_upload_interval_seconds\":30,\"max_upload_records\":1000,\"output_options\":{\"CVE-2021-44228\":false,\"batch_prefix\":\"\",\"batch_suffix\":\"\",\"field_delimiter\":\",\",\"field_names\":[\"Datetime\",\"DstIP\",\"SrcIP\"],\"output_type\":\"ndjson\",\"record_delimiter\":\"\",\"record_prefix\":\"{\",\"record_suffix\":\"}\\n\",\"sample_rate\":1,\"timestamp_format\":\"unixnano\"},\"ownership_challenge\":\"00000000000000000000\"}\n\n@endpoint POST /accounts/{account_id}/logpush/ownership\n@desc Get ownership challenge\n@required {account_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Get ownership challenge response.\n@errors {4XX: Get ownership challenge response failure.}\n\n@endpoint POST /accounts/{account_id}/logpush/ownership/validate\n@desc Validate ownership challenge\n@required {account_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Validate ownership challenge response.\n@errors {4XX: Validate ownership challenge response failure.}\n\n@endpoint POST /accounts/{account_id}/logpush/validate/destination\n@desc Validate destination\n@required {account_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Validate destination response.\n@errors {4XX: Validate destination response failure.}\n\n@endpoint POST /accounts/{account_id}/logpush/validate/destination/exists\n@desc Check destination exists\n@required {account_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Check destination exists response.\n@errors {4XX: Check destination exists response failure.}\n\n@endpoint POST /accounts/{account_id}/logpush/validate/origin\n@desc Validate origin\n@required {account_id: str, logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.}\n@returns(200) Validate origin response.\n@errors {4XX: Validate origin response failure.}\n\n@endpoint GET /accounts/{account_id}/logs/audit\n@desc Get account audit logs (Version 2)\n@required {account_id: str, since: str(date) # Limits the returned results to logs newer than the specified date. This can be a date string 2019-04-30 (interpreted in UTC) or an absolute timestamp that conforms to RFC3339., before: str(date) # Limits the returned results to logs older than the specified date. This can be a date string 2019-04-30 (interpreted in UTC) or an absolute timestamp that conforms to RFC3339.}\n@optional {account_name: [str], action_result: [str], action_type: [str], actor_context: [str], actor_email: [str(email)], actor_id: [str], actor_ip_address: [str], actor_token_id: [str], actor_token_name: [str], actor_type: [str], audit_log_id: [str], id: [str], raw_cf_ray_id: [str], raw_method: [str], raw_status_code: [int], raw_uri: [str], resource_id: [str], resource_product: [str], resource_type: [str], resource_scope: [str], zone_id: [str], zone_name: [str], account_name.not: [str], action_result.not: [str], action_type.not: [str], actor_context.not: [str], actor_email.not: [str(email)], actor_id.not: [str], actor_ip_address.not: [str], actor_token_id.not: [str], actor_token_name.not: [str], actor_type.not: [str], audit_log_id.not: [str], id.not: [str], raw_cf_ray_id.not: [str], raw_method.not: [str], raw_status_code.not: [int], raw_uri.not: [str], resource_id.not: [str], resource_product.not: [str], resource_type.not: [str], resource_scope.not: [str], zone_id.not: [str], zone_name.not: [str], direction: str(desc/asc)=desc, limit: num=100, cursor: str}\n@returns(200) Get account audit logs successful response\n@errors {4XX: Get account audit logs failed response}\n\n@endpoint DELETE /accounts/{account_id}/logs/control/cmb/config\n@desc Delete CMB config\n@required {account_id: str}\n@returns(200) Delete CMB config response\n@errors {4XX: Delete CMB config response failure}\n\n@endpoint GET /accounts/{account_id}/logs/control/cmb/config\n@desc Get CMB config\n@required {account_id: str}\n@returns(200) Get CMB config response\n@errors {4XX: Get CMB config response failure}\n\n@endpoint POST /accounts/{account_id}/logs/control/cmb/config\n@desc Update CMB config\n@required {account_id: str}\n@optional {allow_out_of_region_access: bool # Allow out of region access, regions: str # Name of the region.}\n@returns(200) Update CMB config response\n@errors {4XX: Update CMB config response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules\n@desc Delete all DNS Protection rules.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all DNS Protection rules response.\n\n@endpoint GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules\n@desc List all DNS Protection rules.\n@required {account_id: str # The ID of the account.}\n@optional {page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all DNS Protection rules response.\n@errors {4XX: List all DNS Protection rules failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules\n@desc Create DNS Protection rule.\n@required {account_id: str # The ID of the account., burst_sensitivity: str # The burst sensitivity. Must be one of 'low', 'medium', 'high'., mode: str # The mode for DNS Protection. Must be one of 'enabled', 'disabled', 'monitoring'., name: str # The name of the DNS Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual name of the region or datacenter, e.g., 'wnam' or 'lax'., profile_sensitivity: str # The profile sensitivity. Recommended setting is 'low'. Must be one of 'low', 'medium', 'high', or 'very_high'., rate_sensitivity: str # The rate sensitivity. Must be one of 'low', 'medium', 'high'., scope: str # The scope for the DNS Protection rule. Must be one of 'global', 'region', or 'datacenter'.}\n@returns(200) Create DNS Protection rule response.\n@errors {4XX: Create DNS Protection rule failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id}\n@desc Delete DNS Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the DNS Protection rule to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete DNS Protection rule response.\n@errors {4XX: Delete DNS Protection rule failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id}\n@desc Get DNS Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the DNS Protection rule.}\n@returns(200) Get DNS Protection rule response.\n@errors {4XX: Get DNS Protection rule failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id}\n@desc Update DNS Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the DNS Protection rule to update.}\n@optional {burst_sensitivity: str # The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'., mode: str # The new mode for DNS Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'., profile_sensitivity: str # The new profile sensitivity. Optional. Recommended setting is 'low'. Must be one of 'low', 'medium', 'high', or 'very_high'., rate_sensitivity: str # The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.}\n@returns(200) Update DNS Protection rule response.\n@errors {4XX: Update DNS Protection rule failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist\n@desc Delete all allowlist prefixes.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all allowlist prefixes response.\n@errors {4XX: Delete all allowlist prefixes failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist\n@desc List all allowlist prefixes.\n@required {account_id: str # The ID of the account.}\n@optional {page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all allowlist prefixes response.\n@errors {4XX: List all allowlist prefixes failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist\n@desc Create allowlist prefix.\n@required {account_id: str # The ID of the account., comment: str # An comment describing the allowlist prefix., enabled: bool # Whether to enable the allowlist prefix into effect., prefix: str # The allowlist prefix to add in CIDR format.}\n@returns(200) Create allowlist prefix response.\n@errors {4XX: Create allowlist prefix failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n@desc Delete allowlist prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the allowlist prefix to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete allowlist prefix response.\n@errors {4XX: Delete allowlist prefix failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n@desc Get allowlist prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the allowlist prefix.}\n@returns(200) Get allowlist prefix response.\n@errors {4XX: Get allowlist prefix failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}\n@desc Update allowlist prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the allowlist prefix to update.}\n@optional {comment: str # A comment describing the allowlist prefix. Optional., enabled: bool # Whether to enable the allowlist prefix into effect. Optional.}\n@returns(200) Update allowlist prefix response.\n@errors {4XX: Update allowlist prefix failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes\n@desc Delete all prefixes.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all prefixes response.\n@errors {4XX: Delete all prefixes failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes\n@desc List all prefixes.\n@required {account_id: str # The ID of the account.}\n@optional {page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all prefixes response.\n@errors {4XX: List all allowlist prefixes failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes\n@desc Create prefix.\n@required {account_id: str # The ID of the account., comment: str # A comment describing the prefix., excluded: bool # Whether to exclude the prefix from protection., prefix: str # The prefix to add in CIDR format.}\n@returns(200) Create prefix response.\n@errors {4XX: Create prefix failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/bulk\n@desc Create multiple prefixes.\n@required {account_id: str # The ID of the account.}\n@returns(200) Create multiple prefixes response.\n@errors {4XX: Create multiple prefixes failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id}\n@desc Delete prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the prefix to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete prefix response.\n@errors {4XX: Delete prefix failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id}\n@desc Get prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the prefix.}\n@returns(200) Get prefix response.\n@errors {4XX: Get prefix failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id}\n@desc Update prefix.\n@required {account_id: str # The ID of the account., prefix_id: str # The UUID of the prefix to update.}\n@optional {comment: str # A new comment for the prefix. Optional., excluded: bool # Whether to exclude the prefix from protection. Optional.}\n@returns(200) Update prefix response.\n@errors {4XX: Update prefix failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters\n@desc Delete all SYN Protection filters.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all SYN Protection filters response.\n@errors {4XX: Delete all SYN Protection filters failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters\n@desc List all SYN Protection filters.\n@required {account_id: str # The ID of the account.}\n@optional {mode: str # The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'., page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all SYN Protection filters response.\n@errors {4XX: List all SYN Protection filters failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters\n@desc Create a SYN Protection filter.\n@required {account_id: str # The ID of the account., expression: str # The filter expression., mode: str # The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'.}\n@returns(200) Create SYN Protection filter response.\n@errors {4XX: Create SYN Protection filter failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n@desc Delete SYN Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete SYN Protection filter response.\n@errors {4XX: Delete SYN Protection filter failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n@desc Get SYN Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to retrieve.}\n@returns(200) Get SYN Protection filter response.\n@errors {4XX: Get SYN Protection filter failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}\n@desc Update SYN Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to update.}\n@optional {expression: str # The new filter expression. Optional., mode: str # The new mode for the filter. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.}\n@returns(200) Update SYN Protection filter response.\n@errors {4XX: Update SYN Protection filter failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules\n@desc Delete all SYN Protection rules.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all SYN Protection rules response.\n@errors {4XX: Delete all SYN Protection rules failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules\n@desc List all SYN Protection rules.\n@required {account_id: str # The ID of the account.}\n@optional {page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all SYN Protection rules response.\n@errors {4XX: List all SYN Protection rules failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules\n@desc Create SYN Protection rule.\n@required {account_id: str # The ID of the account., burst_sensitivity: str # The burst sensitivity. Must be one of 'low', 'medium', 'high'., mode: str # The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'., name: str # The name of the SYN Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual name of the region or datacenter, e.g., 'wnam' or 'lax'., rate_sensitivity: str # The rate sensitivity. Must be one of 'low', 'medium', 'high'., scope: str # The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'.}\n@optional {mitigation_type: str # The type of mitigation. Must be one of 'challenge' or 'retransmit'. Optional. Defaults to 'challenge'.}\n@returns(200) Create SYN Protection rule response.\n@errors {4XX: Create SYN Protection rule failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id}\n@desc Delete SYN Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the SYN Protection rule to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete SYN Protection rule response.\n@errors {4XX: Delete SYN Protection rule failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id}\n@desc Get SYN Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the SYN Protection rule.}\n@returns(200) Get SYN Protection rule response.\n@errors {4XX: Get SYN Protection rule failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id}\n@desc Update SYN Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the SYN Protection rule to update.}\n@optional {burst_sensitivity: str # The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'., mitigation_type: str # The new mitigation type. Optional. Must be one of 'challenge' or 'retransmit'., mode: str # The new mode for SYN Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'., rate_sensitivity: str # The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.}\n@returns(200) Update SYN Protection rule response.\n@errors {4XX: Update SYN Protection rule failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters\n@desc Delete all TCP Flow Protection filters.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all TCP Flow Protection filters response.\n@errors {4XX: Delete all TCP Flow Protection filters failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters\n@desc List all TCP Flow Protection filters.\n@required {account_id: str # The ID of the account.}\n@optional {mode: str # The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'., page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all TCP Flow Protection filters response.\n@errors {4XX: List all TCP Flow Protection filters failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters\n@desc Create a TCP Flow Protection filter.\n@required {account_id: str # The ID of the account., expression: str # The filter expression., mode: str # The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'.}\n@returns(200) Create TCP Flow Protection filter response.\n@errors {4XX: Create TCP Flow Protection filter failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id}\n@desc Delete TCP Flow Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete TCP Flow Protection filter response.\n@errors {4XX: Delete TCP Flow Protection filter failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id}\n@desc Get TCP Flow Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to retrieve.}\n@returns(200) Get TCP Flow Protection filter response.\n@errors {4XX: Get TCP Flow Protection filter failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id}\n@desc Update TCP Flow Protection filter.\n@required {account_id: str # The ID of the account., filter_id: str # The UUID of the filter to update.}\n@optional {expression: str # The new filter expression. Optional., mode: str # The new mode for the filter. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.}\n@returns(200) Update TCP Flow Protection filter response.\n@errors {4XX: Update TCP Flow Protection filter failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules\n@desc Delete all TCP Flow Protection rules.\n@required {account_id: str # The ID of the account.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete all TCP Flow Protection rules response.\n@errors {4XX: Delete all TCP Flow Protection rules failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules\n@desc List all TCP Flow Protection rules.\n@required {account_id: str # The ID of the account.}\n@optional {page: int(int64) # The page number for pagination. Defaults to 1., per_page: int(int64) # The number of items per page. Must be between 10 and 1000. Defaults to 25., order: str # The field to order by. Defaults to 'prefix'., direction: str # The direction of ordering (ASC or DESC). Defaults to 'ASC'.}\n@returns(200) List all TCP Flow Protection rules response.\n@errors {4XX: List all TCP Flow Protection rules failure.}\n\n@endpoint POST /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules\n@desc Create TCP Flow Protection rule.\n@required {account_id: str # The ID of the account., burst_sensitivity: str # The burst sensitivity. Must be one of 'low', 'medium', 'high'., mode: str # The mode for the TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'., name: str # The name of the TCP Flow Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual name of the region or datacenter, e.g., 'wnam' or 'lax'., rate_sensitivity: str # The rate sensitivity. Must be one of 'low', 'medium', 'high'., scope: str # The scope for the TCP Flow Protection rule.}\n@returns(200) Create TCP Flow Protection rule response.\n@errors {4XX: Create TCP Flow Protection rule failure.}\n\n@endpoint DELETE /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id}\n@desc Delete TCP Flow Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the TCP Flow Protection rule to delete.}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete TCP Flow Protection rule response.\n@errors {4XX: Delete TCP Flow Protection rule failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id}\n@desc Get TCP Flow Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the TCP Flow Protection rule.}\n@returns(200) Get TCP Flow Protection rule response.\n@errors {4XX: Get TCP Flow Protection rule failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id}\n@desc Update TCP Flow Protection rule.\n@required {account_id: str # The ID of the account., rule_id: str # The UUID of the TCP Flow Protection rule to update.}\n@optional {burst_sensitivity: str # The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'., mode: str # The new mode for TCP Flow Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'., rate_sensitivity: str # The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.}\n@returns(200) Update TCP Flow Protection rule response.\n@errors {4XX: Update TCP Flow Protection rule failure.}\n\n@endpoint GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status\n@desc Get protection status.\n@required {account_id: str # The account ID.}\n@returns(200) Get protection status response.\n@errors {4XX: Get protection status failure.}\n\n@endpoint PATCH /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status\n@desc Update protection status.\n@required {account_id: str # The account ID., enabled: bool # Enables or disables protection.}\n@returns(200) Update protection status response.\n@errors {4XX: Update protection status failure.}\n\n@endpoint GET /accounts/{account_id}/magic/apps\n@desc List Apps\n@required {account_id: str}\n@returns(200) List Apps response\n@errors {4XX: List Apps response failure}\n\n@endpoint POST /accounts/{account_id}/magic/apps\n@desc Create a new App\n@required {account_id: str, name: str # Display name for the app., type: str # Category of the app.}\n@optional {hostnames: [str] # FQDNs to associate with traffic decisions., ip_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported), source_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported)}\n@returns(201) Create Account App response\n@errors {4XX: Create Account App response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/apps/{account_app_id}\n@desc Delete Account App\n@required {account_id: str, account_app_id: str}\n@returns(200) Delete App response\n@errors {4XX: Delete App response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/apps/{account_app_id}\n@desc Update an App\n@required {account_id: str, account_app_id: str}\n@optional {hostnames: [str] # FQDNs to associate with traffic decisions., ip_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported), name: str # Display name for the app., source_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported), type: str # Category of the app.}\n@returns(200) Update App response\n@errors {4XX: Update App response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/apps/{account_app_id}\n@desc Update an App\n@required {account_id: str, account_app_id: str}\n@optional {hostnames: [str] # FQDNs to associate with traffic decisions., ip_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported), name: str # Display name for the app., source_subnets: [any] # IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported), type: str # Category of the app.}\n@returns(200) Update App response\n@errors {4XX: Update App response failure}\n\n@endpoint GET /accounts/{account_id}/magic/cf_interconnects\n@desc List interconnects\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List interconnects response\n@errors {4XX: List interconnects response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/cf_interconnects\n@desc Update multiple interconnects\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.}\n@returns(200) Update multiple interconnects response\n@errors {4XX: Update multiple interconnects response failure}\n\n@endpoint GET /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}\n@desc List interconnect Details\n@required {cf_interconnect_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List interconnect Details response\n@errors {4XX: List interconnect Details response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}\n@desc Update interconnect\n@required {cf_interconnect_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false., automatic_return_routing: bool=false # True if automatic stateful return routing should be enabled for a tunnel, false otherwise., description: str # An optional description of the interconnect., gre: map{cloudflare_endpoint: str} # The configuration specific to GRE interconnects., health_check: map{enabled: bool, rate: str, target: any, type: str}, interface_address: str # A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255., interface_address6: str # A 127 bit IPV6 prefix from within the virtual_subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual_subnet6. Eg if virtual_subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface_address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127, mtu: int=1476 # The Maximum Transmission Unit (MTU) in bytes for the interconnect. The minimum value is 576., name: str # The name of the interconnect. The name cannot share a name with other tunnels.}\n@returns(200) Update interconnect response\n@errors {4XX: Update interconnect response failure}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/catalog-syncs\n@desc List Catalog Syncs\n@required {account_id: str}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/catalog-syncs\n@desc Create Catalog Sync\n@required {account_id: str, destination_type: str(NONE/ZERO_TRUST_LIST), name: str, update_mode: str(AUTO/MANUAL)}\n@optional {forwarded: str, description: str, policy: str}\n@returns(201) Created.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/catalog-syncs/prebuilt-policies\n@desc List Prebuilt Policies\n@required {account_id: str}\n@optional {destination_type: str # Specify type of destination, omit to return all.}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 500: Internal Server Error.}\n\n@endpoint DELETE /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n@desc Delete Catalog Sync\n@required {account_id: str, sync_id: str(uuid)}\n@optional {delete_destination: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n@desc Read Catalog Sync\n@required {account_id: str, sync_id: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint PATCH /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n@desc Patch Catalog Sync\n@required {account_id: str, sync_id: str(uuid)}\n@optional {description: str, name: str, policy: str, update_mode: str(AUTO/MANUAL)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint PUT /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}\n@desc Update Catalog Sync\n@required {account_id: str, sync_id: str(uuid)}\n@optional {description: str, name: str, policy: str, update_mode: str(AUTO/MANUAL)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}/refresh\n@desc Run Catalog Sync\n@required {account_id: str, sync_id: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/onramps\n@desc List On-ramps\n@required {account_id: str}\n@optional {order_by: str # One of [\"updated_at\", \"id\", \"cloud_type\", \"name\"]., desc: bool, status: bool, vpcs: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/onramps\n@desc Create On-ramp\n@required {account_id: str, cloud_type: str(AWS/AZURE/GOOGLE), dynamic_routing: bool # Enables BGP routing. When enabling this feature, set both install_routes_in_cloud and install_routes_in_magic_wan to false., install_routes_in_cloud: bool, install_routes_in_magic_wan: bool, name: str, type: str(OnrampTypeSingle/OnrampTypeHub)}\n@optional {forwarded: str, adopted_hub_id: str(uuid), attached_hubs: [str(uuid)], attached_vpcs: [str(uuid)], cloud_asn: int(uint32) # Sets the cloud-side ASN. If unset or zero, the cloud's default ASN takes effect., description: str, hub_provider_id: str(uuid), manage_hub_to_hub_attachments: bool, manage_vpc_to_hub_attachments: bool, region: str, vpc: str(uuid)}\n@returns(201) Created.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space\n@desc Read Magic WAN Address Space\n@required {account_id: str}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint PATCH /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space\n@desc Patch Magic WAN Address Space\n@required {account_id: str, prefixes: [str]}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint PUT /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space\n@desc Update Magic WAN Address Space\n@required {account_id: str, prefixes: [str]}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint DELETE /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n@desc Delete On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@optional {destroy: bool, force: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n@desc Read On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@optional {status: bool, vpcs: bool, post_apply_resources: bool, planned_resources: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint PATCH /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n@desc Patch On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@optional {attached_hubs: [str(uuid)], attached_vpcs: [str(uuid)], description: str, install_routes_in_cloud: bool, install_routes_in_magic_wan: bool, manage_hub_to_hub_attachments: bool, manage_vpc_to_hub_attachments: bool, name: str, vpc: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint PUT /accounts/{account_id}/magic/cloud/onramps/{onramp_id}\n@desc Update On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@optional {attached_hubs: [str(uuid)], attached_vpcs: [str(uuid)], description: str, install_routes_in_cloud: bool, install_routes_in_magic_wan: bool, manage_hub_to_hub_attachments: bool, manage_vpc_to_hub_attachments: bool, name: str, vpc: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/apply\n@desc Apply On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@returns(202) Accepted.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/export\n@desc Export as Terraform\n@required {account_id: str, onramp_id: str(uuid)}\n@returns(201) Exported file.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/onramps/{onramp_id}/plan\n@desc Plan On-ramp\n@required {account_id: str, onramp_id: str(uuid)}\n@returns(202) Accepted.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/providers\n@desc List Cloud Integrations\n@required {account_id: str}\n@optional {status: bool, order_by: str # One of [\"updated_at\", \"id\", \"cloud_type\", \"name\"]., desc: bool, cloudflare: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/providers\n@desc Create Cloud Integration\n@required {account_id: str, cloud_type: str(AWS/AZURE/GOOGLE/CLOUDFLARE), friendly_name: str}\n@optional {forwarded: str, description: str}\n@returns(201) Created.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/providers/discover\n@desc Run Discovery for All Integrations\n@required {account_id: str}\n@returns(202) Accepted.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint DELETE /accounts/{account_id}/magic/cloud/providers/{provider_id}\n@desc Delete Cloud Integration\n@required {account_id: str, provider_id: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/providers/{provider_id}\n@desc Read Cloud Integration\n@required {account_id: str, provider_id: str(uuid)}\n@optional {status: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint PATCH /accounts/{account_id}/magic/cloud/providers/{provider_id}\n@desc Patch Cloud Integration\n@required {account_id: str, provider_id: str(uuid)}\n@optional {aws_arn: str, azure_subscription_id: str, azure_tenant_id: str, description: str, friendly_name: str, gcp_project_id: str, gcp_service_account_email: str}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint PUT /accounts/{account_id}/magic/cloud/providers/{provider_id}\n@desc Update Cloud Integration\n@required {account_id: str, provider_id: str(uuid)}\n@optional {aws_arn: str, azure_subscription_id: str, azure_tenant_id: str, description: str, friendly_name: str, gcp_project_id: str, gcp_service_account_email: str}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/providers/{provider_id}/discover\n@desc Run Discovery\n@required {account_id: str, provider_id: str(uuid)}\n@optional {v2: bool}\n@returns(202) Accepted.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 409: Conflict., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup\n@desc Get Cloud Integration Setup Config\n@required {account_id: str, provider_id: str(uuid)}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/resources\n@desc List Resources\n@required {account_id: str}\n@optional {provider_id: str, resource_type: [str], resource_id: [str(uuid)], region: str, resource_group: str, managed: bool, search: [str], order_by: str # One of [\"id\", \"resource_type\", \"region\"]., desc: bool, per_page: int, page: int, cloudflare: bool, v2: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/resources/export\n@desc Export Resources\n@required {account_id: str}\n@optional {provider_id: str, resource_type: [str], resource_id: [str(uuid)], region: str, resource_group: str, search: [str], order_by: str # One of [\"id\", \"resource_type\", \"region\"]., desc: bool, v2: bool}\n@returns(200) Exported file.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint POST /accounts/{account_id}/magic/cloud/resources/policy-preview\n@desc Preview Rego Query\n@required {account_id: str, policy: str}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 422: Unprocessable Entity., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/cloud/resources/{resource_id}\n@desc Read Resource\n@required {account_id: str, resource_id: str(uuid)}\n@optional {v2: bool}\n@returns(200) OK.\n@errors {400: Bad Request., 401: Invalid Credentials., 403: Forbidden., 404: Not Found., 500: Internal Server Error.}\n\n@endpoint GET /accounts/{account_id}/magic/connectors\n@desc List Connectors\n@required {account_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 500: Internal Server Error}\n\n@endpoint POST /accounts/{account_id}/magic/connectors\n@desc Add a connector to your account\n@required {account_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint DELETE /accounts/{account_id}/magic/connectors/{connector_id}\n@desc Remove a connector from your account\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}\n@desc Fetch Connector\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 500: Internal Server Error}\n\n@endpoint PATCH /accounts/{account_id}/magic/connectors/{connector_id}\n@desc Edit Connector to update specific properties or Re-provision License Key\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 500: Internal Server Error}\n\n@endpoint PUT /accounts/{account_id}/magic/connectors/{connector_id}\n@desc Replace Connector or Re-provision License Key\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events\n@desc List Events\n@required {account_id: str, connector_id: str, from: num, to: num}\n@optional {limit: num, cursor: str, k: str # Filter by event kind}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/latest\n@desc Get latest Events\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/{event_t}.{event_n}\n@desc Get Event\n@required {account_id: str, connector_id: str, event_t: num, event_n: num}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots\n@desc List Snapshots\n@required {account_id: str, connector_id: str, from: num, to: num}\n@optional {limit: num, cursor: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/latest\n@desc Get latest Snapshots\n@required {account_id: str, connector_id: str}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/{snapshot_t}\n@desc Get Snapshot\n@required {account_id: str, connector_id: str, snapshot_t: num}\n@returns(200) OK\n@errors {400: Bad Request, 401: Unauthorized, 403: Forbidden, 404: Not Found, 429: Too Many Requests, 500: Internal Server Error}\n\n@endpoint GET /accounts/{account_id}/magic/gre_tunnels\n@desc List GRE tunnels\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List GRE tunnels response\n@errors {4XX: List GRE tunnels response failure}\n\n@endpoint POST /accounts/{account_id}/magic/gre_tunnels\n@desc Create a GRE tunnel\n@required {account_id: str, cloudflare_gre_endpoint: str # The IP address assigned to the Cloudflare side of the GRE tunnel., customer_gre_endpoint: str # The IP address assigned to the customer side of the GRE tunnel., interface_address: str # A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255., name: str # The name of the tunnel. The name cannot contain spaces or special characters, must be 15 characters or less, and cannot share a name with another GRE tunnel.}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false., automatic_return_routing: bool=false # True if automatic stateful return routing should be enabled for a tunnel, false otherwise., bgp: map{customer_asn!: int(int32), extra_prefixes: [str(cidr)], md5_key: str}, description: str # An optional description of the GRE tunnel., health_check: any, interface_address6: str # A 127 bit IPV6 prefix from within the virtual_subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual_subnet6. Eg if virtual_subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface_address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127, mtu: int=1476 # Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576., ttl: int=64 # Time To Live (TTL) in number of hops of the GRE tunnel.}\n@returns(200) Create GRE tunnels response\n@errors {4XX: Create GRE tunnels response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/gre_tunnels\n@desc Update multiple GRE tunnels\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.}\n@returns(200) Update multiple GRE tunnels response\n@errors {4XX: Update multiple GRE tunnels response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n@desc Delete GRE Tunnel\n@required {gre_tunnel_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) Delete GRE Tunnel response\n@errors {4XX: Delete GRE Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n@desc List GRE Tunnel Details\n@required {gre_tunnel_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List GRE Tunnel Details response\n@errors {4XX: List GRE Tunnel Details response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}\n@desc Update GRE Tunnel\n@required {gre_tunnel_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.}\n@returns(200) Update GRE Tunnel response\n@errors {4XX: Update GRE Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/magic/ipsec_tunnels\n@desc List IPsec tunnels\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List IPsec tunnels response\n@errors {4XX: List IPsec tunnels response failure}\n\n@endpoint POST /accounts/{account_id}/magic/ipsec_tunnels\n@desc Create an IPsec tunnel\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.}\n@returns(200) Create IPsec tunnels response\n@errors {4XX: Create IPsec tunnels response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/ipsec_tunnels\n@desc Update multiple IPsec tunnels\n@required {account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.}\n@returns(200) Update multiple IPsec tunnels response\n@errors {4XX: Update multiple IPsec tunnels response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n@desc Delete IPsec Tunnel\n@required {ipsec_tunnel_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) Delete IPsec Tunnel response\n@errors {4XX: Delete IPsec Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n@desc List IPsec tunnel details\n@required {ipsec_tunnel_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) List IPsec tunnel details response\n@errors {4XX: List IPsec tunnel details response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}\n@desc Update IPsec Tunnel\n@required {ipsec_tunnel_id: str, account_id: str, cloudflare_endpoint: str # The IP address assigned to the Cloudflare side of the IPsec tunnel., interface_address: str # A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255., name: str # The name of the IPsec tunnel. The name cannot share a name with other tunnels.}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false., automatic_return_routing: bool=false # True if automatic stateful return routing should be enabled for a tunnel, false otherwise., bgp: map{customer_asn!: int(int32), extra_prefixes: [str(cidr)], md5_key: str}, custom_remote_identities: map{fqdn_id: str}, customer_endpoint: str # The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work., description: str # An optional description forthe IPsec tunnel., health_check: any, interface_address6: str # A 127 bit IPV6 prefix from within the virtual_subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual_subnet6. Eg if virtual_subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface_address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127, psk: str # A randomly generated or provided string for use in the IPsec tunnel., replay_protection: bool=false # If `true`, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.}\n@returns(200) Update IPsec Tunnel response\n@errors {4XX: Update IPsec Tunnel response failure}\n\n@endpoint POST /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}/psk_generate\n@desc Generate Pre Shared Key (PSK) for IPsec tunnels\n@required {ipsec_tunnel_id: str, account_id: str}\n@returns(200) Generate Pre Shared Key (PSK) for IPsec tunnels response\n@errors {4XX: Generate Pre Shared Key (PSK) for IPsec tunnels response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/routes\n@desc Delete Many Routes\n@required {account_id: str, routes: [any]}\n@returns(200) Delete Many Routes response\n@errors {4XX: Delete Many Routes response failure}\n\n@endpoint GET /accounts/{account_id}/magic/routes\n@desc List Routes\n@required {account_id: str}\n@returns(200) List Routes response\n@errors {4XX: List Routes response failure}\n\n@endpoint POST /accounts/{account_id}/magic/routes\n@desc Create a Route\n@required {account_id: str, nexthop: str # The next-hop IP Address for the static route., prefix: str # IP Prefix in Classless Inter-Domain Routing format., priority: int # Priority of the static route.}\n@optional {description: str # An optional human provided description of the static route., scope: map{colo_names: [str], colo_regions: [str]} # Used only for ECMP routes., weight: int # Optional weight of the ECMP scope - if provided.}\n@returns(200) Create Routes response\n@errors {4XX: Create Routes response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/routes\n@desc Update Many Routes\n@required {account_id: str, routes: [any]}\n@returns(200) Update Many Routes response\n@errors {4XX: Update Many Routes response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/routes/{route_id}\n@desc Delete Route\n@required {route_id: str, account_id: str}\n@returns(200) Delete Route response\n@errors {4XX: Delete Route response failure}\n\n@endpoint GET /accounts/{account_id}/magic/routes/{route_id}\n@desc Route Details\n@required {route_id: str, account_id: str}\n@returns(200) Route Details response\n@errors {4XX: Route Details response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/routes/{route_id}\n@desc Update Route\n@required {route_id: str, account_id: str}\n@returns(200) Update Route response\n@errors {4XX: Update Route response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites\n@desc List Sites\n@required {account_id: str}\n@optional {connectorid: str}\n@returns(200) List Sites response\n@errors {4XX: List Sites response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites\n@desc Create a new Site\n@required {account_id: str, name: str # The name of the site.}\n@optional {connector_id: str # Magic Connector identifier tag., description: str, ha_mode: bool # Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode., location: map{lat: str, lon: str} # Location of site in latitude and longitude., secondary_connector_id: str # Magic Connector identifier tag. Used when high availability mode is on.}\n@returns(200) Create Site response\n@errors {4XX: Create Site response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}\n@desc Delete Site\n@required {site_id: str, account_id: str}\n@returns(200) Delete Site response\n@errors {4XX: Delete Site response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}\n@desc Site Details\n@required {site_id: str, account_id: str}\n@optional {x-magic-new-hc-target: bool # If true, the health check target in the response body will be presented using the new object format. Defaults to false.}\n@returns(200) Site Details response\n@errors {4XX: Site Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}\n@desc Patch Site\n@required {site_id: str, account_id: str}\n@optional {connector_id: str # Magic Connector identifier tag., description: str, location: map{lat: str, lon: str} # Location of site in latitude and longitude., name: str # The name of the site., secondary_connector_id: str # Magic Connector identifier tag. Used when high availability mode is on.}\n@returns(200) Patch Site response\n@errors {4XX: Patch Site response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}\n@desc Update Site\n@required {site_id: str, account_id: str}\n@optional {connector_id: str # Magic Connector identifier tag., description: str, location: map{lat: str, lon: str} # Location of site in latitude and longitude., name: str # The name of the site., secondary_connector_id: str # Magic Connector identifier tag. Used when high availability mode is on.}\n@returns(200) Update Site response\n@errors {4XX: Update Site response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/acls\n@desc List Site ACLs\n@required {account_id: str, site_id: str}\n@returns(200) List Site ACLs response\n@errors {4XX: List Site ACLs response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites/{site_id}/acls\n@desc Create a new Site ACL\n@required {account_id: str, site_id: str, lan_1: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, lan_2: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, name: str # The name of the ACL.}\n@optional {description: str # Description for the ACL., forward_locally: bool # The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false., protocols: [str], unidirectional: bool # The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.}\n@returns(200) Create Site ACL response\n@errors {4XX: Create Site ACL response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n@desc Delete Site ACL\n@required {site_id: str, account_id: str, acl_id: str}\n@returns(200) Delete Site ACL response\n@errors {4XX: Delete Site ACL response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n@desc Site ACL Details\n@required {site_id: str, account_id: str, acl_id: str}\n@returns(200) Site ACL Details response\n@errors {4XX: Site ACL Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n@desc Patch Site ACL\n@required {site_id: str, account_id: str, acl_id: str}\n@optional {description: str # Description for the ACL., forward_locally: bool # The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false., lan_1: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, lan_2: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, name: str # The name of the ACL., protocols: [str], unidirectional: bool # The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.}\n@returns(200) Patch Site ACL response\n@errors {4XX: Patch Site ACL response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}\n@desc Update Site ACL\n@required {site_id: str, account_id: str, acl_id: str}\n@optional {description: str # Description for the ACL., forward_locally: bool # The desired forwarding action for this ACL policy. If set to \"false\", the policy will forward traffic to Cloudflare. If set to \"true\", the policy will forward traffic locally on the Magic Connector. If not included in request, will default to false., lan_1: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, lan_2: map{lan_id!: str, lan_name: str, port_ranges: [str], ports: [int], subnets: [any]}, name: str # The name of the ACL., protocols: [str], unidirectional: bool # The desired traffic direction for this ACL policy. If set to \"false\", the policy will allow bidirectional traffic. If set to \"true\", the policy will only allow traffic in one direction. If not included in request, will default to false.}\n@returns(200) Update Site ACL response\n@errors {4XX: Update Site ACL response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/app_configs\n@desc List App Configs\n@required {account_id: str, site_id: str}\n@returns(200) List App Configs response\n@errors {4XX: List App Configs response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites/{site_id}/app_configs\n@desc Create a new App Config\n@required {account_id: str, site_id: str}\n@returns(201) Create Site App Config response\n@errors {4XX: Create Site App Config response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n@desc Delete App Config\n@required {account_id: str, site_id: str, app_config_id: str}\n@returns(200) Delete App Config response\n@errors {4XX: Delete App Config response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n@desc Update an App Config\n@required {account_id: str, site_id: str, app_config_id: str}\n@optional {account_app_id: str # Magic account app ID., breakout: bool # Whether to breakout traffic to the app's endpoints directly. Null preserves default behavior., managed_app_id: str # Managed app ID., preferred_wans: [str] # WAN interfaces to prefer over default WANs, highest-priority first. Can only be specified for breakout rules (breakout must be true)., priority: int # Priority of traffic. 0 is default, anything greater is prioritized. (Currently only 0 and 1 are supported)}\n@returns(200) Update Site App Config response\n@errors {4XX: Update Site App Config response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}/app_configs/{app_config_id}\n@desc Update an App Config\n@required {account_id: str, site_id: str, app_config_id: str}\n@optional {account_app_id: str # Magic account app ID., breakout: bool # Whether to breakout traffic to the app's endpoints directly. Null preserves default behavior., managed_app_id: str # Managed app ID., preferred_wans: [str] # WAN interfaces to prefer over default WANs, highest-priority first. Can only be specified for breakout rules (breakout must be true)., priority: int # Priority of traffic. 0 is default, anything greater is prioritized. (Currently only 0 and 1 are supported)}\n@returns(200) Update Site App Config response\n@errors {4XX: Update Site App Config response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/lans\n@desc List Site LANs\n@required {account_id: str, site_id: str}\n@returns(200) List Site LANs response\n@errors {4XX: List Site LANs response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites/{site_id}/lans\n@desc Create a new Site LAN\n@required {account_id: str, site_id: str}\n@optional {bond_id: int, ha_link: bool # mark true to use this LAN for HA probing. only works for site with HA turned on. only one LAN can be set as the ha_link., is_breakout: bool # mark true to use this LAN for source-based breakout traffic, is_prioritized: bool # mark true to use this LAN for source-based prioritized traffic, name: str, nat: map{static_prefix: str}, physport: int, routed_subnets: [map{nat: map, next_hop!: str, prefix!: str}], static_addressing: map{address!: str, dhcp_relay: map, dhcp_server: map, secondary_address: str, virtual_address: str} # If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static_address is required along with secondary and virtual address., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Create Site LAN response\n@errors {4XX: Create Site LAN response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n@desc Delete Site LAN\n@required {site_id: str, account_id: str, lan_id: str}\n@returns(200) Delete Site LAN response\n@errors {4XX: Delete Site LAN response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n@desc Site LAN Details\n@required {site_id: str, account_id: str, lan_id: str}\n@returns(200) Site LAN Details response\n@errors {4XX: Site LAN Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n@desc Patch Site LAN\n@required {site_id: str, account_id: str, lan_id: str}\n@optional {bond_id: int, is_breakout: bool # mark true to use this LAN for source-based breakout traffic, is_prioritized: bool # mark true to use this LAN for source-based prioritized traffic, name: str, nat: map{static_prefix: str}, physport: int, routed_subnets: [map{nat: map, next_hop!: str, prefix!: str}], static_addressing: map{address!: str, dhcp_relay: map, dhcp_server: map, secondary_address: str, virtual_address: str} # If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static_address is required along with secondary and virtual address., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Patch Site LAN response\n@errors {4XX: Patch Site LAN response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}\n@desc Update Site LAN\n@required {site_id: str, account_id: str, lan_id: str}\n@optional {bond_id: int, is_breakout: bool # mark true to use this LAN for source-based breakout traffic, is_prioritized: bool # mark true to use this LAN for source-based prioritized traffic, name: str, nat: map{static_prefix: str}, physport: int, routed_subnets: [map{nat: map, next_hop!: str, prefix!: str}], static_addressing: map{address!: str, dhcp_relay: map, dhcp_server: map, secondary_address: str, virtual_address: str} # If the site is not configured in high availability mode, this configuration is optional (if omitted, use DHCP). However, if in high availability mode, static_address is required along with secondary and virtual address., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Update Site LAN response\n@errors {4XX: Update Site LAN response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n@desc Delete NetFlow Configuration\n@required {account_id: str, site_id: str}\n@returns(200) Delete NetFlow Configuration response\n@errors {4XX: Delete NetFlow Configuration response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n@desc NetFlow Configuration Details\n@required {account_id: str, site_id: str}\n@returns(200) Get NetFlow Configuration response\n@errors {4XX: Get NetFlow Configuration response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n@desc Update NetFlow Configuration\n@required {account_id: str, site_id: str}\n@optional {active_timeout: int # Timeout in seconds for active flows., collector_ip: str # IPv4 address of the NetFlow collector., collector_port: int # UDP port of the NetFlow collector., inactive_timeout: int # Timeout in seconds for inactive flows., sampling_rate: int # Sampling rate for NetFlow records (1 = every packet).}\n@returns(200) Update NetFlow Configuration response\n@errors {4XX: Update NetFlow Configuration response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n@desc Create NetFlow Configuration\n@required {account_id: str, site_id: str}\n@optional {active_timeout: int # Timeout in seconds for active flows., collector_ip: str # IPv4 address of the NetFlow collector., collector_port: int # UDP port of the NetFlow collector., inactive_timeout: int # Timeout in seconds for inactive flows., sampling_rate: int # Sampling rate for NetFlow records (1 = every packet).}\n@returns(201) Create NetFlow Configuration response\n@errors {4XX: Create NetFlow Configuration response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}/netflow_config\n@desc Update NetFlow Configuration\n@required {account_id: str, site_id: str}\n@optional {active_timeout: int # Timeout in seconds for active flows., collector_ip: str # IPv4 address of the NetFlow collector., collector_port: int # UDP port of the NetFlow collector., inactive_timeout: int # Timeout in seconds for inactive flows., sampling_rate: int # Sampling rate for NetFlow records (1 = every packet).}\n@returns(200) Update NetFlow Configuration response\n@errors {4XX: Update NetFlow Configuration response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/wans\n@desc List Site WANs\n@required {account_id: str, site_id: str}\n@returns(200) List Site WANs response\n@errors {4XX: List Site WANs response failure}\n\n@endpoint POST /accounts/{account_id}/magic/sites/{site_id}/wans\n@desc Create a new Site WAN\n@required {account_id: str, site_id: str, physport: int}\n@optional {name: str, priority: int, static_addressing: map{address!: str, gateway_address!: str, secondary_address: str} # (optional) if omitted, use DHCP. Submit secondary_address when site is in high availability mode., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Create Site WAN response\n@errors {4XX: Create Site WAN response failure}\n\n@endpoint DELETE /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n@desc Delete Site WAN\n@required {site_id: str, account_id: str, wan_id: str}\n@returns(200) Delete Site WAN response\n@errors {4XX: Delete Site WAN response failure}\n\n@endpoint GET /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n@desc Site WAN Details\n@required {site_id: str, account_id: str, wan_id: str}\n@returns(200) Site WAN Details response\n@errors {4XX: Site WAN Details response failure}\n\n@endpoint PATCH /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n@desc Patch Site WAN\n@required {site_id: str, account_id: str, wan_id: str}\n@optional {name: str, physport: int, priority: int, static_addressing: map{address!: str, gateway_address!: str, secondary_address: str} # (optional) if omitted, use DHCP. Submit secondary_address when site is in high availability mode., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Patch Site WAN response\n@errors {4XX: Patch Site WAN response failure}\n\n@endpoint PUT /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}\n@desc Update Site WAN\n@required {site_id: str, account_id: str, wan_id: str}\n@optional {name: str, physport: int, priority: int, static_addressing: map{address!: str, gateway_address!: str, secondary_address: str} # (optional) if omitted, use DHCP. Submit secondary_address when site is in high availability mode., vlan_tag: int # VLAN ID. Use zero for untagged.}\n@returns(200) Update Site WAN response\n@errors {4XX: Update Site WAN response failure}\n\n@endpoint GET /accounts/{account_id}/members\n@desc List Members\n@required {account_id: any}\n@optional {order: any(user.first_name/user.last_name/user.email/status), status: str(accepted/pending/rejected), page: num=1, per_page: num=20, direction: str(asc/desc)}\n@returns(200) List Members response\n@errors {4XX: List Members response failure}\n\n@endpoint POST /accounts/{account_id}/members\n@desc Add Member\n@required {account_id: any}\n@returns(200) Add Member response\n@errors {4XX: Add Member response failure}\n\n@endpoint DELETE /accounts/{account_id}/members/{member_id}\n@desc Remove Member\n@required {member_id: str, account_id: any}\n@returns(200) Remove Member response\n@errors {4XX: Remove Member response failure}\n\n@endpoint GET /accounts/{account_id}/members/{member_id}\n@desc Member Details\n@required {member_id: str, account_id: any}\n@returns(200) Member Details response\n@errors {4XX: Member Details response failure}\n\n@endpoint PUT /accounts/{account_id}/members/{member_id}\n@desc Update Member\n@required {member_id: str, account_id: any}\n@returns(200) Update Member response\n@errors {4XX: Update Member response failure}\n\n@endpoint DELETE /accounts/{account_id}/mnm/config\n@desc Delete account configuration\n@required {account_id: str}\n@returns(200) Delete account configuration response\n@errors {4XX: Delete account configuration response failure}\n\n@endpoint GET /accounts/{account_id}/mnm/config\n@desc List account configuration\n@required {account_id: str}\n@returns(200) List account configuration response\n@errors {4XX: List account configuration response failure}\n\n@endpoint PATCH /accounts/{account_id}/mnm/config\n@desc Update account configuration fields\n@required {account_id: str}\n@optional {default_sampling: num=1 # Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router., name: str # The account name., router_ips: [str], warp_devices: [map{id!: str, name!: str, router_ip!: str}]}\n@returns(200) Update account configuration fields response\n@errors {4XX: Update account configuration fields response failure}\n\n@endpoint POST /accounts/{account_id}/mnm/config\n@desc Create account configuration\n@required {account_id: str, default_sampling: num=1 # Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router., name: str # The account name.}\n@optional {router_ips: [str], warp_devices: [map{id!: str, name!: str, router_ip!: str}]}\n@returns(200) Create account configuration response\n@errors {4XX: Create account configuration response failure}\n\n@endpoint PUT /accounts/{account_id}/mnm/config\n@desc Update an entire account configuration\n@required {account_id: str, default_sampling: num=1 # Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router., name: str # The account name.}\n@optional {router_ips: [str], warp_devices: [map{id!: str, name!: str, router_ip!: str}]}\n@returns(200) Update an entire account configuration response\n@errors {4XX: Update an entire account configuration response failure}\n\n@endpoint GET /accounts/{account_id}/mnm/config/full\n@desc List rules and account configuration\n@required {account_id: str}\n@returns(200) List rules and account configuration response\n@errors {4XX: List rules and account configuration response failure}\n\n@endpoint GET /accounts/{account_id}/mnm/rules\n@desc List rules\n@required {account_id: str}\n@returns(200) List rules response\n@errors {4XX: List rules response failure}\n\n@endpoint POST /accounts/{account_id}/mnm/rules\n@desc Create rules\n@required {account_id: str, duration: str(1m/5m/10m/15m/20m/30m/45m/60m)=1m # The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"]., name: str # The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.}\n@optional {automatic_advertisement: bool # Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit., bandwidth: num # The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., packet_threshold: num # The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., prefixes: [str]}\n@returns(200) Create rules response\n@errors {4XX: Create rules response failure}\n\n@endpoint PUT /accounts/{account_id}/mnm/rules\n@desc Update rules\n@required {account_id: str, duration: str(1m/5m/10m/15m/20m/30m/45m/60m)=1m # The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"]., name: str # The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters.}\n@optional {automatic_advertisement: bool # Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit., bandwidth: num # The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., id: str # The id of the rule. Must be unique., packet_threshold: num # The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., prefixes: [str]}\n@returns(200) Update rules response\n@errors {4XX: Update rules response failure}\n\n@endpoint DELETE /accounts/{account_id}/mnm/rules/{rule_id}\n@desc Delete rule\n@required {rule_id: str, account_id: str}\n@returns(200) Delete rule response\n@errors {4XX: Delete rule response failure}\n\n@endpoint GET /accounts/{account_id}/mnm/rules/{rule_id}\n@desc Get rule\n@required {rule_id: str, account_id: str}\n@returns(200) Get rule response\n@errors {4XX: Get rule response failure}\n\n@endpoint PATCH /accounts/{account_id}/mnm/rules/{rule_id}\n@desc Update rule\n@required {rule_id: str, account_id: str}\n@optional {automatic_advertisement: bool # Toggle on if you would like Cloudflare to automatically advertise the IP Prefixes within the rule via Magic Transit when the rule is triggered. Only available for users of Magic Transit., bandwidth: num # The number of bits per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., duration: str(1m/5m/10m/15m/20m/30m/45m/60m)=1m # The amount of time that the rule threshold must be exceeded to send an alert notification. The final value must be equivalent to one of the following 8 values [\"1m\",\"5m\",\"10m\",\"15m\",\"20m\",\"30m\",\"45m\",\"60m\"]., name: str # The name of the rule. Must be unique. Supports characters A-Z, a-z, 0-9, underscore (_), dash (-), period (.), and tilde (~). You can’t have a space in the rule name. Max 256 characters., packet_threshold: num # The number of packets per second for the rule. When this value is exceeded for the set duration, an alert notification is sent. Minimum of 1 and no maximum., prefixes: [str]}\n@returns(200) Update rule response\n@errors {4XX: Update rule response failure}\n\n@endpoint PATCH /accounts/{account_id}/mnm/rules/{rule_id}/advertisement\n@desc Update advertisement for rule\n@required {rule_id: str, account_id: str}\n@returns(200) Update advertisement for rule response\n@errors {4XX: Update advertisement for rule response failure}\n\n@endpoint POST /accounts/{account_id}/mnm/vpc-flows/token\n@desc Generate authentication token for VPC flow logs export.\n@required {account_id: str}\n@returns(200) Generate authentication token for VPC flow logs export response.\n@errors {4XX: Generate authentication token for VPC flow logs export failure.}\n\n@endpoint POST /accounts/{account_id}/move\n@desc Move account\n@required {account_id: str, destination_organization_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{account_id: str, destination_organization_id: str, source_organization_id: str}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /accounts/{account_id}/mtls_certificates\n@desc List mTLS certificates\n@required {account_id: str}\n@returns(200) List mTLS certificates response\n@errors {4XX: List mTLS certificates response failure}\n\n@endpoint POST /accounts/{account_id}/mtls_certificates\n@desc Upload mTLS certificate\n@required {account_id: str, ca: bool # Indicates whether the certificate is a CA or leaf certificate., certificates: str # The uploaded root CA certificate.}\n@optional {name: str # Optional unique name for the certificate. Only used for human readability., private_key: str # The private key for the certificate. This field is only needed for specific use cases such as using a custom certificate with Zero Trust's block page.}\n@returns(200) Upload mTLS certificate response\n@errors {4XX: Upload mTLS certificate response failure}\n\n@endpoint DELETE /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}\n@desc Delete mTLS certificate\n@required {mtls_certificate_id: str, account_id: str}\n@returns(200) Delete mTLS certificate response\n@errors {4XX: Delete mTLS certificate response failure}\n\n@endpoint GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}\n@desc Get mTLS certificate\n@required {mtls_certificate_id: str, account_id: str}\n@returns(200) Get mTLS certificate response\n@errors {4XX: Get mTLS certificate response failure}\n\n@endpoint GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations\n@desc List mTLS certificate associations\n@required {mtls_certificate_id: str, account_id: str}\n@returns(200) List mTLS certificate associations response\n@errors {4XX: List mTLS certificate associations response failure}\n\n@endpoint GET /accounts/{account_id}/organizations\n@desc List account organizations\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /accounts/{account_id}/pages/projects\n@desc Get projects\n@required {account_id: str}\n@optional {page: int, per_page: int}\n@returns(200) Get projects response.\n@errors {4XX: Get projects response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects\n@desc Create project\n@required {account_id: str, name: str # Name of the project., production_branch: str # Production branch of the project. Used to identify production deployments.}\n@optional {build_config: map{build_caching: bool, build_command: str, destination_dir: str, root_dir: str, web_analytics_tag: str, web_analytics_token: str} # Configs for the project build process., deployment_configs: map{preview: any, production: any} # Configs for deployments in a project., source: map{config!: map, type!: str} # Configs for the project source control.}\n@returns(200) Create project response.\n@errors {4XX: Create project response failure.}\n\n@endpoint DELETE /accounts/{account_id}/pages/projects/{project_name}\n@desc Delete project\n@required {project_name: str, account_id: str}\n@returns(200) Delete project response.\n@errors {4XX: Delete project response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}\n@desc Get project\n@required {project_name: str, account_id: str}\n@returns(200) Get project response.\n@errors {4XX: Get project response failure.}\n\n@endpoint PATCH /accounts/{account_id}/pages/projects/{project_name}\n@desc Update project\n@required {project_name: str, account_id: str}\n@optional {build_config: map{build_caching: bool, build_command: str, destination_dir: str, root_dir: str, web_analytics_tag: str, web_analytics_token: str} # Configs for the project build process., deployment_configs: map{preview: any, production: any} # Configs for deployments in a project., name: str # Name of the project., production_branch: str # Production branch of the project. Used to identify production deployments., source: map{config!: map, type!: str} # Configs for the project source control.}\n@returns(200) Update project response.\n@errors {4XX: Update project response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}/deployments\n@desc Get deployments\n@required {project_name: str, account_id: str}\n@optional {env: str(production/preview), page: int, per_page: int}\n@returns(200) Get deployments response.\n@errors {4XX: Get deployments response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects/{project_name}/deployments\n@desc Create deployment\n@required {project_name: str, account_id: str}\n@returns(200) Create deployment response.\n@errors {4XX: Create deployment response failure.}\n\n@endpoint DELETE /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}\n@desc Delete deployment\n@required {deployment_id: str, project_name: str, account_id: str}\n@returns(200) Delete deployment response.\n@errors {4XX: Delete deployment response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}\n@desc Get deployment info\n@required {deployment_id: str, project_name: str, account_id: str}\n@returns(200) Get deployment info response.\n@errors {4XX: Get deployment info response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs\n@desc Get deployment logs\n@required {deployment_id: str, project_name: str, account_id: str}\n@returns(200) Get deployment logs response.\n@errors {4XX: Get deployment logs response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/retry\n@desc Retry deployment\n@required {deployment_id: str, project_name: str, account_id: str}\n@returns(200) Retry deployment response.\n@errors {4XX: Retry deployment response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/rollback\n@desc Rollback deployment\n@required {deployment_id: str, project_name: str, account_id: str}\n@returns(200) Rollback deployment response.\n@errors {4XX: Rollback deployment response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}/domains\n@desc Get domains\n@required {project_name: str, account_id: str}\n@returns(200) Get domains response.\n@errors {4XX: Get domains response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects/{project_name}/domains\n@desc Add domain\n@required {project_name: str, account_id: str, name: str # The domain name.}\n@returns(200) Add domain response.\n@errors {4XX: Add domain response failure.}\n\n@endpoint DELETE /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}\n@desc Delete domain\n@required {domain_name: str, project_name: str, account_id: str}\n@returns(200) Delete domain response.\n@errors {4XX: Delete domain response failure.}\n\n@endpoint GET /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}\n@desc Get domain\n@required {domain_name: str, project_name: str, account_id: str}\n@returns(200) Get domain response.\n@errors {4XX: Get domain response failure.}\n\n@endpoint PATCH /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}\n@desc Patch domain\n@required {domain_name: str, project_name: str, account_id: str}\n@returns(200) Patch domain response.\n@errors {4XX: Patch domain response failure.}\n\n@endpoint POST /accounts/{account_id}/pages/projects/{project_name}/purge_build_cache\n@desc Purge build cache\n@required {project_name: str, account_id: str}\n@returns(200) Purge build cache response.\n@errors {4XX: Purge build cache failure.}\n\n@endpoint DELETE /accounts/{account_id}/pay-per-crawl/crawler/stripe\n@desc Deletes the stripe config for a crawler\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/pay-per-crawl/crawler/stripe\n@desc Gets the stripe config for a crawler\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result: map{connect_status: str, stripe_account_id: str}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/pay-per-crawl/crawler/stripe\n@desc Creates the stripe config for a crawler\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result: map{url: str}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint DELETE /accounts/{account_id}/pay-per-crawl/publisher/stripe\n@desc Deletes the stripe config for a publisher\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/pay-per-crawl/publisher/stripe\n@desc Gets the stripe config for a publisher\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result: map{connect_status: str, stripe_account_id: str}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/pay-per-crawl/publisher/stripe\n@desc Creates the stripe config for a publisher\n@required {account_id: str # account id}\n@returns(200) {errors: [map], messages: [map], result: map{url: str}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint PATCH /accounts/{account_id}/pay-per-crawl/zones_can_be_enabled\n@desc Set can_be_enabled setting on zones\n@required {account_id: str # account id}\n@optional {zones: [map{can_be_enabled: bool, id: str}]}\n@returns(200) {errors: [map], messages: [map], result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint POST /accounts/{account_id}/pay-per-crawl/zones_can_be_enabled/query\n@desc Gets the can_be_enabled zone setting\n@required {account_id: str # account id}\n@optional {zones: [map{can_be_enabled: bool, id: str}]}\n@returns(200) {errors: [map], messages: [map], result: map{zones: [map]}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/pcaps\n@desc List packet capture requests\n@required {account_id: str}\n@returns(200) List packet capture requests response.\n\n@endpoint POST /accounts/{account_id}/pcaps\n@desc Create PCAP request\n@required {account_id: str}\n@returns(200) Create PCAP request response.\n\n@endpoint GET /accounts/{account_id}/pcaps/ownership\n@desc List PCAPs Bucket Ownership\n@required {account_id: str}\n@returns(200) List PCAPs Bucket Ownership response.\n\n@endpoint POST /accounts/{account_id}/pcaps/ownership\n@desc Add buckets for full packet captures\n@required {account_id: str, destination_conf: str # The full URI for the bucket. This field only applies to `full` packet captures.}\n@returns(200) Add buckets for full packet captures response.\n\n@endpoint POST /accounts/{account_id}/pcaps/ownership/validate\n@desc Validate buckets for full packet captures\n@required {account_id: str, destination_conf: str # The full URI for the bucket. This field only applies to `full` packet captures., ownership_challenge: str # The ownership challenge filename stored in the bucket.}\n@returns(200) Validate buckets for full packet captures response.\n\n@endpoint DELETE /accounts/{account_id}/pcaps/ownership/{ownership_id}\n@desc Delete buckets for full packet captures\n@required {ownership_id: str, account_id: str}\n@returns(204) Delete buckets for full packet captures response.\n\n@endpoint GET /accounts/{account_id}/pcaps/{pcap_id}\n@desc Get PCAP request\n@required {pcap_id: str, account_id: str}\n@returns(200) Get PCAP request response.\n\n@endpoint GET /accounts/{account_id}/pcaps/{pcap_id}/download\n@desc Download Simple PCAP\n@required {pcap_id: str, account_id: str}\n@returns(200) Download Simple PCAP response.\n\n@endpoint PUT /accounts/{account_id}/pcaps/{pcap_id}/stop\n@desc Stop full PCAP\n@required {pcap_id: str, account_id: str}\n@returns(204) Stop full PCAP response.\n\n@endpoint GET /accounts/{account_id}/pipelines\n@desc [DEPRECATED] List Pipelines\n@required {account_id: str}\n@optional {search: str, page: str=1, per_page: str=25}\n@returns(200) {result_info: map{count: num, page: num, per_page: num, total_count: num}, results: [map], success: bool} # [DEPRECATED] Lists the pipelines. Use /pipelines/v1/pipelines instead.\n@errors {4XX: Indicates the error trying to list pipelines.}\n\n@endpoint POST /accounts/{account_id}/pipelines\n@desc [DEPRECATED] Create Pipeline\n@required {account_id: str, destination: map{batch!: map, compression!: map, credentials!: map, format!: str, path!: map, type!: str}, name: str # Defines the name of the pipeline., source: [any]}\n@returns(200) {result: map{destination: map{batch: map{max_bytes: int, max_duration_s: num, max_rows: int}, compression: map{type: str}, format: str, path: map{bucket: str, filename: any, filepath: str, prefix: str}, type: str}, endpoint: str, id: str, name: str, source: [any], version: num}, success: bool} # [DEPRECATED] Indicates a successfully created pipeline. Use /pipelines/v1/pipelines instead.\n@errors {4XX: Indicates an error in creating a pipeline.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/pipelines\n@desc List Pipelines\n@required {account_id: str}\n@optional {page: num=1, per_page: num}\n@returns(200) {result: [map], result_info: map{count: num, page: num, per_page: num, total_count: num}, success: bool} # Indicates a successfully listed Pipelines.\n@errors {4XX: Indicates an error in listing Pipelines.}\n\n@endpoint POST /accounts/{account_id}/pipelines/v1/pipelines\n@desc Create Pipeline\n@required {account_id: str, name: str # Specifies the name of the Pipeline., sql: str # Specifies SQL for the Pipeline processing flow.}\n@returns(200) {result: map{created_at: str, id: str, modified_at: str, name: str, sql: str, status: str}, success: bool} # Indicates a successfully created Pipeline.\n@errors {4XX: Indicates an error in creating a Pipeline.}\n\n@endpoint DELETE /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}\n@desc Delete Pipelines\n@required {account_id: str, pipeline_id: str}\n@returns(200) Indicates a successfully deleted Pipeline.\n@errors {4XX: Indicates an error in listing Pipelines.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}\n@desc Get Pipeline Details\n@required {account_id: str, pipeline_id: str}\n@returns(200) {result: map{created_at: str, failure_reason: str, id: str, modified_at: str, name: str, sql: str, status: str, tables: [map]}, success: bool} # Indicates a successfully retrieved Pipeline.\n@errors {4XX: Indicates an error in retrieving Pipelines.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/sinks\n@desc List Sinks\n@required {account_id: str}\n@optional {pipeline_id: str, page: num=1, per_page: num}\n@returns(200) {result: [map], result_info: map{count: num, page: num, per_page: num, total_count: num}, success: bool} # Indicates successfully listed Sinks.\n@errors {4XX: Indicates an error in listing Sinks.}\n\n@endpoint POST /accounts/{account_id}/pipelines/v1/sinks\n@desc Create Sink\n@required {account_id: str, name: str # Defines the name of the Sink., type: str(r2/r2_data_catalog) # Specifies the type of sink.}\n@optional {config: any # Defines the configuration of the R2 Sink., format: any, schema: map{fields: [any], format: any, inferred: bool}}\n@returns(200) {result: map{config: any, created_at: str(date-time), format: any, id: str, modified_at: str(date-time), name: str, schema: map{fields: [any], format: any, inferred: bool?}, type: str}, success: bool} # Indicates a successfully created Sink.\n@errors {4XX: Indicates an error in creating a Sink.}\n\n@endpoint DELETE /accounts/{account_id}/pipelines/v1/sinks/{sink_id}\n@desc Delete Sink\n@required {account_id: str, sink_id: str}\n@optional {force: str}\n@returns(200) Indicates a successfully deleted Sink.\n@errors {4XX: Indicates an error in listing Sinks.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/sinks/{sink_id}\n@desc Get Sink Details\n@required {account_id: str, sink_id: str}\n@returns(200) {result: map{config: any, created_at: str(date-time), format: any, id: str, modified_at: str(date-time), name: str, schema: map{fields: [any], format: any, inferred: bool?}, type: str}, success: bool} # Indicates that Sink was retrieved.\n@errors {4XX: Indicates an error in listing Sinks.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/streams\n@desc List Streams\n@required {account_id: str}\n@optional {pipeline_id: str, page: num=1, per_page: num}\n@returns(200) {result: [map], result_info: map{count: num, page: num, per_page: num, total_count: num}, success: bool} # Indicates a successfully created Stream.\n@errors {4XX: Indicates an error in listing Streams.}\n\n@endpoint POST /accounts/{account_id}/pipelines/v1/streams\n@desc Create Stream\n@required {account_id: str, name: str # Specifies the name of the Stream.}\n@optional {format: any, http: map{authentication!: bool, cors: map, enabled!: bool}=[object Object], schema: map{fields: [any], format: any, inferred: bool}, worker_binding: map{enabled!: bool}=[object Object]}\n@returns(200) {result: map{created_at: str(date-time), endpoint: str(uri), format: any, http: map{authentication: bool, cors: map{origins: [str]}, enabled: bool}, id: str, modified_at: str(date-time), name: str, schema: map{fields: [any], format: any, inferred: bool?}, version: int, worker_binding: map{enabled: bool}}, success: bool} # Indicates a successfully created Stream.\n@errors {4XX: Indicates an error in creating a Stream.}\n\n@endpoint DELETE /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n@desc Delete Stream\n@required {account_id: str, stream_id: str}\n@optional {force: str}\n@returns(200) Indicates a successfully deleted Stream.\n@errors {4XX: Indicates an error in listing Streams.}\n\n@endpoint GET /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n@desc Get Stream Details\n@required {account_id: str, stream_id: str}\n@returns(200) {result: map{created_at: str(date-time), endpoint: str(uri), format: any, http: map{authentication: bool, cors: map{origins: [str]}, enabled: bool}, id: str, modified_at: str(date-time), name: str, schema: map{fields: [any], format: any, inferred: bool?}, version: int, worker_binding: map{enabled: bool}}, success: bool} # Indicates a successfully retrieved Stream.\n@errors {4XX: Indicates an error in retrieving Stream.}\n\n@endpoint PATCH /accounts/{account_id}/pipelines/v1/streams/{stream_id}\n@desc Update Stream\n@required {account_id: str, stream_id: str}\n@optional {http: map{authentication!: bool, cors: map, enabled!: bool}, worker_binding: map{enabled!: bool}}\n@returns(200) {result: map{created_at: str(date-time), endpoint: str(uri), format: any, http: map{authentication: bool, cors: map{origins: [str]}, enabled: bool}, id: str, modified_at: str(date-time), name: str, version: int, worker_binding: map{enabled: bool}}, success: bool} # Indicates a successfully updated Stream.\n@errors {4XX: Indicates an error in creating a Stream.}\n\n@endpoint POST /accounts/{account_id}/pipelines/v1/validate_sql\n@desc Validate SQL\n@required {account_id: str, sql: str # Specifies SQL to validate.}\n@returns(200) {result: map{graph: map{edges: [map], nodes: [map]}, tables: map}, success: bool} # Indicates SQL validation success.\n@errors {4XX: Indicates SQL validation failed.}\n\n@endpoint DELETE /accounts/{account_id}/pipelines/{pipeline_name}\n@desc [DEPRECATED] Delete Pipeline\n@required {account_id: str, pipeline_name: str}\n@returns(200) [DEPRECATED] Indicates a successfully deleted pipeline.\n@errors {4XX: Indicates an error in deleting a pipeline.}\n\n@endpoint GET /accounts/{account_id}/pipelines/{pipeline_name}\n@desc [DEPRECATED] Get Pipeline\n@required {account_id: str, pipeline_name: str}\n@returns(200) {result: map{destination: map{batch: map{max_bytes: int, max_duration_s: num, max_rows: int}, compression: map{type: str}, format: str, path: map{bucket: str, filename: any, filepath: str, prefix: str}, type: str}, endpoint: str, id: str, name: str, source: [any], version: num}, success: bool} # [DEPRECATED] Describes the configuration of a pipeline.\n@errors {404: Indicates that the pipeline was not found.}\n\n@endpoint PUT /accounts/{account_id}/pipelines/{pipeline_name}\n@desc [DEPRECATED] Update Pipeline\n@required {account_id: str, pipeline_name: str, destination: map{batch!: map, compression!: map, credentials: map, format!: str, path!: map, type!: str}, name: str # Defines the name of the pipeline., source: [any]}\n@returns(200) {result: map{destination: map{batch: map{max_bytes: int, max_duration_s: num, max_rows: int}, compression: map{type: str}, format: str, path: map{bucket: str, filename: any, filepath: str, prefix: str}, type: str}, endpoint: str, id: str, name: str, source: [any], version: num}, success: bool} # [DEPRECATED] Indicates a successfully updated pipeline.\n@errors {4XX: Indicates an error updating pipeline.}\n\n@endpoint GET /accounts/{account_id}/profile\n@desc Get account profile\n@required {account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint PUT /accounts/{account_id}/profile\n@desc Modify account profile\n@required {account_id: str, business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}\n@returns(204) There is no content to send for this request, but the headers may be useful.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /accounts/{account_id}/queues\n@desc List Queues\n@required {account_id: str}\n@returns(200) List of all Queues that belong to this account\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues\n@desc Create Queue\n@required {account_id: str, queue_name: str}\n@returns(200) Created Queue\n@errors {4XX: Failure response}\n\n@endpoint DELETE /accounts/{account_id}/queues/{queue_id}\n@desc Delete Queue\n@required {queue_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [str], success: bool} # Successful delete\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/queues/{queue_id}\n@desc Get Queue\n@required {queue_id: str, account_id: str}\n@returns(200) Details of the requested Queue\n@errors {4XX: Failure response}\n\n@endpoint PATCH /accounts/{account_id}/queues/{queue_id}\n@desc Update Queue\n@required {queue_id: str, account_id: str}\n@optional {consumers: [map], consumers_total_count: num, created_on: str, modified_on: str, producers: [map], producers_total_count: num, queue_id: str, queue_name: str, settings: map{delivery_delay: num, delivery_paused: bool, message_retention_period: num}}\n@returns(200) Updated Queue\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/queues/{queue_id}\n@desc Update Queue\n@required {queue_id: str, account_id: str}\n@optional {consumers: [map], consumers_total_count: num, created_on: str, modified_on: str, producers: [map], producers_total_count: num, queue_id: str, queue_name: str, settings: map{delivery_delay: num, delivery_paused: bool, message_retention_period: num}}\n@returns(200) Updated Queue\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/queues/{queue_id}/consumers\n@desc List Queue Consumers\n@required {queue_id: str, account_id: str}\n@returns(200) All consumers attached to this Queue\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/consumers\n@desc Create a Queue Consumer\n@required {queue_id: str, account_id: str}\n@returns(200) Create Queue Consumer response.\n@errors {4XX: Failure response}\n\n@endpoint DELETE /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n@desc Delete Queue Consumer\n@required {consumer_id: str, queue_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [str], success: bool} # Successful consumer delete\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n@desc Get Queue Consumer\n@required {consumer_id: str, queue_id: str, account_id: str}\n@returns(200) Get Queue Consumer response.\n@errors {4XX: Get Queue Consumer response failure.}\n\n@endpoint PUT /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}\n@desc Update Queue Consumer\n@required {consumer_id: str, queue_id: str, account_id: str}\n@returns(200) Update Queue Consumer response.\n@errors {4XX: Update Queue Consumer response failure.}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/messages\n@desc Push Message\n@required {queue_id: str, account_id: str}\n@returns(200) {errors: [map], messages: [str], success: bool} # Successful message ingestion\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/messages/ack\n@desc Acknowledge + Retry Queue Messages\n@required {queue_id: str, account_id: str}\n@optional {acks: [map{lease_id: str}], retries: [map{delay_seconds: num, lease_id: str}]}\n@returns(200) Details of ACKs and retries\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/messages/batch\n@desc Push Message Batch\n@required {queue_id: str, account_id: str}\n@optional {delay_seconds: num # The number of seconds to wait for attempting to deliver this batch to consumers, messages: [any]}\n@returns(200) {errors: [map], messages: [str], success: bool} # Successful batch ingestion\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/messages/pull\n@desc Pull Queue Messages\n@required {queue_id: str, account_id: str}\n@optional {batch_size: num # The maximum number of messages to include in a batch., visibility_timeout_ms: num # The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.}\n@returns(200) A batch of messages in the Queue\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/queues/{queue_id}/purge\n@desc Get Queue Purge Status\n@required {queue_id: str, account_id: str}\n@returns(200) Details of the requested Queue\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/queues/{queue_id}/purge\n@desc Purge Queue\n@required {queue_id: str, account_id: str}\n@optional {delete_messages_permanently: bool # Confimation that all messages will be deleted permanently.}\n@returns(200) Updated Queue\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/r2-catalog\n@desc List R2 catalogs\n@required {account_id: str # Identifies the account.}\n@returns(200) List of R2 catalogs.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 500: Internal server error.}\n\n@endpoint GET /accounts/{account_id}/r2-catalog/{bucket_name}\n@desc Get R2 catalog details\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name.}\n@returns(200) R2 catalog details.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n\n@endpoint POST /accounts/{account_id}/r2-catalog/{bucket_name}/credential\n@desc Store catalog credentials\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name., token: str # Provides the Cloudflare API token for accessing R2.}\n@returns(200) Credentials stored successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n@example_request {\"token\":\"your-cloudflare-api-token-here\"}\n\n@endpoint POST /accounts/{account_id}/r2-catalog/{bucket_name}/disable\n@desc Disable R2 catalog\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name to disable as catalog.}\n@returns(204) Catalog disabled successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n\n@endpoint POST /accounts/{account_id}/r2-catalog/{bucket_name}/enable\n@desc Enable R2 bucket as a catalog\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name to enable as catalog.}\n@returns(200) Catalog enabled successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 409: Catalog already enabled., 500: Internal server error.}\n\n@endpoint GET /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs\n@desc Get catalog maintenance configuration\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name.}\n@returns(200) Maintenance configuration retrieved successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n\n@endpoint POST /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs\n@desc Update catalog maintenance configuration\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name.}\n@returns(200) Maintenance configuration updated successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n@example_request {\"compaction\":{\"state\":\"enabled\",\"target_size_mb\":\"256\"},\"snapshot_expiration\":{\"max_snapshot_age\":\"14d\",\"min_snapshots_to_keep\":5,\"state\":\"enabled\"}}\n\n@endpoint GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces\n@desc List namespaces in catalog\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name.}\n@optional {page_token: str # Opaque pagination token from a previous response. Use this to fetch the next page of results., page_size: int=100 # Maximum number of namespaces to return per page. Defaults to 100, maximum 1000., parent: str # Parent namespace to filter by. Only returns direct children of this namespace. For nested namespaces, use %1F as separator (e.g., \"bronze%1Fanalytics\"). Omit this parameter to list top-level namespaces., return_uuids: bool=false # Whether to include namespace UUIDs in the response. Set to true to receive the namespace_uuids array., return_details: bool=false # Whether to include additional metadata (timestamps). When true, response includes created_at and updated_at arrays.}\n@returns(200) List of namespaces retrieved successfully.\n@errors {400: Bad request (e.g., invalid page_size, malformed parent namespace)., 401: Authentication failed., 403: Forbidden., 404: Catalog not found., 500: Internal server error.}\n\n@endpoint GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables\n@desc List tables in namespace\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name., namespace: str # The namespace identifier. For nested namespaces, use %1F as separator (e.g., \"bronze%1Fanalytics\").}\n@optional {page_token: str # Opaque pagination token from a previous response. Use this to fetch the next page of results., page_size: int=100 # Maximum number of tables to return per page. Defaults to 100, maximum 1000., return_uuids: bool=false # Whether to include table UUIDs in the response. Set to true to receive the table_uuids array., return_details: bool=false # Whether to include additional metadata (timestamps, locations). When true, response includes created_at, updated_at, metadata_locations, and locations arrays.}\n@returns(200) List of tables retrieved successfully.\n@errors {400: Bad request (e.g., invalid page_size, malformed namespace)., 401: Authentication failed., 403: Forbidden., 404: Catalog or namespace not found., 500: Internal server error.}\n\n@endpoint GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs\n@desc Get table maintenance configuration\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name., namespace: str # The namespace identifier (use %1F as separator for nested namespaces)., table_name: str # The table name.}\n@returns(200) Table maintenance configuration retrieved successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Table not found., 500: Internal server error.}\n\n@endpoint POST /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs\n@desc Update table maintenance configuration\n@required {account_id: str # Identifies the account., bucket_name: str # Specifies the R2 bucket name., namespace: str # The namespace identifier (use %1F as separator for nested namespaces)., table_name: str # The table name.}\n@returns(200) Table maintenance configuration updated successfully.\n@errors {400: Bad request., 401: Authentication failed., 403: Forbidden., 404: Table not found., 500: Internal server error.}\n@example_request {\"compaction\":{\"state\":\"enabled\",\"target_size_mb\":\"256\"},\"snapshot_expiration\":{\"max_snapshot_age\":\"14d\",\"min_snapshots_to_keep\":5,\"state\":\"enabled\"}}\n\n@endpoint GET /accounts/{account_id}/r2/buckets\n@desc List Buckets\n@required {account_id: str}\n@optional {name_contains: str, start_after: str, per_page: num=20, order: str, direction: str(asc/desc), cursor: str, cf-r2-jurisdiction: str}\n@returns(200) List Buckets response.\n@errors {4XX: List Buckets response failure.}\n\n@endpoint POST /accounts/{account_id}/r2/buckets\n@desc Create Bucket\n@required {account_id: str, name: str # Name of the bucket.}\n@optional {cf-r2-jurisdiction: str, locationHint: str(apac/eeur/enam/weur/wnam/oc) # Location of the bucket., storageClass: str(Standard/InfrequentAccess)=Standard # Storage class for newly uploaded objects, unless specified otherwise.}\n@returns(200) Create Bucket response.\n@errors {4XX: Create Bucket response failure.}\n\n@endpoint DELETE /accounts/{account_id}/r2/buckets/{bucket_name}\n@desc Delete Bucket\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) {errors: [map], messages: [str], result: map, success: bool} # Delete Bucket response.\n@errors {4XX: Delete Bucket response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}\n@desc Get Bucket\n@required {account_id: str, bucket_name: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Get Bucket response.\n@errors {4XX: Get Bucket response failure.}\n\n@endpoint PATCH /accounts/{account_id}/r2/buckets/{bucket_name}\n@desc Patch Bucket\n@required {account_id: str, bucket_name: str, cf-r2-storage-class: any}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Patch Bucket response.\n@errors {4XX: Get Bucket response failure.}\n\n@endpoint DELETE /accounts/{account_id}/r2/buckets/{bucket_name}/cors\n@desc Delete Bucket CORS Policy\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/cors\n@desc Get Bucket CORS Policy\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/cors\n@desc Put Bucket CORS Policy\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str, rules: [map{allowed!: map, exposeHeaders: [str], id: str, maxAgeSeconds: num}]}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom\n@desc List Custom Domains of Bucket\n@required {account_id: str, bucket_name: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) List Custom Domains response.\n@errors {4XX: List Custom Domains response failure.}\n\n@endpoint POST /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom\n@desc Attach Custom Domain To Bucket\n@required {account_id: str, bucket_name: str, domain: str # Name of the custom domain to be added., enabled: bool # Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled., zoneId: str # Zone ID of the custom domain.}\n@optional {cf-r2-jurisdiction: str, ciphers: [str] # An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format., minTLS: str(1.0/1.1/1.2/1.3) # Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.}\n@returns(200) Add Custom Domain response.\n@errors {4XX: Add Custom Domain response failure.}\n\n@endpoint DELETE /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain}\n@desc Remove Custom Domain From Bucket\n@required {bucket_name: str, account_id: str, domain: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Delete Custom Domain response.\n@errors {4XX: Delete Custom Domain response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain}\n@desc Get Custom Domain Settings\n@required {account_id: str, bucket_name: str, domain: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Get Custom Domain Configuration response.\n@errors {4XX: Get Custom Domain Configuration response failure.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain}\n@desc Configure Custom Domain Settings\n@required {account_id: str, bucket_name: str, domain: str}\n@optional {cf-r2-jurisdiction: str, ciphers: [str] # An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format., enabled: bool # Whether to enable public bucket access at the specified custom domain., minTLS: str(1.0/1.1/1.2/1.3) # Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to previous value.}\n@returns(200) Edit Custom Domain Configuration response.\n@errors {4XX: Edit Custom Domain Configuration response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed\n@desc Get r2.dev Domain of Bucket\n@required {account_id: str, bucket_name: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Get Managed Subdomain response.\n@errors {4XX: Get Managed Subdomain response failure.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed\n@desc Update r2.dev Domain of Bucket\n@required {account_id: str, bucket_name: str, enabled: bool # Whether to enable public bucket access at the r2.dev domain.}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Update Managed Subdomain response.\n@errors {4XX: Update Managed Subdomain response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle\n@desc Get Object Lifecycle Rules\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle\n@desc Put Object Lifecycle Rules\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str, rules: [map{abortMultipartUploadsTransition: map, conditions!: map, deleteObjectsTransition: map, enabled!: bool, id!: str, storageClassTransitions: [any]}]}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads\n@desc Get Local Uploads Configuration\n@required {bucket_name: str, account_id: str}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads\n@desc Put Local Uploads Configuration\n@required {bucket_name: str, account_id: str, enabled: bool # Whether to enable local uploads for this bucket.}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/lock\n@desc Get Bucket Lock Rules\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/lock\n@desc Put Bucket Lock Rules\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str, rules: [map{condition!: any, enabled!: bool, id!: str, prefix: str}]}\n@returns(200) Success Response.\n@errors {4XX: Error Response.}\n\n@endpoint DELETE /accounts/{account_id}/r2/buckets/{bucket_name}/sippy\n@desc Disable Sippy\n@required {bucket_name: str, account_id: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Delete Sippy Configuration response.\n@errors {4XX: Delete Sippy Configuration response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/buckets/{bucket_name}/sippy\n@desc Get Sippy Configuration\n@required {account_id: str, bucket_name: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Get Sippy Configuration response.\n@errors {4XX: Get Sippy Configuration response failure.}\n\n@endpoint PUT /accounts/{account_id}/r2/buckets/{bucket_name}/sippy\n@desc Enable Sippy\n@required {account_id: str, bucket_name: str}\n@optional {cf-r2-jurisdiction: str}\n@returns(200) Set Sippy Configuration response.\n@errors {4XX: Get Sippy Configuration response failure.}\n\n@endpoint GET /accounts/{account_id}/r2/metrics\n@desc Get Account-Level Metrics\n@required {account_id: str}\n@returns(200) Get Account-Level Metrics response.\n@errors {4XX: Get Account-Level Metrics response failure.}\n\n@endpoint POST /accounts/{account_id}/r2/temp-access-credentials\n@desc Create Temporary Access Credentials\n@required {account_id: str, bucket: str # Name of the R2 bucket., parentAccessKeyId: str # The parent access key id to use for signing., permission: str(admin-read-write/admin-read-only/object-read-write/object-read-only) # Permissions allowed on the credentials., ttlSeconds: num=900 # How long the credentials will live for in seconds.}\n@optional {objects: [str] # Optional object paths to scope the credentials to., prefixes: [str] # Optional prefix paths to scope the credentials to.}\n@returns(200) Create temporary access credentials response.\n@errors {4XX: Create temporary access credentials response failure.}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/apps\n@desc Fetch all apps\n@required {account_id: str}\n@returns(200) {data: [map], success: bool} # OK\n\n@endpoint POST /accounts/{account_id}/realtime/kit/apps\n@desc Create App\n@required {name: str}\n@returns(200) {data: map{app: map{created_at: str, id: str, name: str}}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywise\n@desc Fetch day-wise session and recording analytics data for an App\n@required {account_id: str, app_id: str}\n@optional {start_date: str # start date in YYYY-MM-DD format, end_date: str # end date in YYYY-MM-DD format}\n@returns(200) {data: map{recording_stats: map{day_stats: [map], recording_count: int, recording_minutes_consumed: num}, session_stats: map{day_stats: [map], sessions_count: int, sessions_minutes_consumed: num}}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall\n@desc Fetch complete analytics data for your livestreams\n@required {account_id: str, app_id: str}\n@optional {start_time: str(date-time) # Specify the start time range in ISO format to access the livestream analytics., end_time: str(date-time) # Specify the end time range in ISO format to access the livestream analytics.}\n@returns(200) {data: map{count: int, total_ingest_seconds: int, total_viewer_seconds: int}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams\n@desc Fetch all livestreams\n@optional {exclude_meetings: bool=false # Exclude the RealtimeKit meetings that are livestreamed., per_page: int # Number of results per page., page_no: int # The page number from which you want your page search results to be displayed., status: str(LIVE/IDLE/ERRORED/INVOKED) # Specifies the status of the operation., start_time: str(date-time) # Specify the start time range in ISO format to access the live stream., end_time: str(date-time) # Specify the end time range in ISO format to access the live stream., sort_order: str(ASC/DSC) # Specifies the sorting order for the results.}\n@returns(200) {data: map{created_at: str(date-time), disabled: str, id: str(uuid), ingest_server: str, meeting_id: str, name: str, paging: map{end_offset: int, start_offset: int, total_count: int}, playback_url: str, status: str, stream_key: str, updated_at: str(date-time)}, success: bool} # OK\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/livestreams\n@desc Create an independent livestream\n@optional {name: str # Name of the livestream}\n@returns(201) {data: map{disabled: bool, id: str, ingest_server: str, meeting_id: str?, name: str, playback_url: str, status: str, stream_key: str}, success: bool} # Successful response\n@example_request {\"name\":\"prdmmp-xhycsl\"}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}\n@desc Fetch livestream session details using livestream session ID\n@required {account_id: str, app_id: str, livestream-session-id: str}\n@returns(200) {data: map{created_at: str(date-time), err_message: str, id: str, ingest_seconds: int, livestream_id: str, started_time: str, stopped_time: str, updated_at: str, viewer_seconds: int}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}\n@desc Fetch livestream details using livestream ID\n@required {account_id: str, app_id: str, livestream_id: str}\n@optional {page_no: int # The page number from which you want your page search results to be displayed., per_page: int # Number of results per page.}\n@returns(200) {data: map{livestream: map{created_at: str, disabled: str, id: str, ingest_server: str, meeting_id: str, name: str, playback_url: str, status: str, stream_key: str, updated_at: str}, paging: map{end_offset: int, start_offset: int, total_count: int}, session: map{created_at: str(date-time), err_message: str, id: str, ingest_seconds: num, invoked_time: str(date-time), livestream_id: str, started_time: str(date-time), stopped_time: str(date-time), updated_at: str(date-time), viewer_seconds: num}}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session\n@desc Fetch active livestream session details\n@required {account_id: str, app_id: str, livestream_id: str}\n@returns(200) {data: map{livestream: map{created_at: str(date-time), disabled: str, id: str, ingest_server: str, meeting_id: str, name: str, playback_url: str, status: str, stream_key: str, updated_at: str(date-time)}, session: map{created_at: str(date-time), err_message: str, id: str, ingest_seconds: str, invoked_time: str(date-time), livestream_id: str, started_time: str(date-time), stopped_time: str(date-time), updated_at: str(date-time), viewer_seconds: str}}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings\n@desc Fetch all meetings for an App\n@required {account_id: str, app_id: str}\n@optional {page_no: num # The page number from which you want your page search results to be displayed., per_page: num # Number of results per page, start_time: str(date-time) # The start time range for which you want to retrieve the meetings. The time must be specified in ISO format., end_time: str(date-time) # The end time range for which you want to retrieve the meetings. The time must be specified in ISO format., search: str # The search query string. You can search using the meeting ID or title.}\n@returns(200) Success response\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings\n@desc Create a meeting\n@required {account_id: str, app_id: str}\n@optional {ai_config: map{summarization: map, transcription: map} # The AI Config allows you to customize the behavior of meeting transcriptions and summaries, live_stream_on_start: bool=false # Specifies if the meeting should start getting livestreamed on start., persist_chat: bool=false # If a meeting is set to persist_chat, meeting chat would remain for a week within the meeting space., record_on_start: bool=false # Specifies if the meeting should start getting recorded as soon as someone joins the meeting., recording_config: map{audio_config: map, file_name_prefix: str, live_streaming_config: map, max_seconds: num, realtimekit_bucket_config: map, storage_config: map, video_config: map} # Recording Configurations to be used for this meeting. This level of configs takes higher preference over App level configs on the RealtimeKit developer portal., session_keep_alive_time_in_secs: num=60 # Time in seconds, for which a session remains active, after the last participant has left the meeting., summarize_on_end: bool=false # Automatically generate summary of meetings using transcripts. Requires Transcriptions to be enabled, and can be retrieved via Webhooks or summary API., title: str # Title of the meeting}\n@returns(201) Success Response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n@desc Fetch a meeting for an App\n@required {meeting_id: str(uuid) # ID of the meeting. Fetch the meeting ID using the create a meeting API.}\n@optional {name: str}\n@returns(200) Success Response\n@errors {500: Failure response}\n\n@endpoint PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n@desc Update a meeting\n@required {meeting_id: str(uuid) # ID of the meeting. Fetch the meeting ID using the create a meeting API.}\n@optional {ai_config: map{summarization: map, transcription: map} # The AI Config allows you to customize the behavior of meeting transcriptions and summaries, live_stream_on_start: bool=false # Specifies if the meeting should start getting livestreamed on start., persist_chat: bool=false # If a meeting is updated to persist_chat, meeting chat would remain for a week within the meeting space., record_on_start: bool=false # Specifies if the meeting should start getting recorded as soon as someone joins the meeting., session_keep_alive_time_in_secs: num=60 # Time in seconds, for which a session remains active, after the last participant has left the meeting., status: str(ACTIVE/INACTIVE) # Whether the meeting is `ACTIVE` or `INACTIVE`. Users will not be able to join an `INACTIVE` meeting., summarize_on_end: bool=false # Automatically generate summary of meetings using transcripts. Requires Transcriptions to be enabled, and can be retrieved via Webhooks or summary API., title: str # Title of the meeting}\n@returns(200) Success Response\n@errors {500: Failure response}\n\n@endpoint PUT /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}\n@desc Replace a meeting\n@required {meeting_id: str(uuid) # ID of the meeting. Fetch the meeting ID using the create a meeting API.}\n@optional {ai_config: map{summarization: map, transcription: map} # The AI Config allows you to customize the behavior of meeting transcriptions and summaries, live_stream_on_start: bool=false # Specifies if the meeting should start getting livestreamed on start., persist_chat: bool=false # If a meeting is set to persist_chat, meeting chat would remain for a week within the meeting space., record_on_start: bool=false # Specifies if the meeting should start getting recorded as soon as someone joins the meeting., recording_config: map{audio_config: map, file_name_prefix: str, live_streaming_config: map, max_seconds: num, realtimekit_bucket_config: map, storage_config: map, video_config: map} # Recording Configurations to be used for this meeting. This level of configs takes higher preference over App level configs on the RealtimeKit developer portal., session_keep_alive_time_in_secs: num=60 # Time in seconds, for which a session remains active, after the last participant has left the meeting., summarize_on_end: bool=false # Automatically generate summary of meetings using transcripts. Requires Transcriptions to be enabled, and can be retrieved via Webhooks or summary API., title: str # Title of the meeting}\n@returns(200) Success Response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream\n@desc Fetch active livestreams for a meeting\n@required {meeting_id: str(uuid) # ID of the meeting}\n@returns(200) {data: map{created_at: str(date-time), disabled: str, id: str, ingest_server: str, meeting_id: str, name: str?, playback_url: str, status: str, stream_key: str, updated_at: str(date-time)}, success: bool} # OK\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream/stop\n@desc Stop livestreaming a meeting\n@required {meeting_id: str(uuid) # ID of the meeting}\n@returns(200) {data: map{message: str}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session\n@desc Fetch details of an active session\n@required {meeting_id: str # ID of the meeting}\n@returns(200) {data: map{associated_id: str, breakout_rooms: [map], created_at: str, ended_at: str, id: str, live_participants: num, max_concurrent_participants: num, meeting_display_name: str, meta: map, minutes_consumed: num, organization_id: str, started_at: str, status: str, type: str, updated_at: str}, success: bool} # Active Session Success response\n@errors {404: Active Session is not found for the given meetingId}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick\n@desc Kick participants from an active session\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting, custom_participant_ids: [str], participant_ids: [str]}\n@returns(200) {data: map{action: str, participants: [map]}, success: bool} # Kick participants success response\n@errors {404: No participant found for the given `participant_id` or `custom_participant_id`}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/kick-all\n@desc Kick all participants\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting}\n@returns(200) {data: map{action: str, kicked_participants_count: num}, success: bool} # Kick all participants from a meeting\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute\n@desc Mute participants of an active session\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting, custom_participant_ids: [str], participant_ids: [str]}\n@returns(200) {data: map{action: str, participants: [map]}, success: bool} # Mute one or more participants of a meeting\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/mute-all\n@desc Mute all participants\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting, allow_unmute: bool # if false, participants won't be able to unmute themselves after they are muted}\n@returns(200) {data: map{action: str, muted_participants_count: num}, success: bool} # Mute all participants of a meeting\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session/poll\n@desc Create a poll\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting, options: [str] # Different options for the question, question: str # Question of the poll}\n@optional {anonymous: bool # if voters on a poll are anonymous, hide_votes: bool # if votes on an option are visible before a person votes}\n@returns(201) {data: map{action: str, poll: map{anonymous: bool, created_by: str, hide_votes: bool, id: str, options: [map], question: str, voted: [str]}}, success: bool} # response for creating a poll\n@errors {400: Bad Request}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream\n@desc Fetch livestream session details for a meeting\n@required {meeting_id: str(uuid) # ID of the meeting}\n@optional {page_no: int # The page number from which you want your page search results to be displayed., per_page: int # Number of results per page.}\n@returns(200) {data: map{livestreams: [map], paging: map{end_offset: int, start_offset: int, total_count: int}, sessions: map{created_at: str(date-time), err_message: str, id: str, ingest_seconds: str, invoked_time: str(date-time), livestream_id: str, started_time: str(date-time), stopped_time: str(date-time), updated_at: str(date-time)}}, success: bool} # OK\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreams\n@desc Start livestreaming a meeting\n@required {meeting_id: str(uuid) # ID of the meeting}\n@optional {name: str, video_config: map{height: int, width: int}}\n@returns(201) {data: map{id: str, ingest_server: str, playback_url: str, status: str, stream_key: str}, success: bool} # Created\n@example_request {\"name\":\"prdmmp-xhycsl\"}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants\n@desc Fetch all participants of a meeting\n@required {account_id: str, app_id: str, meeting_id: str(uuid) # ID of the meeting. Fetch the meeting ID using the create a meeting API.}\n@optional {page_no: num # The page number from which you want your page search results to be displayed., per_page: num # Number of results per page}\n@returns(200) Success response\n@errors {500: Failure response}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants\n@desc Add a participant\n@required {account_id: str, app_id: str, meeting_id: str(uuid) # ID of the meeting. Fetch the meeting ID using the create a meeting API., custom_participant_id: str # A unique participant ID. You must specify a unique ID for the participant, for example, UUID, email address, and so on., preset_name: str=group_call_host # Name of the preset to apply to this participant.}\n@optional {name: str # (Optional) Name of the participant., picture: str(uri) # (Optional) A URL to a picture to be used for the participant.}\n@returns(201) Success response\n@errors {500: Failure response}\n\n@endpoint DELETE /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n@desc Delete a participant\n@required {meeting_id: str(uuid) # ID of the meeting. You can fetch the meeting ID using the create a meeting API., participant_id: str # ID of the participant. You can fetch the participant ID using the add a participant API.}\n@returns(200) Success response\n@errors {500: Failure response}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n@desc Fetch a participant's detail\n@required {meeting_id: str(uuid) # ID of the meeting. You can fetch the meeting ID using the create a meeting API., participant_id: str # ID of the participant. You can fetch the participant ID using the add a participant API.}\n@returns(200) Success response\n@errors {500: Failure response}\n\n@endpoint PATCH /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}\n@desc Edit a participant's detail\n@required {meeting_id: str(uuid) # ID of the meeting. You can fetch the meeting ID using the create a meeting API., participant_id: str # ID of the participant. You can fetch the participant ID using the add a participant API.}\n@optional {name: str # (Optional) Name of the participant., picture: str(uri) # (Optional) A URL to a picture to be used for the participant., preset_name: str # (Optional) Name of the preset to apply to this participant.}\n@returns(200) Success response\n@errors {500: Failure response}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}/token\n@desc Refresh participant's authentication token\n@required {account_id: str, app_id: str, meeting_id: str(uuid) # ID of the meeting. You can fetch the meeting ID using the create a meeting API., participant_id: str # ID of the participant. You can fetch the participant ID using the add a  participant API.}\n@returns(200) Example response\n@errors {500: Failure response}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/presets\n@desc Fetch all presets\n@required {account_id: str, app_id: str}\n@optional {per_page: num # Number of results per page, page_no: num # The page number from which you want your page search results to be displayed.}\n@returns(200) Example response\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/presets\n@desc Create a preset\n@required {account_id: str, app_id: str, config: map{max_screenshare_count!: int, max_video_streams!: map, media!: map, view_type!: str}, name: str # Name of the preset, ui: map{config_diff: map, design_tokens!: map}}\n@optional {permissions: map{accept_waiting_requests!: bool, can_accept_production_requests!: bool, can_change_participant_permissions!: bool, can_edit_display_name!: bool, can_livestream!: bool, can_record!: bool, can_spotlight!: bool, chat!: map, connected_meetings!: map, disable_participant_audio!: bool, disable_participant_screensharing!: bool, disable_participant_video!: bool, hidden_participant!: bool, is_recorder: bool, kick_participant!: bool, media!: map, pin_participant!: bool, plugins!: map, polls!: map, recorder_type!: str, show_participant_list!: bool, waiting_room_type!: str}}\n@returns(200) Success response\n\n@endpoint DELETE /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n@desc Delete a preset\n@required {account_id: str, app_id: str, preset_id: str # ID of the preset to fetch}\n@returns(200) Success response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n@desc Fetch details of a preset\n@required {account_id: str, app_id: str, preset_id: str # ID of the preset to fetch}\n@returns(200) Success response\n\n@endpoint PATCH /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}\n@desc Update a preset\n@required {account_id: str, app_id: str, preset_id: str # ID of the preset to fetch}\n@optional {config: map{max_screenshare_count: int, max_video_streams: map, media: map, view_type: str}, name: str # Name of the preset, permissions: map{accept_waiting_requests: bool, can_accept_production_requests: bool, can_change_participant_permissions: bool, can_edit_display_name: bool, can_livestream: bool, can_record: bool, can_spotlight: bool, chat: map, connected_meetings: map, disable_participant_audio: bool, disable_participant_screensharing: bool, disable_participant_video: bool, hidden_participant: bool, is_recorder: bool, kick_participant: bool, media: map, pin_participant: bool, plugins: map, polls: map, recorder_type: str, show_participant_list: bool, waiting_room_type: str}, ui: map{config_diff: map, design_tokens: map}}\n@returns(200) Success response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/recordings\n@desc Fetch all recordings for an App\n@required {account_id: str, app_id: str}\n@optional {meeting_id: str(uuid) # ID of a meeting. Optional. Will limit results to only this meeting if passed., page_no: num # The page number from which you want your page search results to be displayed., per_page: num # Number of results per page, expired: bool # If passed, only shows expired/non-expired recordings on RealtimeKit's bucket, search: str # The search query string. You can search using the meeting ID or title., sort_by: str, sort_order: str(ASC/DESC), start_time: str(date-time) # The start time range for which you want to retrieve the meetings. The time must be specified in ISO format., end_time: str(date-time) # The end time range for which you want to retrieve the meetings. The time must be specified in ISO format., status: [str] # Filter by one or more recording status}\n@returns(200) Success response\n@returns(201) Created\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/recordings\n@desc Start recording a meeting\n@required {account_id: str, app_id: str}\n@optional {allow_multiple_recordings: bool=false # By default, a meeting allows only one recording to run at a time. Enabling the `allow_multiple_recordings` parameter to true allows you to initiate multiple recordings concurrently in the same meeting. This allows you to record separate videos of the same meeting with different configurations, such as portrait mode or landscape mode., audio_config: map{channel: str, codec: str, export_file: bool} # Object containing configuration regarding the audio that is being recorded., file_name_prefix: str # Update the recording file name., interactive_config: map{type: str} # Allows you to add timed metadata to your recordings, which are digital markers inserted into a video file to provide contextual information at specific points in the content range. The ID3 tags containing this information are available to clients on the playback timeline in HLS format. The output files are generated in a compressed .tar format., max_seconds: int # Specifies the maximum duration for recording in seconds, ranging from a minimum of 60 seconds to a maximum of 24 hours., meeting_id: str(uuid) # ID of the meeting to record., realtimekit_bucket_config: map{enabled!: bool}, rtmp_out_config: map{rtmp_url: str(uri)}, storage_config: map{access_key: str, auth_method: str, bucket: str, host: str, password: str, path: str, port: num, private_key: str, region: str, secret: str, type!: str, username: str}, url: str(uri) # Pass a custom url to record arbitary screen, video_config: map{codec: str, export_file: bool, height: int, watermark: map, width: int}}\n@returns(200) Success response\n@example_request {\"allow_multiple_recordings\":false,\"audio_config\":{\"channel\":\"stereo\",\"codec\":\"AAC\",\"export_file\":true},\"file_name_prefix\":\"string\",\"interactive_config\":{\"type\":\"ID3\"},\"max_seconds\":60,\"meeting_id\":\"97440c6a-140b-40a9-9499-b23fd7a3868a\",\"realtimekit_bucket_config\":{\"enabled\":true},\"video_config\":{\"codec\":\"H264\",\"export_file\":true,\"height\":720,\"watermark\":{\"position\":\"left top\",\"size\":{\"height\":1,\"width\":1},\"url\":\"http://example.com\"},\"width\":1280}}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id}\n@desc Fetch active recording\n@required {account_id: str, app_id: str, meeting_id: str # ID of the meeting}\n@returns(200) Success response\n@errors {404: Failure response}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/recordings/track\n@desc Start recording audio and video tracks\n@required {account_id: str, app_id: str, layers: map, meeting_id: str # ID of the meeting to record.}\n@optional {max_seconds: num # Maximum seconds this recording should be active for (beta)}\n@returns(200) OK\n@example_request {\"layers\":{\"default\":{\"file_name_prefix\":\"string\",\"outputs\":[{\"type\":\"REALTIMEKIT_BUCKET\"}]},\"default-video\":{\"file_name_prefix\":\"string\",\"outputs\":[{\"type\":\"REALTIMEKIT_BUCKET\"}]}},\"max_seconds\":60,\"meeting_id\":\"string\"}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}\n@desc Fetch details of a recording\n@required {account_id: str, app_id: str, recording_id: str # ID of the recording}\n@returns(200) Success response\n\n@endpoint PUT /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}\n@desc Pause/Resume/Stop recording\n@required {account_id: str, app_id: str # A Cloudflare-generated unique identifier for an item., recording_id: str # ID of the recording, action: str(stop/pause/resume)}\n@returns(200) Success response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions\n@desc Fetch all sessions of an App\n@required {account_id: str, app_id: str}\n@optional {page_no: num # The page number from which you want your page search results to be displayed., per_page: num # Number of results per page, sort_by: str(minutesConsumed/createdAt), sort_order: str(ASC/DESC), start_time: str(date-time) # The start time range for which you want to retrieve the meetings. The time must be specified in ISO format., end_time: str(date-time) # The end time range for which you want to retrieve the meetings. The time must be specified in ISO format., participants: str, status: str(LIVE/ENDED), search: str # Search string that matches sessions based on meeting title, meeting ID, and session ID, associated_id: str # ID of the meeting that sessions should be associated with}\n@returns(200) {data: map{sessions: [map]}, success: bool} # Get all sessions success response\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id}\n@desc Fetch details of peer\n@required {account_id: str, app_id: str, peer_id: str # ID of the peer}\n@optional {filters: str(device_info/ip_information/precall_network_information/events/quality_stats) # Comma separated list of filters to apply. Note that there must be no spaces between the filters.}\n@returns(200) {data: map{participant: map{created_at: str, custom_participant_id: str, display_name: str, duration: num, id: str, joined_at: str, left_at: str, peer_report: map{metadata: map, quality: map}, peer_stats: map{device_info: map, events: [map], ip_information: map, precall_network_information: map}, quality_stats: map{audio_bandwidth: int, audio_stats: [map], average_quality: int, end: str?, first_audio_packet_received: str, first_video_packet_received: str, last_audio_packet_received: str, last_video_packet_received: str, peer_ids: [str], start: str?, total_audio_packets: int, total_audio_packets_lost: int, total_video_packets: int, total_video_packets_lost: int, video_bandwidth: int, video_stats: [map]}, role: str, updated_at: str, user_id: str}}, success: bool} # Returns details of a participant (using peer id) along with callstats data.\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}\n@desc Fetch details of a session\n@required {account_id: str, app_id: str, session_id: str # ID of the session}\n@optional {include_breakout_rooms: bool=false # List all breakout rooms}\n@returns(200) {data: map{session: map{associated_id: str, breakout_rooms: [map], created_at: str, ended_at: str, id: str, live_participants: num, max_concurrent_participants: num, meeting_display_name: str, meta: map, minutes_consumed: num, organization_id: str, started_at: str, status: str, type: str, updated_at: str}}, success: bool} # Get details about a particular session\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat\n@desc Fetch all chat messages of a session\n@required {account_id: str, app_id: str, session_id: str # ID of the session}\n@returns(200) {data: map{chat_download_url: str, chat_download_url_expiry: str}, success: bool} # Returns all chat messages of a session.\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions\n@desc Fetch livestream session details using a session ID\n@required {account_id: str, app_id: str, session_id: str}\n@optional {per_page: num # Number of results per page., page_no: num # The page number from which you want your page search results to be displayed.}\n@returns(200) {data: map{created_at: str(date-time), err_message: str, id: str, ingest_seconds: num, invoked_time: str?, livestream_id: str, paging: map{end_offset: num, start_offset: num, total_count: num}, stopped_time: str(date-time), updated_at: str(date-time), viewer_seconds: num}, success: bool} # OK\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants\n@desc Fetch participants list of a session\n@required {account_id: str, app_id: str, session_id: str # ID of the session}\n@optional {search: str # The search query string. You can search using the meeting ID or title., page_no: num # The page number from which you want your page search results to be displayed., per_page: num # Number of results per page, sort_order: str(ASC/DESC), sort_by: str(joinedAt/duration), include_peer_events: bool=false # if true, response includes all the peer events of participants., view: str(raw/consolidated)=raw # In breakout room sessions, the view parameter can be set to `raw` for session specific duration for participants or `consolidated` to accumulate breakout room durations.}\n@returns(200) {data: map{participants: [map]}, success: bool} # Get participants list of a particular session\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants/{participant_id}\n@desc Fetch details of a participant\n@required {account_id: str, app_id: str, participant_id: str # ID of the participant, session_id: str # ID of the session}\n@optional {filters: str(device_info/ip_information/precall_network_information/events/quality_stats) # Comma separated list of filters to apply. Note that there must be no spaces between the filters., include_peer_events: bool=false # if true, response includes all the peer events of participant.}\n@returns(200) {data: map{participant: any}, success: bool} # Returns details of a participant along with callstats data.\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary\n@desc Fetch summary of transcripts for a session\n@required {account_id: str, app_id: str, session_id: str}\n@returns(200) {data: map{sessionId: str, summaryDownloadUrl: str, summaryDownloadUrlExpiry: str}, success: bool} # Returns a complete summary of transcripts of a session.\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary\n@desc Generate summary of Transcripts for the session\n@required {account_id: str, app_id: str, session_id: str}\n@returns(2XX) {data: map{message: str, success: bool}, success: bool} # Success\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcript\n@desc Fetch the complete transcript for a session\n@required {account_id: str, app_id: str, session_id: str # ID of the session}\n@returns(200) {data: map{sessionId: str, transcript_download_url: str, transcript_download_url_expiry: str}, success: bool} # Returns the complete transcript of a session.\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks\n@desc Fetch all webhooks details\n@required {account_id: str, app_id: str}\n@returns(200) {data: [map], success: bool} # Operation successful\n@errors {401: Invalid credentials}\n\n@endpoint POST /accounts/{account_id}/realtime/kit/{app_id}/webhooks\n@desc Add a webhook\n@required {account_id: str, app_id: str, events: [str] # Events that this webhook will get triggered by, name: str # Name of the webhook, url: str(uri) # URL this webhook will send events to}\n@optional {enabled: bool=true # Set whether or not the webhook should be active when created}\n@returns(201) {data: map{created_at: str(date-time), enabled: bool, events: [str], id: str(uuid), name: str, updated_at: str(date-time), url: str(uri)}, success: bool} # Webhook registered successfully\n@errors {400: Error - malformed request, 401: Invalid credentials}\n\n@endpoint DELETE /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}\n@desc Delete a webhook\n@required {account_id: str, app_id: str, webhook_id: str # ID of the webhook}\n@returns(200) {data: map{created_at: str(date-time), enabled: bool, events: [str], id: str(uuid), name: str, updated_at: str(date-time), url: str(uri)}, success: bool} # Operation successful\n@errors {400: Error - malformed request, 401: Invalid credentials}\n\n@endpoint GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}\n@desc Fetch details of a webhook\n@required {account_id: str, app_id: str, webhook_id: str # ID of the webhook}\n@returns(200) {data: map{created_at: str(date-time), enabled: bool, events: [str], id: str(uuid), name: str, updated_at: str(date-time), url: str(uri)}, success: bool} # Operation successful\n@errors {400: Error - malformed request, 401: Invalid credentials}\n\n@endpoint PATCH /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}\n@desc Edit a webhook\n@required {account_id: str, app_id: str, webhook_id: str # ID of the webhook}\n@optional {enabled: bool=true, events: [str] # Events that the webhook will get triggered by, name: str # Name of the webhook, url: str(uri) # URL the webhook will send events to}\n@returns(200) {data: map{created_at: str(date-time), enabled: bool, events: [str], id: str(uuid), name: str, updated_at: str(date-time), url: str(uri)}, success: bool} # Operation successful\n@errors {400: Error - malformed request, 401: Invalid credentials}\n@example_request \"{\\n  \\\"name\\\": \\\"test\\\",\\n  \\\"events\\\": [ \\\"meeting.started\\\" ],\\n  \\\"url\\\": \\\"https://new-test-url.com\\\"\\n}\\n\"\n\n@endpoint PUT /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}\n@desc Replace a webhook\n@required {account_id: str, app_id: str, webhook_id: str # ID of the webhook, events: [str] # Events that this webhook will get triggered by, name: str # Name of the webhook, url: str(uri) # URL this webhook will send events to}\n@optional {enabled: bool=true # Set whether or not the webhook should be active when created}\n@returns(200) {data: map{created_at: str(date-time), enabled: bool, events: [str], id: str(uuid), name: str, updated_at: str(date-time), url: str(uri)}, success: bool} # Operation successful\n@errors {400: Error - malformed request, 401: Invalid credentials}\n@example_request \"{\\n  \\\"name\\\": \\\"test\\\",\\n  \\\"events\\\": [ \\\"meeting.started\\\" ],\\n  \\\"url\\\": \\\"https://new-test-url.com\\\"\\n}\\n\"\n\n@endpoint GET /accounts/{account_id}/registrar/domains\n@desc List domains\n@required {account_id: str}\n@returns(200) List domains response\n@errors {4XX: List domains response failure}\n\n@endpoint GET /accounts/{account_id}/registrar/domains/{domain_name}\n@desc Get domain\n@required {domain_name: str, account_id: str}\n@returns(200) Get domain response\n@errors {4XX: Get domain response failure}\n\n@endpoint PUT /accounts/{account_id}/registrar/domains/{domain_name}\n@desc Update domain\n@required {domain_name: str, account_id: str}\n@returns(200) Update domain response\n@errors {4XX: Update domain response failure}\n\n@endpoint POST /accounts/{account_id}/request-tracer/trace\n@desc Request Trace\n@required {account_id: str, method: str # HTTP Method of tracing request, url: str # URL to which perform tracing request}\n@optional {body: map{base64: str, json: map, plain_text: str}, context: map{bot_score: int, geoloc: map, skip_challenge: bool, threat_score: int} # Additional request parameters, cookies: map # Cookies added to tracing request, headers: map # Headers added to tracing request, protocol: str # HTTP Protocol of tracing request, skip_response: bool # Skip sending the request to the Origin server after all rules evaluation}\n@returns(200) Request Trace response\n@errors {4XX: Request Trace response failure}\n@example_request {\"body\":{\"base64\":\"c29tZV9yZXF1ZXN0X2JvZHk=\"},\"context\":{\"geoloc\":{\"city\":\"London\"},\"skip_challenge\":true},\"cookies\":{\"cookie_name_1\":\"cookie_value_1\",\"cookie_name_2\":\"cookie_value_2\"},\"headers\":{\"header_name_1\":\"header_value_1\",\"header_name_2\":\"header_value_2\"},\"method\":\"PUT\",\"protocol\":\"HTTP/1.1\",\"url\":\"https://some.zone/some_path\"}\n\n@endpoint GET /accounts/{account_id}/roles\n@desc List Roles\n@required {account_id: any}\n@optional {page: num=1, per_page: num=20}\n@returns(200) List Roles response\n@errors {4XX: List Roles response failure}\n\n@endpoint GET /accounts/{account_id}/roles/{role_id}\n@desc Role Details\n@required {role_id: str, account_id: any}\n@returns(200) Role Details response\n@errors {4XX: Role Details response failure}\n\n@endpoint GET /accounts/{account_id}/rules/lists\n@desc Get lists\n@required {account_id: str}\n@returns(200) Get lists response.\n@errors {4XX: Get lists response failure.}\n\n@endpoint POST /accounts/{account_id}/rules/lists\n@desc Create a list\n@required {account_id: str, kind: any(ip/redirect/hostname/asn) # The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects)., name: str # An informative name for the list. Use this name in filter and rule expressions.}\n@optional {description: str # An informative summary of the list.}\n@returns(200) Create a list response.\n@errors {4XX: Create a list response failure.}\n\n@endpoint GET /accounts/{account_id}/rules/lists/bulk_operations/{operation_id}\n@desc Get bulk operation status\n@required {operation_id: str, account_id: str}\n@returns(200) Get bulk operation status response.\n@errors {4XX: Get bulk operation status response failure.}\n\n@endpoint DELETE /accounts/{account_id}/rules/lists/{list_id}\n@desc Delete a list\n@required {list_id: str, account_id: str}\n@returns(200) Delete a list response.\n@errors {4XX: Delete a list response failure.}\n\n@endpoint GET /accounts/{account_id}/rules/lists/{list_id}\n@desc Get a list\n@required {list_id: str, account_id: str}\n@returns(200) Get a list response.\n@errors {4XX: Get a list response failure.}\n\n@endpoint PUT /accounts/{account_id}/rules/lists/{list_id}\n@desc Update a list\n@required {list_id: str, account_id: str}\n@optional {description: str # An informative summary of the list.}\n@returns(200) Update a list response.\n@errors {4XX: Update a list response failure.}\n\n@endpoint DELETE /accounts/{account_id}/rules/lists/{list_id}/items\n@desc Delete list items\n@required {list_id: str, account_id: str}\n@optional {items: [map{id!: str}]}\n@returns(200) Delete list items response.\n@errors {4XX: Delete list items response failure.}\n\n@endpoint GET /accounts/{account_id}/rules/lists/{list_id}/items\n@desc Get list items\n@required {list_id: str, account_id: str}\n@optional {cursor: str, per_page: int, search: str}\n@returns(200) Get list items response.\n@errors {4XX: Get list items response failure.}\n\n@endpoint POST /accounts/{account_id}/rules/lists/{list_id}/items\n@desc Create list items\n@required {list_id: str, account_id: str}\n@returns(200) Create list items response.\n@errors {4XX: Create list items response failure.}\n\n@endpoint PUT /accounts/{account_id}/rules/lists/{list_id}/items\n@desc Update all list items\n@required {list_id: str, account_id: str}\n@returns(200) Update all list items response.\n@errors {4XX: Update all list items response failure.}\n\n@endpoint GET /accounts/{account_id}/rules/lists/{list_id}/items/{item_id}\n@desc Get a list item\n@required {item_id: str, list_id: str, account_id: str}\n@returns(200) Get a list item response.\n@errors {4XX: Get a list item response failure.}\n\n@endpoint GET /accounts/{account_id}/rulesets\n@desc List account rulesets\n@required {account_id: str}\n@optional {cursor: str, per_page: int}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint POST /accounts/{account_id}/rulesets\n@desc Create an account ruleset\n@required {account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint\n@desc Get an account entry point ruleset\n@required {ruleset_phase: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PUT /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint\n@desc Update an account entry point ruleset\n@required {ruleset_phase: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions\n@desc List an account entry point ruleset's versions\n@required {ruleset_phase: str, account_id: str}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}\n@desc Get an account entry point ruleset version\n@required {ruleset_version: str, ruleset_phase: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /accounts/{account_id}/rulesets/{ruleset_id}\n@desc Delete an account ruleset\n@required {ruleset_id: str, account_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/{ruleset_id}\n@desc Get an account ruleset\n@required {ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PUT /accounts/{account_id}/rulesets/{ruleset_id}\n@desc Update an account ruleset\n@required {ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint POST /accounts/{account_id}/rulesets/{ruleset_id}/rules\n@desc Create an account ruleset rule\n@required {ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id}\n@desc Delete an account ruleset rule\n@required {rule_id: str, ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PATCH /accounts/{account_id}/rulesets/{ruleset_id}/rules/{rule_id}\n@desc Update an account ruleset rule\n@required {rule_id: str, ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/{ruleset_id}/versions\n@desc List an account ruleset's versions\n@required {ruleset_id: str, account_id: str}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}\n@desc Delete an account ruleset version\n@required {ruleset_version: str, ruleset_id: str, account_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}\n@desc Get an account ruleset version\n@required {ruleset_version: str, ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}\n@desc List an account ruleset version's rules by tag\n@required {rule_tag: str, ruleset_version: str, ruleset_id: str, account_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint POST /accounts/{account_id}/rum/site_info\n@desc Create a Web Analytics site\n@required {account_id: str}\n@optional {auto_install: bool # If enabled, the JavaScript snippet is automatically injected for orange-clouded sites., host: str # The hostname to use for gray-clouded sites., zone_tag: str # The zone identifier.}\n@returns(200) Created Web Analytics site.\n@errors {4XX: Failure response.}\n\n@endpoint GET /accounts/{account_id}/rum/site_info/list\n@desc List Web Analytics sites\n@required {account_id: str}\n@optional {per_page: num, page: num, order_by: str}\n@returns(200) List of Web Analytics sites.\n@errors {4XX: Failure response.}\n\n@endpoint DELETE /accounts/{account_id}/rum/site_info/{site_id}\n@desc Delete a Web Analytics site\n@required {account_id: str, site_id: str}\n@returns(200) Deleted Web Analytics site identifier.\n@errors {4XX: Failure response.}\n\n@endpoint GET /accounts/{account_id}/rum/site_info/{site_id}\n@desc Get a Web Analytics site\n@required {account_id: str, site_id: str}\n@returns(200) Web Analytics site.\n@errors {4XX: Failure response.}\n\n@endpoint PUT /accounts/{account_id}/rum/site_info/{site_id}\n@desc Update a Web Analytics site\n@required {account_id: str, site_id: str}\n@optional {auto_install: bool # If enabled, the JavaScript snippet is automatically injected for orange-clouded sites., enabled: bool # Enables or disables RUM. This option can be used only when auto_install is set to true., host: str # The hostname to use for gray-clouded sites., lite: bool # If enabled, the JavaScript snippet will not be injected for visitors from the EU., zone_tag: str # The zone identifier.}\n@returns(200) Updated Web Analytics site.\n@errors {4XX: Failure response.}\n\n@endpoint POST /accounts/{account_id}/rum/v2/{ruleset_id}/rule\n@desc Create a Web Analytics rule\n@required {account_id: str, ruleset_id: str}\n@optional {host: str, inclusive: bool # Whether the rule includes or excludes traffic from being measured., is_paused: bool # Whether the rule is paused or not., paths: [str]}\n@returns(200) Created Web Analytics rule.\n@errors {4XX: Failure response.}\n\n@endpoint DELETE /accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id}\n@desc Delete a Web Analytics rule\n@required {account_id: str, ruleset_id: str, rule_id: str}\n@returns(200) Deleted Web Analytics rule identifier.\n@errors {4XX: Failure response.}\n\n@endpoint PUT /accounts/{account_id}/rum/v2/{ruleset_id}/rule/{rule_id}\n@desc Update a Web Analytics rule\n@required {account_id: str, ruleset_id: str, rule_id: str}\n@optional {host: str, inclusive: bool # Whether the rule includes or excludes traffic from being measured., is_paused: bool # Whether the rule is paused or not., paths: [str]}\n@returns(200) Updated Web Analytics rule.\n@errors {4XX: Failure response.}\n\n@endpoint GET /accounts/{account_id}/rum/v2/{ruleset_id}/rules\n@desc List rules in Web Analytics ruleset\n@required {account_id: str, ruleset_id: str}\n@returns(200) List of Web Analytics rules in the ruleset.\n@errors {4XX: Failure response.}\n\n@endpoint POST /accounts/{account_id}/rum/v2/{ruleset_id}/rules\n@desc Update Web Analytics rules\n@required {account_id: str, ruleset_id: str}\n@optional {delete_rules: [str] # A list of rule identifiers to delete., rules: [map{host: str, id: str, inclusive: bool, is_paused: bool, paths: [str]}] # A list of rules to create or update.}\n@returns(200) List of modified Web Analytics rules.\n@errors {4XX: Failure response.}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Groups\n@desc List SCIM Groups\n@required {account_id: any}\n@optional {startIndex: int=1, count: int, filter: str}\n@returns(200) List SCIM Groups response\n@errors {4XX: List SCIM Groups response failure}\n\n@endpoint POST /accounts/{account_id}/scim/v2/Groups\n@desc Create SCIM Group\n@required {account_id: any}\n@returns(201) Create SCIM Group response\n@errors {4XX: Create SCIM Group response failure}\n\n@endpoint DELETE /accounts/{account_id}/scim/v2/Groups/{group_id}\n@desc Delete SCIM Group\n@required {account_id: any, group_id: str}\n@returns(204) Delete SCIM Group response (no content)\n@errors {4XX: Delete SCIM Group response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Groups/{group_id}\n@desc Get SCIM Group\n@required {account_id: any, group_id: str}\n@returns(200) Get SCIM Group response\n@errors {4XX: Get SCIM Group response failure}\n\n@endpoint PATCH /accounts/{account_id}/scim/v2/Groups/{group_id}\n@desc Patch SCIM Group\n@required {account_id: any, group_id: str}\n@returns(200) Patch SCIM Group response\n@errors {4XX: Patch SCIM Group response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/ResourceTypes\n@desc List SCIM Resource Types\n@required {account_id: any}\n@returns(200) List SCIM Resource Types response\n@errors {4XX: List SCIM Resource Types response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/ResourceTypes/{resource_type_id}\n@desc Get SCIM Resource Type\n@required {account_id: any, resource_type_id: str(User/Group)}\n@returns(200) Get SCIM Resource Type response\n@errors {4XX: Get SCIM Resource Type response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Schemas\n@desc List SCIM Schemas\n@required {account_id: any}\n@returns(200) List SCIM Schemas response\n@errors {4XX: List SCIM Schemas response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Schemas/{schema_id}\n@desc Get SCIM Schema\n@required {account_id: any, schema_id: str}\n@returns(200) Get SCIM Schema response\n@errors {4XX: Get SCIM Schema response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/ServiceProviderConfig\n@desc Get SCIM Service Provider Config\n@required {account_id: any}\n@returns(200) Get SCIM Service Provider Config response\n@errors {4XX: Get SCIM Service Provider Config response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Users\n@desc List SCIM Users\n@required {account_id: any}\n@optional {startIndex: int=1, count: int, filter: str}\n@returns(200) List SCIM Users response\n@errors {4XX: List SCIM Users response failure}\n\n@endpoint POST /accounts/{account_id}/scim/v2/Users\n@desc Create SCIM User\n@required {account_id: any}\n@returns(201) Create SCIM User response\n@errors {4XX: Create SCIM User response failure}\n\n@endpoint GET /accounts/{account_id}/scim/v2/Users/{user_id}\n@desc Get SCIM User\n@required {account_id: any, user_id: str}\n@returns(200) Get SCIM User response\n@errors {4XX: Get SCIM User response failure}\n\n@endpoint PATCH /accounts/{account_id}/scim/v2/Users/{user_id}\n@desc Patch SCIM User\n@required {account_id: any, user_id: str}\n@returns(200) Patch SCIM User response\n@errors {4XX: Patch SCIM User response failure}\n\n@endpoint PUT /accounts/{account_id}/scim/v2/Users/{user_id}\n@desc Replace SCIM User\n@required {account_id: any, user_id: str}\n@returns(200) Replace SCIM User response\n@errors {4XX: Replace SCIM User response failure}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/acls\n@desc List ACLs\n@required {account_id: str}\n@returns(200) List ACLs response.\n@errors {4XX: List ACLs response failure.}\n\n@endpoint POST /accounts/{account_id}/secondary_dns/acls\n@desc Create ACL\n@required {account_id: str, ip_range: str # Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively., name: str # The name of the acl.}\n@returns(200) Create ACL response.\n@errors {4XX: Create ACL response failure.}\n\n@endpoint DELETE /accounts/{account_id}/secondary_dns/acls/{acl_id}\n@desc Delete ACL\n@required {acl_id: str, account_id: str}\n@returns(200) Delete ACL response.\n@errors {4XX: Delete ACL response failure.}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/acls/{acl_id}\n@desc ACL Details\n@required {acl_id: str, account_id: str}\n@returns(200) ACL Details response.\n@errors {4XX: ACL Details response failure.}\n\n@endpoint PUT /accounts/{account_id}/secondary_dns/acls/{acl_id}\n@desc Update ACL\n@required {acl_id: str, account_id: str, id: str, ip_range: str # Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively., name: str # The name of the acl.}\n@returns(200) Update ACL response.\n@errors {4XX: Update ACL response failure.}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/peers\n@desc List Peers\n@required {account_id: str}\n@returns(200) List Peers response.\n@errors {4XX: List Peers response failure.}\n\n@endpoint POST /accounts/{account_id}/secondary_dns/peers\n@desc Create Peer\n@required {account_id: str, name: str # The name of the peer.}\n@returns(200) Create Peer response.\n@errors {4XX: Create Peer response failure.}\n\n@endpoint DELETE /accounts/{account_id}/secondary_dns/peers/{peer_id}\n@desc Delete Peer\n@required {peer_id: str, account_id: str}\n@returns(200) Delete Peer response.\n@errors {4XX: Delete Peer response failure.}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/peers/{peer_id}\n@desc Peer Details\n@required {peer_id: str, account_id: str}\n@returns(200) Peer Details response.\n@errors {4XX: Peer Details response failure.}\n\n@endpoint PUT /accounts/{account_id}/secondary_dns/peers/{peer_id}\n@desc Update Peer\n@required {peer_id: str, account_id: str, id: str, name: str # The name of the peer.}\n@optional {ip: str # IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to., ixfr_enable: bool # Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones., port: num # DNS port of primary or secondary nameserver, depending on what zone this peer is linked to., tsig_id: str # TSIG authentication will be used for zone transfer if configured.}\n@returns(200) Update Peer response.\n@errors {4XX: Update Peer response failure.}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/tsigs\n@desc List TSIGs\n@required {account_id: str}\n@returns(200) List TSIGs response.\n@errors {4XX: List TSIGs response failure.}\n\n@endpoint POST /accounts/{account_id}/secondary_dns/tsigs\n@desc Create TSIG\n@required {account_id: str, algo: str # TSIG algorithm., id: str, name: str # TSIG key name., secret: str # TSIG secret.}\n@returns(200) Create TSIG response.\n@errors {4XX: Create TSIG response failure.}\n\n@endpoint DELETE /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n@desc Delete TSIG\n@required {tsig_id: str, account_id: str}\n@returns(200) Delete TSIG response.\n@errors {4XX: Delete TSIG response failure.}\n\n@endpoint GET /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n@desc TSIG Details\n@required {tsig_id: str, account_id: str}\n@returns(200) TSIG Details response.\n@errors {4XX: TSIG Details response failure.}\n\n@endpoint PUT /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}\n@desc Update TSIG\n@required {tsig_id: str, account_id: str, algo: str # TSIG algorithm., id: str, name: str # TSIG key name., secret: str # TSIG secret.}\n@returns(200) Update TSIG response.\n@errors {4XX: Update TSIG response failure.}\n\n@endpoint GET /accounts/{account_id}/secrets_store/quota\n@desc View secret usage\n@required {account_id: str}\n@returns(200) Usage and quota\n@errors {4XX: List store secrets response failure}\n\n@endpoint GET /accounts/{account_id}/secrets_store/stores\n@desc List account stores\n@required {account_id: str}\n@optional {direction: str(asc/desc)=desc # Direction to sort objects, page: int # Page number, per_page: int # Number of objects to return per page, order: str(name/comment/created/modified/status)=created # Order secrets by values in the given field}\n@returns(200) List account stores response\n@errors {4XX: List account stores response failure}\n\n@endpoint POST /accounts/{account_id}/secrets_store/stores\n@desc Create a store\n@required {account_id: str}\n@returns(200) store details\n@errors {4XX: List store secrets response failure}\n\n@endpoint DELETE /accounts/{account_id}/secrets_store/stores/{store_id}\n@desc Delete a store\n@required {account_id: str, store_id: str}\n@returns(200) store details\n@errors {4XX: failure}\n\n@endpoint GET /accounts/{account_id}/secrets_store/stores/{store_id}\n@desc Get a store by ID\n@required {account_id: str, store_id: str}\n@returns(200) store details\n@errors {4XX: failure}\n\n@endpoint DELETE /accounts/{account_id}/secrets_store/stores/{store_id}/secrets\n@desc Delete secrets\n@required {account_id: str, store_id: str}\n@returns(200) secret detail\n@errors {4XX: List store secrets response failure}\n\n@endpoint GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets\n@desc List store secrets\n@required {account_id: str, store_id: str}\n@optional {direction: str(asc/desc)=desc # Direction to sort objects, page: int # Page number, per_page: int # Number of objects to return per page, search: str # Search secrets using a filter string, filtering across name and comment, order: str(name/comment/created/modified/status)=created # Order secrets by values in the given field, scopes: [[str]] # Only secrets with the given scopes will be returned}\n@returns(200) List store secrets response\n@errors {4XX: List store secrets response failure}\n\n@endpoint POST /accounts/{account_id}/secrets_store/stores/{store_id}/secrets\n@desc Create a secret\n@required {account_id: str, store_id: str}\n@returns(200) secret detail\n@errors {4XX: List store secrets response failure}\n\n@endpoint DELETE /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n@desc Delete a secret\n@required {account_id: str, store_id: str, secret_id: str}\n@returns(200) secret detail\n@errors {4XX: failure}\n\n@endpoint GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n@desc Get a secret by ID\n@required {account_id: str, store_id: str, secret_id: str}\n@returns(200) secret detail\n@errors {4XX: failure}\n\n@endpoint PATCH /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}\n@desc Patch a secret\n@required {account_id: str, store_id: str, secret_id: str}\n@optional {comment: str # Freeform text describing the secret, scopes: [str] # The list of services that can use this secret.}\n@returns(200) secret detail\n@errors {4XX: failure}\n\n@endpoint POST /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}/duplicate\n@desc Duplicate Secret\n@required {account_id: str, store_id: str, secret_id: str, name: str # The name of the secret, scopes: [str] # The list of services that can use this secret.}\n@optional {comment: str # Freeform text describing the secret}\n@returns(200) secret detail\n@errors {4XX: failure}\n\n@endpoint GET /accounts/{account_id}/security-center/insights\n@desc Retrieves Security Center Insights\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str], page: any=1, per_page: any=25}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/security-center/insights/class\n@desc Retrieves Security Center Insight Counts by Class\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/security-center/insights/severity\n@desc Retrieves Security Center Insight Counts by Severity\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/security-center/insights/type\n@desc Retrieves Security Center Insight Counts by Type\n@required {account_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/security-center/insights/{issue_id}/context\n@desc Retrieves Security Center Insight Context\n@required {account_id: str, issue_id: str}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint PUT /accounts/{account_id}/security-center/insights/{issue_id}/dismiss\n@desc Archives Security Center Insight\n@required {account_id: str, issue_id: str}\n@optional {dismiss: bool=true}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /accounts/{account_id}/shares\n@desc List account shares\n@required {account_id: str}\n@optional {status: str # Filter shares by status., kind: str # Filter shares by kind., target_type: str # Filter shares by target_type., resource_types: [str] # Filter share resources by resource_types., order: str(name/created)=created # Order shares by values in the given field., direction: str(asc/desc)=asc # Direction to sort objects., page: int # Page number., per_page: int # Number of objects to return per page., include_resources: bool # Include resources in the response., include_recipient_counts: bool # Include recipient counts in the response.}\n@returns(200) List account shares response.\n@errors {4XX: List account shares response failure., 5XX: List account shares response failure.}\n\n@endpoint POST /accounts/{account_id}/shares\n@desc Create a new share\n@required {account_id: str, name: str # The name of the share., recipients: [map{account_id: str, organization_id: str}], resources: [map{meta!: map, resource_account_id!: str, resource_id!: str, resource_type!: str}]}\n@returns(201) Share created.\n@errors {4XX: Create share failure., 5XX: Create share failure.}\n\n@endpoint DELETE /accounts/{account_id}/shares/{share_id}\n@desc Delete a share\n@required {account_id: str, share_id: str}\n@returns(200) Share deleted.\n@errors {4XX: Delete share failure., 5XX: Delete share failure.}\n\n@endpoint GET /accounts/{account_id}/shares/{share_id}\n@desc Get account share by ID\n@required {account_id: str, share_id: str}\n@optional {include_resources: bool # Include resources in the response., include_recipient_counts: bool # Include recipient counts in the response.}\n@returns(200) Get account share response.\n@errors {4XX: Get account share response failure., 5XX: Get account share response failure.}\n\n@endpoint PUT /accounts/{account_id}/shares/{share_id}\n@desc Update a share\n@required {account_id: str, share_id: str, name: str # The name of the share.}\n@returns(200) Share updated.\n@errors {4XX: Update share failure., 5XX: Update share failure.}\n\n@endpoint GET /accounts/{account_id}/shares/{share_id}/recipients\n@desc List share recipients by share ID\n@required {account_id: str, share_id: str}\n@optional {include_resources: bool # Include resources in the response., page: int # Page number., per_page: int # Number of objects to return per page.}\n@returns(200) List account share recipients response.\n@errors {4XX: List account share recipients response failure., 5XX: List account share recipients response failure.}\n\n@endpoint POST /accounts/{account_id}/shares/{share_id}/recipients\n@desc Create a new share recipient\n@required {account_id: str, share_id: str}\n@optional {account_id: str # Account identifier., organization_id: str # Organization identifier.}\n@returns(201) Share recipient created.\n@errors {4XX: Create share recipient failure., 5XX: Create share recipient failure.}\n\n@endpoint PUT /accounts/{account_id}/shares/{share_id}/recipients\n@desc Update a share's recipients\n@required {account_id: str, share_id: str}\n@returns(204) Empty body\n@errors {4XX: Update share recipients failure., 5XX: Update share recipients failure.}\n\n@endpoint DELETE /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}\n@desc Delete a share recipient\n@required {account_id: str, share_id: str, recipient_id: str}\n@returns(200) Share recipient deleted.\n@errors {4XX: Delete share recipient failure., 5XX: Delete share recipient failure.}\n\n@endpoint GET /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}\n@desc Get share recipient by ID\n@required {account_id: str, share_id: str, recipient_id: str}\n@optional {include_resources: bool # Include resources in the response.}\n@returns(200) Get account share recipient response.\n@errors {4XX: Get account share recipient response failure., 5XX: Get account share recipient response failure.}\n\n@endpoint GET /accounts/{account_id}/shares/{share_id}/resources\n@desc List share resources by share ID\n@required {account_id: str, share_id: str}\n@optional {status: str # Filter share resources by status., resource_type: str # Filter share resources by resource_type., page: int # Page number., per_page: int # Number of objects to return per page.}\n@returns(200) List account share resources response.\n@errors {4XX: List account share resources response failure., 5XX: List account share resources response failure.}\n\n@endpoint POST /accounts/{account_id}/shares/{share_id}/resources\n@desc Create a new share resource\n@required {account_id: str, share_id: str, meta: map # Resource Metadata., resource_account_id: str # Account identifier., resource_id: str # Share Resource identifier., resource_type: str(custom-ruleset/gateway-policy/gateway-destination-ip/gateway-block-page-settings/gateway-extended-email-matching) # Resource Type.}\n@returns(201) Share resource created.\n@errors {4XX: Create share resource failure., 5XX: Create share resource failure.}\n\n@endpoint DELETE /accounts/{account_id}/shares/{share_id}/resources/{resource_id}\n@desc Delete a share resource\n@required {account_id: str, share_id: str, resource_id: str}\n@returns(200) Share resource deleted.\n@errors {4XX: Delete share resource failure., 5XX: Delete share resource failure.}\n\n@endpoint GET /accounts/{account_id}/shares/{share_id}/resources/{resource_id}\n@desc Get share resource by ID\n@required {account_id: str, share_id: str, resource_id: str}\n@returns(200) Get account share resource response.\n@errors {4XX: Get account share resource response failure., 5XX: Get account share resource response failure.}\n\n@endpoint PUT /accounts/{account_id}/shares/{share_id}/resources/{resource_id}\n@desc Update a share resource\n@required {account_id: str, share_id: str, resource_id: str, meta: map # Resource Metadata.}\n@returns(200) Share resource updated.\n@errors {4XX: Update share resource failure., 5XX: Update share resource failure.}\n\n@endpoint GET /accounts/{account_id}/slurper/jobs\n@desc List jobs\n@required {account_id: str}\n@optional {limit: int, offset: int}\n@returns(200) A list of jobs\n@errors {4XX: Failure response}\n\n@endpoint POST /accounts/{account_id}/slurper/jobs\n@desc Create a job\n@required {account_id: str}\n@optional {overwrite: bool=true, source: map, target: map{bucket!: str, jurisdiction: str, secret!: map, vendor!: str}}\n@returns(201) Job created\n@errors {409: Maximum number of concurrent jobs has been reached, 4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/jobs/abortAll\n@desc Abort all jobs\n@required {account_id: str}\n@returns(200) All jobs aborted\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/slurper/jobs/{job_id}\n@desc Get job details\n@required {account_id: str, job_id: str}\n@returns(200) Job details\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/jobs/{job_id}/abort\n@desc Abort a job\n@required {account_id: str, job_id: str}\n@returns(200) Job aborted\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/slurper/jobs/{job_id}/logs\n@desc Get job logs\n@required {account_id: str, job_id: str}\n@optional {limit: int, offset: int}\n@returns(200) Job logs\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/jobs/{job_id}/pause\n@desc Pause a job\n@required {account_id: str, job_id: str}\n@returns(200) Job paused\n@errors {409: Job is not paused, 4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/slurper/jobs/{job_id}/progress\n@desc Get job progress\n@required {account_id: str, job_id: str}\n@returns(200) Job progress\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/jobs/{job_id}/resume\n@desc Resume a job\n@required {account_id: str, job_id: str}\n@returns(200) Job resumed\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/source/connectivity-precheck\n@desc Check source connectivity\n@required {account_id: str}\n@returns(200) Source connectivity checked\n@errors {4XX: Failure response}\n\n@endpoint PUT /accounts/{account_id}/slurper/target/connectivity-precheck\n@desc Check target connectivity\n@required {account_id: str, bucket: str, secret: map{accessKeyId!: str, secretAccessKey!: str}, vendor: str}\n@optional {jurisdiction: str(default/eu/fedramp)}\n@returns(200) Target connectivity checked\n@errors {4XX: Failure response}\n\n@endpoint GET /accounts/{account_id}/sso_connectors\n@desc Get all SSO connectors\n@required {account_id: any}\n@returns(200) Get all SSO connectors response\n@errors {4XX: Get all SSO connectors response failure}\n\n@endpoint POST /accounts/{account_id}/sso_connectors\n@desc Initialize new SSO connector\n@required {account_id: any, email_domain: str # Email domain of the new SSO connector}\n@optional {begin_verification: bool=true # Begin the verification process after creation, use_fedramp_language: bool=false # Controls the display of FedRAMP language to the user during SSO login}\n@returns(200) Initialize new SSO connector response\n@errors {4XX: Initialize new SSO connector response failure}\n\n@endpoint DELETE /accounts/{account_id}/sso_connectors/{sso_connector_id}\n@desc Delete SSO connector\n@required {account_id: any, sso_connector_id: any}\n@returns(200) Delete SSO connector response\n@errors {4XX: Delete SSO connector response failure}\n\n@endpoint GET /accounts/{account_id}/sso_connectors/{sso_connector_id}\n@desc Get single SSO connector\n@required {account_id: any, sso_connector_id: any}\n@returns(200) Get SSO connector response\n@errors {4XX: Get SSO connector response failure}\n\n@endpoint PATCH /accounts/{account_id}/sso_connectors/{sso_connector_id}\n@desc Update SSO connector state\n@required {account_id: any, sso_connector_id: any}\n@optional {enabled: bool # SSO Connector enabled state, use_fedramp_language: bool=false # Controls the display of FedRAMP language to the user during SSO login}\n@returns(200) Update SSO connector state response\n@errors {4XX: Update SSO connector state response failure}\n\n@endpoint POST /accounts/{account_id}/sso_connectors/{sso_connector_id}/begin_verification\n@desc Begin SSO connector verification\n@required {account_id: any, sso_connector_id: any}\n@returns(200) Begin SSO connector verification process response\n@errors {4XX: Begin SSO connector verification process response failure}\n\n@endpoint GET /accounts/{account_id}/storage/kv/namespaces\n@desc List Namespaces\n@required {account_id: str}\n@optional {page: num=1, per_page: num=20, order: str(id/title), direction: str(asc/desc)}\n@returns(200) List Namespaces response.\n@errors {4XX: List Namespaces response failure.}\n\n@endpoint POST /accounts/{account_id}/storage/kv/namespaces\n@desc Create a Namespace\n@required {account_id: str, title: str # A human-readable string name for a Namespace.}\n@returns(200) Create a Namespace response.\n@errors {4XX: Create a Namespace response failure.}\n\n@endpoint DELETE /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n@desc Remove a Namespace\n@required {namespace_id: str, account_id: str}\n@returns(200) Remove a Namespace response.\n@errors {4XX: Remove a Namespace response failure.}\n\n@endpoint GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n@desc Get a Namespace\n@required {namespace_id: str, account_id: str}\n@returns(200) Get a Namespace response.\n@errors {4XX: Get a Namespace response failure.}\n\n@endpoint PUT /accounts/{account_id}/storage/kv/namespaces/{namespace_id}\n@desc Rename a Namespace\n@required {namespace_id: str, account_id: str, title: str # A human-readable string name for a Namespace.}\n@returns(200) Rename a Namespace response.\n@errors {4XX: Rename a Namespace response failure.}\n\n@endpoint DELETE /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk\n@desc Delete multiple key-value pairs\n@required {namespace_id: str, account_id: str}\n@returns(200) Delete multiple key-value pairs response.\n@errors {4XX: Delete multiple key-value pairs response failure.}\n\n@endpoint PUT /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk\n@desc Write multiple key-value pairs\n@required {namespace_id: str, account_id: str}\n@returns(200) Write multiple key-value pairs response.\n@errors {4XX: Write multiple key-value pairs response failure.}\n\n@endpoint POST /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/delete\n@desc Delete multiple key-value pairs\n@required {namespace_id: str, account_id: str}\n@returns(200) Delete multiple key-value pairs response.\n@errors {4XX: Delete multiple key-value pairs response failure.}\n\n@endpoint POST /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/bulk/get\n@desc Get multiple key-value pairs\n@required {namespace_id: str, account_id: str, keys: [str] # Array of keys to retrieve (maximum of 100).}\n@optional {type: str(text/json)=text # Whether to parse JSON values in the response., withMetadata: bool=false # Whether to include metadata in the response.}\n@returns(200) Get multiple key-value pairs response.\n@errors {4XX: Get multiple key-value pairs response failure.}\n\n@endpoint GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/keys\n@desc List a Namespace's Keys\n@required {namespace_id: str, account_id: str}\n@optional {limit: num=1000, prefix: str, cursor: str}\n@returns(200) List a Namespace's Keys response.\n@errors {4XX: List a Namespace's Keys response failure.}\n\n@endpoint GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name}\n@desc Read the metadata for a key\n@required {key_name: str, namespace_id: str, account_id: str}\n@returns(200) Read the metadata for a key response.\n@errors {4XX: Read the metadata for a key response failure.}\n\n@endpoint DELETE /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n@desc Delete key-value pair\n@required {key_name: str, namespace_id: str, account_id: str}\n@returns(200) Delete key-value pair response.\n@errors {4XX: Delete key-value pair response failure.}\n\n@endpoint GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n@desc Read key-value pair\n@required {key_name: str, namespace_id: str, account_id: str}\n@returns(200) Read key-value pair response.\n@errors {4XX: Read key-value pair response failure.}\n\n@endpoint PUT /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}\n@desc Write key-value pair with optional metadata\n@required {key_name: str, namespace_id: str, account_id: str}\n@optional {expiration: num, expiration_ttl: num}\n@returns(200) Write key-value pair with metadata response.\n@errors {4XX: Write key-value pair with metadata response failure.}\n\n@endpoint GET /accounts/{account_id}/stream\n@desc List videos\n@required {account_id: str}\n@optional {status: str, creator: str, type: str, asc: bool, video_name: str, search: str, start: str(date-time), end: str(date-time), include_counts: bool}\n@returns(200) List videos response.\n@errors {4XX: List videos response failure.}\n\n@endpoint POST /accounts/{account_id}/stream\n@desc Initiate video uploads using TUS\n@required {Tus-Resumable: str, Upload-Length: int, account_id: str}\n@optional {Upload-Creator: str, Upload-Metadata: str, direct_user: bool}\n@returns(200) Initiate video uploads using TUS response.\n@errors {4XX: Initiate video uploads using TUS response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/clip\n@desc Clip videos given a start and end time\n@required {account_id: str, clippedFromVideoUID: str # The unique video identifier (UID)., endTimeSeconds: int # Specifies the end time for the video clip in seconds., startTimeSeconds: int # Specifies the start time for the video clip in seconds.}\n@optional {allowedOrigins: [str] # Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin., creator: str # A user-defined identifier for the media creator., maxDurationSeconds: int # The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown., requireSignedURLs: bool=false # Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video., thumbnailTimestampPct: num=0 # The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video., watermark: map{uid: str}}\n@returns(200) Clip videos given a start and end time response.\n@errors {4XX: Clip videos given a start and end time response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/copy\n@desc Upload videos from a URL\n@required {account_id: str, url: str(uri) # A video's URL. The server must be publicly routable and support `HTTP HEAD` requests and `HTTP GET` range requests. The server should respond to `HTTP HEAD` requests with a `content-range` header that includes the size of the file.}\n@optional {Upload-Creator: str, allowedOrigins: [str] # Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin., creator: str # A user-defined identifier for the media creator., meta: map # A user modifiable key-value store used to reference other systems of record for managing videos., requireSignedURLs: bool=false # Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video., scheduledDeletion: str(date-time) # Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a `null` value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time., thumbnailTimestampPct: num=0 # The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video., watermark: map{uid: str}}\n@returns(200) Upload videos from a URL response.\n@errors {4XX: Upload videos from a URL response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/direct_upload\n@desc Upload videos via direct upload URLs\n@required {account_id: str, maxDurationSeconds: int # The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown.}\n@optional {Upload-Creator: str, allowedOrigins: [str] # Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin., creator: str # A user-defined identifier for the media creator., expiry: str(date-time)=Now + 30 minutes # The date and time after upload when videos will not be accepted., meta: map # A user modifiable key-value store used to reference other systems of record for managing videos., requireSignedURLs: bool=false # Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video., scheduledDeletion: str(date-time) # Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a `null` value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time., thumbnailTimestampPct: num=0 # The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video., watermark: map{uid: str}}\n@returns(200) Upload videos via direct upload URLs response.\n@errors {4XX: Upload videos via direct upload URLs response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/keys\n@desc List signing keys\n@required {account_id: str}\n@returns(200) List signing keys response.\n@errors {4XX: List signing keys response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/keys\n@desc Create signing keys\n@required {account_id: str}\n@returns(200) Create signing keys response.\n@errors {4XX: Create signing keys response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/keys/{identifier}\n@desc Delete signing keys\n@required {identifier: str, account_id: str}\n@returns(200) Delete signing keys response.\n@errors {4XX: Delete signing keys response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/live_inputs\n@desc List live inputs\n@required {account_id: str}\n@optional {include_counts: bool}\n@returns(200) List live inputs response.\n@errors {4XX: List live inputs response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/live_inputs\n@desc Create a live input\n@required {account_id: str}\n@optional {defaultCreator: str # Sets the creator ID asssociated with this live input., deleteRecordingAfterDays: num # Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a `null` value to remove an existing scheduled deletion., enabled: bool=true # Indicates whether the live input is enabled and can accept streams., meta: map # A user modifiable key-value store used to reference other systems of record for managing live inputs., recording: map{allowedOrigins: [str], hideLiveViewerCount: bool, mode: str, requireSignedURLs: bool, timeoutSeconds: int} # Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.}\n@returns(200) Create a live input response.\n@errors {4XX: Create a live input response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n@desc Delete a live input\n@required {live_input_identifier: str, account_id: str}\n@returns(200) Delete a live input response.\n@errors {4XX: Delete a live input response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n@desc Retrieve a live input\n@required {live_input_identifier: str, account_id: str}\n@returns(200) Retrieve a live input response.\n@errors {4XX: Retrieve a live input response failure.}\n\n@endpoint PUT /accounts/{account_id}/stream/live_inputs/{live_input_identifier}\n@desc Update a live input\n@required {live_input_identifier: str, account_id: str}\n@optional {defaultCreator: str # Sets the creator ID asssociated with this live input., deleteRecordingAfterDays: num # Indicates the number of days after which the live inputs recordings will be deleted. When a stream completes and the recording is ready, the value is used to calculate a scheduled deletion date for that recording. Omit the field to indicate no change, or include with a `null` value to remove an existing scheduled deletion., enabled: bool=true # Indicates whether the live input is enabled and can accept streams., meta: map # A user modifiable key-value store used to reference other systems of record for managing live inputs., recording: map{allowedOrigins: [str], hideLiveViewerCount: bool, mode: str, requireSignedURLs: bool, timeoutSeconds: int} # Records the input to a Cloudflare Stream video. Behavior depends on the mode. In most cases, the video will initially be viewable as a live video and transition to on-demand after a condition is satisfied.}\n@returns(200) Update a live input response.\n@errors {4XX: Update a live input response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/disable\n@desc Disable a live input\n@required {live_input_identifier: str, account_id: str}\n@returns(200) Disable a live input response.\n@errors {4XX: Disable a live input response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/enable\n@desc Enable a live input\n@required {live_input_identifier: str, account_id: str}\n@returns(200) Enable a live input response.\n@errors {4XX: Enable a live input response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs\n@desc List all outputs associated with a specified live input\n@required {live_input_identifier: str, account_id: str}\n@returns(200) List all outputs associated with a specified live input response.\n@errors {4XX: List all outputs associated with a specified live input response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs\n@desc Create a new output, connected to a live input\n@required {live_input_identifier: str, account_id: str, streamKey: str # The streamKey used to authenticate against an output's target., url: str # The URL an output uses to restream.}\n@optional {enabled: bool=true # When enabled, live video streamed to the associated live input will be sent to the output URL. When disabled, live video will not be sent to the output URL, even when streaming to the associated live input. Use this to control precisely when you start and stop simulcasting to specific destinations like YouTube and Twitch.}\n@returns(200) Create a new output, connected to a live input response.\n@errors {4XX: Create a new output, connected to a live input response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}\n@desc Delete an output\n@required {output_identifier: str, live_input_identifier: str, account_id: str}\n@returns(200) Delete an output response.\n@errors {4XX: Delete an output response failure.}\n\n@endpoint PUT /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs/{output_identifier}\n@desc Update an output\n@required {output_identifier: str, live_input_identifier: str, account_id: str, enabled: bool=true # When enabled, live video streamed to the associated live input will be sent to the output URL. When disabled, live video will not be sent to the output URL, even when streaming to the associated live input. Use this to control precisely when you start and stop simulcasting to specific destinations like YouTube and Twitch.}\n@returns(200) Update an output response.\n@errors {4XX: Update an output response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/storage-usage\n@desc Storage use\n@required {account_id: str}\n@optional {creator: str}\n@returns(200) Returns information about an account's storage use response.\n@errors {4XX: Returns information about an account's storage use response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/watermarks\n@desc List watermark profiles\n@required {account_id: str}\n@returns(200) List watermark profiles response.\n@errors {4XX: List watermark profiles response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/watermarks\n@desc Create watermark profiles via basic upload\n@required {account_id: str}\n@returns(200) Create watermark profiles via basic upload response.\n@errors {4XX: Create watermark profiles via basic upload response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/watermarks/{identifier}\n@desc Delete watermark profiles\n@required {identifier: str, account_id: str}\n@returns(200) Delete watermark profiles response.\n@errors {4XX: Delete watermark profiles response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/watermarks/{identifier}\n@desc Watermark profile details\n@required {identifier: str, account_id: str}\n@returns(200) Watermark profile details response.\n@errors {4XX: Watermark profile details response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/webhook\n@desc Delete webhooks\n@required {account_id: str}\n@returns(200) Delete webhooks response.\n@errors {4XX: Delete webhooks response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/webhook\n@desc View webhooks\n@required {account_id: str}\n@returns(200) View webhooks response.\n@errors {4XX: View webhooks response failure.}\n\n@endpoint PUT /accounts/{account_id}/stream/webhook\n@desc Create webhooks\n@required {account_id: str, notificationUrl: str(uri) # The URL where webhooks will be sent.}\n@returns(200) Create webhooks response.\n@errors {4XX: Create webhooks response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/{identifier}\n@desc Delete video\n@required {identifier: str, account_id: str}\n@returns(200) Delete video response.\n@errors {4XX: Delete video response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}\n@desc Retrieve video details\n@required {identifier: str, account_id: str}\n@returns(200) Retrieve video details response.\n@errors {4XX: Retrieve video details response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}\n@desc Edit video details\n@required {identifier: str, account_id: str}\n@optional {allowedOrigins: [str] # Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin., creator: str # A user-defined identifier for the media creator., maxDurationSeconds: int # The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown., meta: map # A user modifiable key-value store used to reference other systems of record for managing videos., requireSignedURLs: bool=false # Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video., scheduledDeletion: str(date-time) # Indicates the date and time at which the video will be deleted. Omit the field to indicate no change, or include with a `null` value to remove an existing scheduled deletion. If specified, must be at least 30 days from upload time., thumbnailTimestampPct: num=0 # The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video.  If this value is not set, the default thumbnail image is taken from 0s of the video., uploadExpiry: str(date-time) # The date and time when the video upload URL is no longer valid for direct user uploads.}\n@returns(200) Edit video details response.\n@errors {4XX: Edit video details response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/audio\n@desc List additional audio tracks on a video\n@required {account_id: str, identifier: str}\n@returns(200) Lists additional audio tracks on a video.\n@errors {4XX: Lists additional audio tracks on a video response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}/audio/copy\n@desc Add audio tracks to a video\n@required {account_id: str, identifier: str, label: str # A string to uniquely identify the track amongst other audio track labels for the specified video.}\n@optional {url: str(uri) # An audio track URL. The server must be publicly routable and support `HTTP HEAD` requests and `HTTP GET` range requests. The server should respond to `HTTP HEAD` requests with a `content-range` header that includes the size of the file.}\n@returns(200) Add audio tracks to a video.\n@errors {4XX: Add audio tracks to a video response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}\n@desc Delete additional audio tracks on a video\n@required {account_id: str, identifier: str, audio_identifier: str}\n@returns(200) Deletes additional audio tracks on a video.\n@errors {4XX: Deletes additional audio tracks on a video response failure.}\n\n@endpoint PATCH /accounts/{account_id}/stream/{identifier}/audio/{audio_identifier}\n@desc Edit additional audio tracks on a video\n@required {account_id: str, identifier: str, audio_identifier: str}\n@optional {default: bool=false # Denotes whether the audio track will be played by default in a player., label: str # A string to uniquely identify the track amongst other audio track labels for the specified video.}\n@returns(200) Edits additional audio tracks on a video.\n@errors {4XX: Edits additional audio tracks on a video response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/captions\n@desc List captions or subtitles\n@required {identifier: str, account_id: str}\n@returns(200) List captions or subtitles response.\n@errors {4XX: List captions or subtitles response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/{identifier}/captions/{language}\n@desc Delete captions or subtitles\n@required {language: str, identifier: str, account_id: str}\n@returns(200) Delete captions or subtitles response.\n@errors {4XX: Delete captions or subtitles response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/captions/{language}\n@desc List captions or subtitles for a provided language\n@required {language: str, identifier: str, account_id: str}\n@returns(200) List captions or subtitles response for a provided language.\n@errors {4XX: List captions or subtitles response for a provided language.}\n\n@endpoint PUT /accounts/{account_id}/stream/{identifier}/captions/{language}\n@desc Upload captions or subtitles\n@required {language: str, identifier: str, account_id: str}\n@returns(200) Upload captions or subtitles response.\n@errors {4XX: Upload captions or subtitles response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}/captions/{language}/generate\n@desc Generate captions or subtitles for a provided language via AI\n@required {language: str, identifier: str, account_id: str}\n@returns(200) Generate captions or subtitles response for a provided language.\n@errors {4XX: Generate captions or subtitles response for a provided language.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/captions/{language}/vtt\n@desc Return WebVTT captions for a provided language\n@required {language: str, identifier: str, account_id: str}\n@returns(200) Return WebVTT caption or subtitle response.\n@errors {4XX: Return WebVTT caption or subtitle response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/{identifier}/downloads\n@desc Delete downloads\n@required {identifier: str, account_id: str}\n@returns(200) Delete downloads response.\n@errors {4XX: Delete downloads response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/downloads\n@desc List downloads\n@required {identifier: str, account_id: str}\n@returns(200) List downloads response.\n@errors {4XX: List downloads response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}/downloads\n@desc Create downloads\n@required {identifier: str, account_id: str}\n@returns(200) Create downloads response.\n@errors {4XX: Create downloads response failure.}\n\n@endpoint DELETE /accounts/{account_id}/stream/{identifier}/downloads/{download_type}\n@desc Delete download\n@required {identifier: str, account_id: str, download_type: str}\n@returns(200) Delete downloads response.\n@errors {4XX: Delete downloads response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}/downloads/{download_type}\n@desc Create download\n@required {identifier: str, account_id: str, download_type: str}\n@returns(200) Create download of specified type response.\n@errors {4XX: Create downloads of specified type response failure.}\n\n@endpoint GET /accounts/{account_id}/stream/{identifier}/embed\n@desc Retrieve embed Code HTML\n@required {identifier: str, account_id: str}\n@returns(200) Retreieve embed Code HTML response.\n@errors {4XX: Retreieve embed Code HTML response failure.}\n\n@endpoint POST /accounts/{account_id}/stream/{identifier}/token\n@desc Create signed URL tokens for videos\n@required {identifier: str, account_id: str}\n@optional {accessRules: [map{action: str, country: [str], ip: [str], type: str}] # The optional list of access rule constraints on the token. Access can be blocked or allowed based on an IP, IP range, or by country. Access rules are evaluated from first to last. If a rule matches, the associated action is applied and no further rules are evaluated., downloadable: bool=false # The optional boolean value that enables using signed tokens to access MP4 download links for a video., exp: int # The optional unix epoch timestamp that specficies the time after a token is not accepted. The maximum time specification is 24 hours from issuing time. If this field is not set, the default is one hour after issuing., id: str # The optional ID of a Stream signing key. If present, the `pem` field is also required., nbf: int # The optional unix epoch timestamp that specifies the time before a the token is not accepted. If this field is not set, the default is one hour before issuing., pem: str # The optional base64 encoded private key in PEM format associated with a Stream signing key. If present, the `id` field is also required.}\n@returns(200) Create signed URL tokens for videos response.\n@errors {4XX: Create signed URL tokens for videos response failure.}\n\n@endpoint GET /accounts/{account_id}/subscriptions\n@desc List Subscriptions\n@required {account_id: str}\n@returns(200) List Subscriptions response\n@errors {4XX: List Subscriptions response failure}\n\n@endpoint POST /accounts/{account_id}/subscriptions\n@desc Create Subscription\n@required {account_id: str}\n@optional {app: any, component_values: [map{default: num, name: str, price: num, value: num}] # The list of add-ons subscribed to., currency: str # The monetary unit in which pricing information is displayed., current_period_end: str(date-time) # The end of the current period and also when the next billing is due., current_period_start: str(date-time) # When the current billing period started. May match initial_period_start if this is the first period., frequency: str(weekly/monthly/quarterly/yearly) # How often the subscription is renewed automatically., id: str # Subscription identifier tag., price: num # The price of the subscription that will be billed, in US dollars., rate_plan: map{currency: str, externally_managed: bool, id: str, is_contract: bool, public_name: str, scope: str, sets: [str]} # The rate plan applied to the subscription., state: str(Trial/Provisioned/Paid/AwaitingPayment/Cancelled/Failed/Expired) # The state that the subscription is in., zone: map{id: str, name: str} # A simple zone object. May have null properties if not a zone subscription.}\n@returns(200) Create Subscription response\n@errors {4XX: Create Subscription response failure}\n\n@endpoint DELETE /accounts/{account_id}/subscriptions/{subscription_identifier}\n@desc Delete Subscription\n@required {subscription_identifier: str, account_id: str}\n@returns(200) Delete Subscription response\n@errors {4XX: Delete Subscription response failure}\n\n@endpoint PUT /accounts/{account_id}/subscriptions/{subscription_identifier}\n@desc Update Subscription\n@required {subscription_identifier: str, account_id: str}\n@optional {app: any, component_values: [map{default: num, name: str, price: num, value: num}] # The list of add-ons subscribed to., currency: str # The monetary unit in which pricing information is displayed., current_period_end: str(date-time) # The end of the current period and also when the next billing is due., current_period_start: str(date-time) # When the current billing period started. May match initial_period_start if this is the first period., frequency: str(weekly/monthly/quarterly/yearly) # How often the subscription is renewed automatically., id: str # Subscription identifier tag., price: num # The price of the subscription that will be billed, in US dollars., rate_plan: map{currency: str, externally_managed: bool, id: str, is_contract: bool, public_name: str, scope: str, sets: [str]} # The rate plan applied to the subscription., state: str(Trial/Provisioned/Paid/AwaitingPayment/Cancelled/Failed/Expired) # The state that the subscription is in., zone: map{id: str, name: str} # A simple zone object. May have null properties if not a zone subscription.}\n@returns(200) Update Subscription response\n@errors {4XX: Update Subscription response failure}\n\n@endpoint DELETE /accounts/{account_id}/tags\n@desc Delete tags from an account-level resource\n@required {account_id: any}\n@optional {If-Match: str # ETag value for optimistic concurrency control. When provided, the server will verify the current resource ETag matches before applying the write. Returns 412 Precondition Failed if the resource has been modified since the ETag was obtained. Omit this header for unconditional writes.}\n@returns(204) Tags successfully deleted (no content).\n@errors {412: Precondition failed. The resource has been modified since the provided ETag was obtained., 4XX: Delete tags response failure., 5XX: Delete tags response failure.}\n\n@endpoint GET /accounts/{account_id}/tags\n@desc Get tags for an account-level resource\n@required {account_id: any, resource_id: str # The ID of the resource to retrieve tags for., resource_type: str # The type of the resource.}\n@optional {worker_id: str # Worker identifier. Required for worker_version resources.}\n@returns(200) Get tags for single resource response.\n@errors {4XX: Get tags for single resource response failure., 5XX: Get tags for single resource response failure.}\n\n@endpoint PUT /accounts/{account_id}/tags\n@desc Set tags for an account-level resource\n@required {account_id: any}\n@optional {If-Match: str # ETag value for optimistic concurrency control. When provided, the server will verify the current resource ETag matches before applying the write. Returns 412 Precondition Failed if the resource has been modified since the ETag was obtained. Omit this header for unconditional writes.}\n@returns(200) Set tags response.\n@errors {412: Precondition failed. The resource has been modified since the provided ETag was obtained., 4XX: Set tags response failure., 5XX: Set tags response failure.}\n\n@endpoint GET /accounts/{account_id}/tags/keys\n@desc List tag keys\n@required {account_id: any}\n@optional {cursor: str # Cursor for pagination.}\n@returns(200) List tag keys response.\n@errors {4XX: List tag keys response failure., 5XX: List tag keys response failure.}\n\n@endpoint GET /accounts/{account_id}/tags/resources\n@desc List tagged resources\n@required {account_id: any}\n@optional {type: [str] # Filter by resource type. Can be repeated to filter by multiple types (OR logic). Example: ?type=zone&type=worker, tag: [str] # Filter resources by tag criteria. This parameter can be repeated multiple times, with AND logic between parameters.  Supported syntax: - **Key-only**: `tag=` - Resource must have the tag key (e.g., `tag=production`) - **Key-value**: `tag==` - Resource must have the tag with specific value (e.g., `tag=env=prod`) - **Multiple values (OR)**: `tag==,` - Resource must have tag with any of the values (e.g., `tag=env=prod,staging`) - **Negate key-only**: `tag=!` - Resource must not have the tag key (e.g., `tag=!archived`) - **Negate key-value**: `tag=!=` - Resource must not have the tag with specific value (e.g., `tag=region!=us-west-1`)  Multiple tag parameters are combined with AND logic., cursor: str # Cursor for pagination.}\n@returns(200) List tagged resources response.\n@errors {4XX: List tagged resources response failure., 5XX: List tagged resources response failure.}\n\n@endpoint GET /accounts/{account_id}/tags/values/{tag_key}\n@desc List tag values\n@required {account_id: any, tag_key: str # The tag key to retrieve values for.}\n@optional {type: str # Filter by resource type., cursor: str # Cursor for pagination.}\n@returns(200) List tag values response.\n@errors {4XX: List tag values response failure., 5XX: List tag values response failure.}\n\n@endpoint GET /accounts/{account_id}/teamnet/routes\n@desc List tunnel routes\n@required {account_id: str}\n@optional {comment: str, is_deleted: bool, network_subset: any, network_superset: any, existed_at: str(url-encoded-date-time), tunnel_id: str(uuid), route_id: str, tun_types: [str], virtual_network_id: str(uuid), per_page: num, page: num}\n@returns(200) List tunnel routes response\n@errors {4XX: List tunnel routes response failure}\n\n@endpoint POST /accounts/{account_id}/teamnet/routes\n@desc Create a tunnel route\n@required {account_id: str, network: str # The private IPv4 or IPv6 range connected by the route, in CIDR notation., tunnel_id: str(uuid) # UUID of the tunnel.}\n@optional {comment: str= # Optional remark describing the route., virtual_network_id: str(uuid) # UUID of the virtual network.}\n@returns(200) Create a tunnel route response\n@errors {4XX: Create a tunnel route response failure}\n\n@endpoint GET /accounts/{account_id}/teamnet/routes/ip/{ip}\n@desc Get tunnel route by IP\n@required {ip: str, account_id: str}\n@optional {virtual_network_id: str(uuid), default_virtual_network_fallback: bool=true # When the virtual_network_id parameter is not provided the request filter will default search routes that are in the default virtual network for the account. If this parameter is set to false, the search will include routes that do not have a virtual network.}\n@returns(200) Get tunnel route by IP response\n@errors {4XX: Get tunnel route by IP response failure}\n\n@endpoint DELETE /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}\n@desc Delete a tunnel route (CIDR Endpoint)\n@required {ip_network_encoded: str, account_id: str}\n@optional {virtual_network_id: str(uuid), tun_type: str, tunnel_id: str(uuid)}\n@returns(200) Delete a tunnel route response\n@errors {4XX: Delete a tunnel route response failure}\n\n@endpoint PATCH /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}\n@desc Update a tunnel route (CIDR Endpoint)\n@required {ip_network_encoded: str, account_id: str}\n@returns(200) Update a tunnel route response\n@errors {4XX: Update a tunnel route response failure}\n\n@endpoint POST /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded}\n@desc Create a tunnel route (CIDR Endpoint)\n@required {ip_network_encoded: str, account_id: str, tunnel_id: str(uuid) # UUID of the tunnel.}\n@optional {comment: str= # Optional remark describing the route., virtual_network_id: str(uuid) # UUID of the virtual network.}\n@returns(200) Create a tunnel route response\n@errors {4XX: Create a tunnel route response failure}\n\n@endpoint DELETE /accounts/{account_id}/teamnet/routes/{route_id}\n@desc Delete a tunnel route\n@required {route_id: str, account_id: str}\n@returns(200) Delete a tunnel route response\n@errors {4XX: Delete a tunnel route response failure}\n\n@endpoint GET /accounts/{account_id}/teamnet/routes/{route_id}\n@desc Get tunnel route\n@required {account_id: str, route_id: str}\n@returns(200) Get a tunnel route response\n@errors {4XX: Get a tunnel route response failure}\n\n@endpoint PATCH /accounts/{account_id}/teamnet/routes/{route_id}\n@desc Update a tunnel route\n@required {route_id: str, account_id: str}\n@optional {comment: str= # Optional remark describing the route., network: str # The private IPv4 or IPv6 range connected by the route, in CIDR notation., tunnel_id: str(uuid) # UUID of the tunnel., virtual_network_id: str(uuid) # UUID of the virtual network.}\n@returns(200) Update a tunnel route response\n@errors {4XX: Update a tunnel route response failure}\n\n@endpoint GET /accounts/{account_id}/teamnet/virtual_networks\n@desc List virtual networks\n@required {account_id: str}\n@optional {id: str(uuid), name: str, is_default: bool, is_default_network: bool, is_deleted: bool}\n@returns(200) List virtual networks response\n@errors {4XX: List virtual networks response failure}\n\n@endpoint POST /accounts/{account_id}/teamnet/virtual_networks\n@desc Create a virtual network\n@required {account_id: str, name: str # A user-friendly name for the virtual network.}\n@optional {comment: str= # Optional remark describing the virtual network., is_default: bool # If `true`, this virtual network is the default for the account., is_default_network: bool=false # If `true`, this virtual network is the default for the account.}\n@returns(200) Create a virtual network response\n@errors {4XX: Create a virtual network response failure}\n\n@endpoint DELETE /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n@desc Delete a virtual network\n@required {virtual_network_id: str(uuid), account_id: str}\n@returns(200) Delete a virtual network response\n@errors {4XX: Delete a virtual network response failure}\n\n@endpoint GET /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n@desc Get a virtual network\n@required {account_id: str, virtual_network_id: str(uuid)}\n@optional {comment: str= # Optional remark describing the virtual network., is_default_network: bool # If `true`, this virtual network is the default for the account., name: str # A user-friendly name for the virtual network.}\n@returns(200) A virtual network response\n@errors {4XX: A virtual network response failure}\n\n@endpoint PATCH /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}\n@desc Update a virtual network\n@required {account_id: str, virtual_network_id: str(uuid)}\n@optional {comment: str= # Optional remark describing the virtual network., is_default_network: bool=false # If `true`, this virtual network is the default for the account., name: str # A user-friendly name for the virtual network.}\n@returns(200) Update a virtual network response\n@errors {4XX: Update a virtual network response failure}\n\n@endpoint GET /accounts/{account_id}/tokens\n@desc List Tokens\n@required {account_id: any}\n@optional {page: num=1, per_page: num=20, direction: str(asc/desc)}\n@returns(200) List Tokens response\n@errors {4XX: List Tokens response failure}\n\n@endpoint POST /accounts/{account_id}/tokens\n@desc Create Token\n@required {account_id: any, name: str # Token name., policies: [map{effect!: str, id!: str, permission_groups!: [map], resources!: any}] # List of access policies assigned to the token.}\n@optional {condition: map{request_ip: map}, expires_on: str(date-time) # The expiration time on or after which the JWT MUST NOT be accepted for processing., not_before: str(date-time) # The time before which the token MUST NOT be accepted for processing.}\n@returns(200) Create Token response\n@errors {4XX: Create Token response failure}\n\n@endpoint GET /accounts/{account_id}/tokens/permission_groups\n@desc List Permission Groups\n@required {account_id: any}\n@optional {name: str # Filter by the name of the permission group. The value must be URL-encoded., scope: str # Filter by the scope of the permission group. The value must be URL-encoded.}\n@returns(200) List Account Owned API Token Permission Groups response\n@errors {4XX: List Account Owned API Token Permission Groups response failure}\n\n@endpoint GET /accounts/{account_id}/tokens/verify\n@desc Verify Token\n@required {account_id: any}\n@returns(200) Verify Token response\n@errors {4XX: Verify Token response failure}\n\n@endpoint DELETE /accounts/{account_id}/tokens/{token_id}\n@desc Delete Token\n@required {account_id: any, token_id: str}\n@returns(200) Delete Token response\n@errors {4XX: Delete Token response failure}\n\n@endpoint GET /accounts/{account_id}/tokens/{token_id}\n@desc Token Details\n@required {account_id: any, token_id: str}\n@returns(200) Token Details response\n@errors {4XX: Token Details response failure}\n\n@endpoint PUT /accounts/{account_id}/tokens/{token_id}\n@desc Update Token\n@required {account_id: any, token_id: str}\n@returns(200) Update Token response\n@errors {4XX: Update Token response failure}\n\n@endpoint PUT /accounts/{account_id}/tokens/{token_id}/value\n@desc Roll Token\n@required {account_id: any, token_id: str}\n@returns(200) Roll Token response\n@errors {4XX: Roll Token response failure}\n\n@endpoint GET /accounts/{account_id}/tunnels\n@desc List All Tunnels\n@required {account_id: str}\n@optional {name: str, is_deleted: bool, existed_at: str(url-encoded-date-time), uuid: str(uuid), was_active_at: str(date-time), was_inactive_at: str(date-time), include_prefix: str, exclude_prefix: str, tun_types: [str], status: str, per_page: num, page: num}\n@returns(200) List Tunnels response\n@errors {4XX: List Tunnels response failure}\n\n@endpoint GET /accounts/{account_id}/urlscanner/response/{response_id}\n@desc Get raw response\n@required {response_id: str # Response hash., account_id: str # Account ID.}\n@returns(200) When `har.log.entries[].response._cf.contentAvailable` is `true`, use `response._cf.hash` value to fetch the raw response.\n@errors {400: Invalid params., 404: Scan not found.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/scan\n@desc Search URL scans\n@required {account_id: str # Account ID.}\n@optional {scan_id: str(uuid) # Scan UUID., limit: int # Limit the number of objects in the response., next_cursor: str # Pagination cursor to get the next set of results., date_start: str(date-time) # Filter scans requested after date (inclusive)., date_end: str(date-time) # Filter scans requested before date (inclusive)., url: str # Filter scans by URL of _any_ request made by the webpage, hostname: str # Filter scans by hostname of _any_ request made by the webpage., path: str # Filter scans by url path of _any_ request made by the webpage., ip: str # Filter scans by IP address (IPv4 or IPv6) of _any_ request made by the webpage., hash: str # Filter scans by hash of any html/js/css request made by the webpage., page_url: str # Filter scans by submitted or scanned URL, page_hostname: str # Filter scans by main page hostname (domain of effective URL)., page_path: str # Filter scans by exact match of effective URL path (also supports suffix search)., page_asn: str # Filter scans by main page Autonomous System Number (ASN)., page_ip: str # Filter scans by  main page IP address (IPv4 or IPv6)., account_scans: bool # Return only scans created by account., is_malicious: bool # Filter scans by malicious verdict.}\n@returns(200) {errors: [map], messages: [map], result: map{tasks: [map]}, success: bool} # Search results\n@errors {400: Invalid params.}\n\n@endpoint POST /accounts/{account_id}/urlscanner/scan\n@desc Create URL Scan\n@required {account_id: str # Account ID., url: str}\n@optional {country: str(AF/AL/DZ/AD/AO/AG/AR/AM/AU/AT/AZ/BH/BD/BB/BY/BE/BZ/BJ/BM/BT/BO/BA/BW/BR/BN/BG/BF/BI/KH/CM/CA/CV/KY/CF/TD/CL/CN/CO/KM/CG/CR/CI/HR/CU/CY/CZ/CD/DK/DJ/DM/DO/EC/EG/SV/GQ/ER/EE/SZ/ET/FJ/FI/FR/GA/GE/DE/GH/GR/GL/GD/GT/GN/GW/GY/HT/HN/HU/IS/IN/ID/IR/IQ/IE/IL/IT/JM/JP/JO/KZ/KE/KI/KW/KG/LA/LV/LB/LS/LR/LY/LI/LT/LU/MO/MG/MW/MY/MV/ML/MR/MU/MX/FM/MD/MC/MN/MS/MA/MZ/MM/NA/NR/NP/NL/NZ/NI/NE/NG/KP/MK/NO/OM/PK/PS/PA/PG/PY/PE/PH/PL/PT/QA/RO/RU/RW/SH/KN/LC/VC/WS/SM/ST/SA/SN/RS/SC/SL/SK/SI/SB/SO/ZA/KR/SS/ES/LK/SD/SR/SE/CH/SY/TW/TJ/TZ/TH/BS/GM/TL/TG/TO/TT/TN/TR/TM/UG/UA/AE/GB/US/UY/UZ/VU/VE/VN/YE/ZM/ZW) # Country to geo egress from, customHeaders: map # Set custom headers., screenshotsResolutions: [str]=desktop # Take multiple screenshots targeting different device types., visibility: str(Public/Unlisted)=Public # The option `Public` means it will be included in listings like recent scans and search results. `Unlisted` means it will not be included in the aforementioned listings, users will need to have the scan's ID to access it. A a scan will be automatically marked as unlisted if it fails, if it contains potential PII or other sensitive material.}\n@returns(200) {errors: [map], messages: [map], result: map{time: str(date-time), url: str, uuid: str(uuid), visibility: str}, success: bool} # Scan request accepted successfully.\n@errors {400: Invalid params., 409: Scan request denied: hostname was recently scanned., 429: Scan request denied: rate limited.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/scan/{scan_id}\n@desc Get URL scan\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@optional {full: bool # Whether to return full report (scan summary and network log).}\n@returns(200) {errors: [map], messages: [map], result: map{scan: map{asns: map{asn: map}, certificates: [map], domains: map{example.com: map}, geo: map{continents: [str], locations: [str]}, ips: map{ip: map}, links: map{link: map}, meta: map{processors: map}, page: map{asn: str, asnLocationAlpha2: str, asnname: str, console: [map], cookies: [map], country: str, countryLocationAlpha2: str, domain: str, headers: [map], ip: str, js: map, securityViolations: [map], status: num, subdivision1Name: str, subdivision2name: str, url: str}, performance: [map], task: map{clientLocation: str, clientType: str, effectiveUrl: str, errors: [map], scannedFrom: map, status: str, success: bool, time: str, timeEnd: str, url: str, uuid: str, visibility: str}, verdicts: map{overall: map}}}, success: bool} # Scan has finished. It may or may not have been successful.\n@returns(202) {errors: [map], messages: [map], result: map{scan: map{task: map{effectiveUrl: str, errors: [map], location: str, region: str, status: str, success: bool, time: str, url: str, uuid: str, visibility: str}}}, success: bool} # Scan is in progress. Check current status in `result.scan.task.status`. Possible statuses: `Queued`,`InProgress`,`InPostProcessing`,`Finished`.\n@errors {400: Invalid params., 404: Scan not found.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/scan/{scan_id}/har\n@desc Get URL scan's HAR\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@returns(200) {errors: [map], messages: [map], result: map{har: map{log: map{creator: map, entries: [map], pages: [map], version: str}}}, success: bool} # Returns the scan's har.\n@returns(202) {errors: [map], messages: [map], result: map{scan: map{task: map{effectiveUrl: str, errors: [map], location: str, region: str, status: str, success: bool, time: str, url: str, uuid: str, visibility: str}}}, success: bool} # Scan is in progress. Check current status in `result.scan.task.status`. Possible statuses: `Queued`,`InProgress`,`InPostProcessing`,`Finished`.\n@errors {400: Invalid params., 404: Scan not found.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/scan/{scan_id}/screenshot\n@desc Get screenshot\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@optional {resolution: str(desktop/mobile/tablet)=desktop # Target device type.}\n@returns(200) Returns the scan's requested screenshot.\n@returns(202) {errors: [map], messages: [map], result: map{scan: map{task: map{effectiveUrl: str, errors: [map], location: str, region: str, status: str, success: bool, time: str, url: str, uuid: str, visibility: str}}}, success: bool} # Scan is in progress. Check current status in `result.scan.task.status`. Possible statuses: `Queued`,`InProgress`,`InPostProcessing`,`Finished`.\n@errors {400: Invalid params., 404: Scan not found.}\n\n@endpoint POST /accounts/{account_id}/urlscanner/v2/bulk\n@desc Bulk create URL Scans\n@required {account_id: str # Account ID.}\n@returns(200) Scan bulk request accepted successfully.\n@errors {400: Invalid input., 429: Scan request denied: rate limited.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/dom/{scan_id}\n@desc Get URL scan's DOM\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@returns(200) Returns a plain text response, with the scan's DOM content as rendered by Chrome.\n@errors {400: Invalid input., 404: Scan not found or in progress.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/har/{scan_id}\n@desc Get URL scan's HAR\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@returns(200) {log: map{creator: map{comment: str, name: str, version: str}, entries: [map], pages: [map], version: str}} # Returns the scan's har.\n@errors {400: Invalid input., 404: Scan not found or in progress.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/responses/{response_id}\n@desc Get raw response\n@required {response_id: str # Response hash., account_id: str # Account ID.}\n@returns(200) Get the raw response by its hash.\n@errors {400: Invalid input.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/result/{scan_id}\n@desc Get URL scan\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@returns(200) {data: map{console: [map], cookies: [map], globals: [map], links: [map], performance: [map], requests: [map]}, lists: map{asns: [str], certificates: [map], continents: [str], countries: [str], domains: [str], hashes: [str], ips: [str], linkDomains: [str], servers: [str], urls: [str]}, meta: map{processors: map{asn: map{data: [map]}, dns: map{data: [map]}, domainCategories: map{data: [map]}, geoip: map{data: [map]}, phishing: map{data: [str]}, phishing_v2: map{data: [str]}, radarRank: map{data: [map]}, robotsTxt: map{data: [map]}, urlCategories: map{data: [map]}, wappa: map{data: [map]}}}, page: map{apexDomain: str, asn: str, asnname: str, city: str, country: str, domain: str, ip: str, mimeType: str, screenshot: map{dhash: str, mm3Hash: num, name: str, phash: str}, server: str, status: str, title: str, tlsAgeDays: num, tlsIssuer: str, tlsValidDays: num, tlsValidFrom: str, url: str}, scanner: map{colo: str, country: str}, stats: map{IPv6Percentage: num, domainStats: [map], ipStats: [map], malicious: num, protocolStats: [map], resourceStats: [map], securePercentage: num, secureRequests: num, serverStats: [map], tlsStats: [map], totalLinks: num, uniqASNs: num, uniqCountries: num}, task: map{apexDomain: str, domURL: str, domain: str, method: str, options: map{customHeaders: map, screenshotsResolutions: [str]}, reportURL: str, screenshotURL: str, source: str, success: bool, time: str, url: str, uuid: str, visibility: str}, verdicts: map{overall: map{categories: [str], hasVerdicts: bool, malicious: bool, tags: [str]}}} # Scan has finished. It may or may not have been successful.\n@errors {400: Invalid input., 404: Scan not found or in progress.}\n\n@endpoint POST /accounts/{account_id}/urlscanner/v2/scan\n@desc Create URL Scan\n@required {account_id: str # Account ID., url: str}\n@optional {country: str(AF/AL/DZ/AD/AO/AG/AR/AM/AU/AT/AZ/BH/BD/BB/BY/BE/BZ/BJ/BM/BT/BO/BA/BW/BR/BN/BG/BF/BI/KH/CM/CA/CV/KY/CF/TD/CL/CN/CO/KM/CG/CR/CI/HR/CU/CY/CZ/CD/DK/DJ/DM/DO/EC/EG/SV/GQ/ER/EE/SZ/ET/FJ/FI/FR/GA/GE/DE/GH/GR/GL/GD/GT/GN/GW/GY/HT/HN/HU/IS/IN/ID/IR/IQ/IE/IL/IT/JM/JP/JO/KZ/KE/KI/KW/KG/LA/LV/LB/LS/LR/LY/LI/LT/LU/MO/MG/MW/MY/MV/ML/MR/MU/MX/FM/MD/MC/MN/MS/MA/MZ/MM/NA/NR/NP/NL/NZ/NI/NE/NG/KP/MK/NO/OM/PK/PS/PA/PG/PY/PE/PH/PL/PT/QA/RO/RU/RW/SH/KN/LC/VC/WS/SM/ST/SA/SN/RS/SC/SL/SK/SI/SB/SO/ZA/KR/SS/ES/LK/SD/SR/SE/CH/SY/TW/TJ/TZ/TH/BS/GM/TL/TG/TO/TT/TN/TR/TM/UG/UA/AE/GB/US/UY/UZ/VU/VE/VN/YE/ZM/ZW) # Country to geo egress from, customHeaders: map # Set custom headers., customagent: str, referer: str, screenshotsResolutions: [str]=desktop # Take multiple screenshots targeting different device types., visibility: str(Public/Unlisted)=Public # The option `Public` means it will be included in listings like recent scans and search results. `Unlisted` means it will not be included in the aforementioned listings, users will need to have the scan's ID to access it. A a scan will be automatically marked as unlisted if it fails, if it contains potential PII or other sensitive material.}\n@returns(200) {api: str, message: str, options: map{useragent: str}, result: str, url: str, uuid: str(uuid), visibility: str} # Scan request accepted successfully.\n@errors {400: Invalid input., 409: Scan request denied: hostname was recently scanned., 429: Scan request denied: rate limited.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/screenshots/{scan_id}.png\n@desc Get screenshot\n@required {scan_id: str(uuid) # Scan UUID., account_id: str # Account ID.}\n@optional {resolution: str(desktop/mobile/tablet)=desktop # Target device type.}\n@returns(200) Returns the scan's requested screenshot.\n@errors {400: Invalid input., 404: Scan not found or in progress.}\n\n@endpoint GET /accounts/{account_id}/urlscanner/v2/search\n@desc Search URL scans\n@required {account_id: str # Account ID.}\n@optional {size: int # Limit the number of objects in the response., q: str # Filter scans}\n@returns(200) {results: [map]} # Search results\n@errors {400: Invalid input.}\n\n@endpoint GET /accounts/{account_id}/vectorize/indexes\n@desc List Vectorize Indexes (Deprecated)\n@required {account_id: str}\n@returns(200) List Vectorize Index Response\n@errors {4XX: List Vectorize Index Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes\n@desc Create Vectorize Index (Deprecated)\n@required {account_id: str, config: any, name: str}\n@optional {description: str # Specifies the description of the index.}\n@returns(200) Create Vectorize Index Response\n@errors {4XX: Create Vectorize Index Failure Response}\n\n@endpoint DELETE /accounts/{account_id}/vectorize/indexes/{index_name}\n@desc Delete Vectorize Index (Deprecated)\n@required {account_id: str, index_name: str}\n@returns(200) Delete Vectorize Index Response\n@errors {4XX: Delete Vectorize Index Failure}\n\n@endpoint GET /accounts/{account_id}/vectorize/indexes/{index_name}\n@desc Get Vectorize Index (Deprecated)\n@required {account_id: str, index_name: str}\n@returns(200) Get Vectorize Index Response\n@errors {4XX: Get Vectorize Index Failure}\n\n@endpoint PUT /accounts/{account_id}/vectorize/indexes/{index_name}\n@desc Update Vectorize Index (Deprecated)\n@required {account_id: str, index_name: str, description: str # Specifies the description of the index.}\n@returns(200) Update Vectorize Index Response\n@errors {4XX: Update Vectorize Index Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes/{index_name}/delete-by-ids\n@desc Delete Vectors By Identifier (Deprecated)\n@required {account_id: str, index_name: str}\n@optional {ids: [str] # A list of vector identifiers to delete from the index indicated by the path.}\n@returns(200) Delete Vector Identifiers Response\n@errors {4XX: Delete Vector Identifiers Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes/{index_name}/get-by-ids\n@desc Get Vectors By Identifier (Deprecated)\n@required {account_id: str, index_name: str}\n@optional {ids: [str] # A list of vector identifiers to retrieve from the index indicated by the path.}\n@returns(200) Get Vectors By Identifier Response\n@errors {4XX: Get Vectors By Identifier Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes/{index_name}/insert\n@desc Insert Vectors (Deprecated)\n@required {account_id: str, index_name: str}\n@returns(200) Insert Vectors Response\n@errors {4XX: Insert Vectors Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes/{index_name}/query\n@desc Query Vectors (Deprecated)\n@required {account_id: str, index_name: str, vector: [num] # The search vector that will be used to find the nearest neighbors.}\n@optional {filter: map # A metadata filter expression used to limit nearest neighbor results., returnMetadata: bool=false # Whether to return the metadata associated with the closest vectors., returnValues: bool=false # Whether to return the values associated with the closest vectors., topK: num=5 # The number of nearest neighbors to find.}\n@returns(200) Query Vectors Response\n@errors {4XX: Query Vectors Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/indexes/{index_name}/upsert\n@desc Upsert Vectors (Deprecated)\n@required {account_id: str, index_name: str}\n@returns(200) Insert Vectors Response\n@errors {4XX: Insert Vectors Failure Response}\n\n@endpoint GET /accounts/{account_id}/vectorize/v2/indexes\n@desc List Vectorize Indexes\n@required {account_id: str}\n@returns(200) List Vectorize Index Response\n@errors {4XX: List Vectorize Index Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes\n@desc Create Vectorize Index\n@required {account_id: str, config: any, name: str}\n@optional {description: str # Specifies the description of the index.}\n@returns(200) Create Vectorize Index Response\n@errors {4XX: Create Vectorize Index Failure Response}\n\n@endpoint DELETE /accounts/{account_id}/vectorize/v2/indexes/{index_name}\n@desc Delete Vectorize Index\n@required {account_id: str, index_name: str}\n@returns(200) Delete Vectorize Index Response\n@errors {4XX: Delete Vectorize Index Failure}\n\n@endpoint GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}\n@desc Get Vectorize Index\n@required {account_id: str, index_name: str}\n@returns(200) Get Vectorize Index Response\n@errors {4XX: Get Vectorize Index Failure}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/delete_by_ids\n@desc Delete Vectors By Identifier\n@required {account_id: str, index_name: str}\n@optional {ids: [str] # A list of vector identifiers to delete from the index indicated by the path.}\n@returns(200) Delete Vector Identifiers Response\n@errors {4XX: Delete Vector Identifiers Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/get_by_ids\n@desc Get Vectors By Identifier\n@required {account_id: str, index_name: str}\n@optional {ids: [str] # A list of vector identifiers to retrieve from the index indicated by the path.}\n@returns(200) Get Vectors By Identifier Response\n@errors {4XX: Get Vectors By Identifier Failure Response}\n\n@endpoint GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/info\n@desc Get Vectorize Index Info\n@required {account_id: str, index_name: str}\n@returns(200) Get Vectorize Index Info Response\n@errors {4XX: Get Vectorize Index Info Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/insert\n@desc Insert Vectors\n@required {account_id: str, index_name: str}\n@optional {unparsable-behavior: str(error/discard)}\n@returns(200) Insert Vectors Response\n@errors {4XX: Insert Vectors Failure Response}\n\n@endpoint GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/list\n@desc List Vectors\n@required {account_id: str, index_name: str}\n@optional {count: int=100, cursor: str}\n@returns(200) List Vectors Response\n@errors {4XX: List Vectors Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/create\n@desc Create Metadata Index\n@required {account_id: str, index_name: str, indexType: str(string/number/boolean) # Specifies the type of metadata property to index., propertyName: str # Specifies the metadata property to index.}\n@returns(200) Create Metadata Index Response\n@errors {4XX: Create Metadata Index Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/delete\n@desc Delete Metadata Index\n@required {account_id: str, index_name: str, propertyName: str # Specifies the metadata property for which the index must be deleted.}\n@returns(200) Delete Metadata Index Response\n@errors {4XX: Delete Metadata Index Failure}\n\n@endpoint GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/list\n@desc List Metadata Indexes\n@required {account_id: str, index_name: str}\n@returns(200) List Metadata Index Response\n@errors {4XX: List Metadata Index Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/query\n@desc Query Vectors\n@required {account_id: str, index_name: str, vector: [num] # The search vector that will be used to find the nearest neighbors.}\n@optional {filter: map # A metadata filter expression used to limit nearest neighbor results., returnMetadata: str(none/indexed/all)=none # Whether to return no metadata, indexed metadata or all metadata associated with the closest vectors., returnValues: bool=false # Whether to return the values associated with the closest vectors., topK: num=5 # The number of nearest neighbors to find.}\n@returns(200) Query Vectors Response\n@errors {4XX: Query Vectors Failure Response}\n\n@endpoint POST /accounts/{account_id}/vectorize/v2/indexes/{index_name}/upsert\n@desc Upsert Vectors\n@required {account_id: str, index_name: str}\n@optional {unparsable-behavior: str(error/discard)}\n@returns(200) Upsert Vectors Response\n@errors {4XX: Upsert Vectors Failure Response}\n\n@endpoint GET /accounts/{account_id}/waiting_rooms\n@desc List waiting rooms for account\n@required {account_id: str}\n@optional {page: num=1 # Page number of paginated results., per_page: num=25 # Maximum number of results per page. Must be a multiple of 5.}\n@returns(200) List waiting rooms for account response\n@errors {4XX: List waiting rooms for account response failure}\n\n@endpoint GET /accounts/{account_id}/warp_connector\n@desc List Warp Connector Tunnels\n@required {account_id: str}\n@optional {name: str, is_deleted: bool, existed_at: str(url-encoded-date-time), uuid: str(uuid), was_active_at: str(date-time), was_inactive_at: str(date-time), include_prefix: str, exclude_prefix: str, status: str, per_page: num, page: num}\n@returns(200) List Warp Connector Tunnels response\n@errors {4XX: List Warp Connector Tunnels response failure}\n\n@endpoint POST /accounts/{account_id}/warp_connector\n@desc Create a Warp Connector Tunnel\n@required {account_id: str, name: str # A user-friendly name for a tunnel.}\n@optional {ha: bool=false # Indicates that the tunnel will be created to be highly available. If omitted, defaults to false.}\n@returns(200) Create a Warp Connector Tunnel response\n@errors {4XX: Create a Warp Connector Tunnel response failure}\n\n@endpoint DELETE /accounts/{account_id}/warp_connector/{tunnel_id}\n@desc Delete a Warp Connector Tunnel\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Delete a Warp Connector Tunnel response\n@errors {4XX: Delete a Warp Connector Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/warp_connector/{tunnel_id}\n@desc Get a Warp Connector Tunnel\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Get a Warp Connector Tunnel response\n@errors {4XX: Get a Warp Connector Tunnel response failure}\n\n@endpoint PATCH /accounts/{account_id}/warp_connector/{tunnel_id}\n@desc Update a Warp Connector Tunnel\n@required {account_id: str, tunnel_id: str(uuid)}\n@optional {name: str # A user-friendly name for a tunnel., tunnel_secret: str # Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.}\n@returns(200) Update a Warp Connector Tunnel response\n@errors {4XX: Update a Warp Connector Tunnel response failure}\n\n@endpoint GET /accounts/{account_id}/warp_connector/{tunnel_id}/connections\n@desc List WARP Connector Tunnel connections\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) List WARP Connector Tunnel connections response\n@errors {4XX: List WARP Connector connections response failure}\n\n@endpoint GET /accounts/{account_id}/warp_connector/{tunnel_id}/connectors/{connector_id}\n@desc Get WARP Connector Tunnel connector\n@required {account_id: str, tunnel_id: str(uuid), connector_id: str(uuid)}\n@returns(200) Get WARP Connector Tunnel connector response\n@errors {4XX: Get WARP Connector Tunnel connector response failure}\n\n@endpoint PUT /accounts/{account_id}/warp_connector/{tunnel_id}/failover\n@desc Trigger a manual failover for a WARP Connector Tunnel\n@required {account_id: str, tunnel_id: str(uuid), client_id: str(uuid) # UUID of the Cloudflare Tunnel connector.}\n@returns(200) Manual failover response\n@errors {4XX: Manual failover response failure}\n\n@endpoint GET /accounts/{account_id}/warp_connector/{tunnel_id}/token\n@desc Get a Warp Connector Tunnel token\n@required {account_id: str, tunnel_id: str(uuid)}\n@returns(200) Get a Warp Connector Tunnel token response\n@errors {4XX: Get a Warp Connector Tunnel token response failure}\n\n@endpoint GET /accounts/{account_id}/workers/account-settings\n@desc Fetch Worker Account Settings\n@required {account_id: str}\n@returns(200) Fetch Worker Account Settings response.\n@errors {4XX: Fetch Worker Account Settings response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/account-settings\n@desc Create Worker Account Settings\n@required {account_id: str}\n@optional {default_usage_model: str, green_compute: bool}\n@returns(200) Create Worker Account Settings response.\n@errors {4XX: Create Worker Account Settings response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/assets/upload\n@desc Upload Assets\n@required {account_id: str, base64: bool}\n@returns(201) Upload Assets response.\n@returns(202) Upload Assets response.\n@errors {4XX: Upload Assets response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces\n@desc List dispatch namespaces\n@required {account_id: str}\n@returns(200) Fetch a list of Workers for Platforms namespaces.\n@errors {4XX: Failure to get list of Workers for Platforms namespaces.}\n\n@endpoint POST /accounts/{account_id}/workers/dispatch/namespaces\n@desc Create dispatch namespace\n@required {account_id: str}\n@optional {name: str # The name of the dispatch namespace.}\n@returns(200) Fetch a list of Workers for Platforms namespaces.\n@errors {4XX: Failure to get list of Workers for Platforms namespaces.}\n\n@endpoint DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}\n@desc Delete dispatch namespace\n@required {account_id: str, dispatch_namespace: str}\n@returns(200) Delete a Workers for Platforms namespace.\n@errors {4XX: Failure to delete Workers for Platforms namespace.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}\n@desc Get dispatch namespace\n@required {account_id: str, dispatch_namespace: str}\n@returns(200) Get a Workers for Platforms namespace.\n@errors {4XX: Failure to get Workers for Platforms namespace.}\n\n@endpoint PATCH /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}\n@desc Patch dispatch namespace\n@required {account_id: str, dispatch_namespace: str}\n@optional {name: str # The name of the dispatch namespace., trusted_workers: bool=false # Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".}\n@returns(200) Patch a Workers for Platforms namespace.\n@errors {4XX: Failure to patch Workers for Platforms namespace.}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}\n@desc Update dispatch namespace\n@required {account_id: str, dispatch_namespace: str}\n@optional {name: str # The name of the dispatch namespace., trusted_workers: bool=false # Whether the Workers in the namespace are executed in a \"trusted\" manner. When a Worker is trusted, it has access to the shared caches for the zone in the Cache API, and has access to the `request.cf` object on incoming Requests. When a Worker is untrusted, caches are not shared across the zone, and `request.cf` is undefined. By default, Workers in a namespace are \"untrusted\".}\n@returns(200) Update a Workers for Platforms namespace.\n@errors {4XX: Failure to update Workers for Platforms namespace.}\n\n@endpoint DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts\n@desc Delete Scripts in Namespace\n@required {account_id: str, dispatch_namespace: str}\n@optional {tags: str # Filter scripts by tags before deletion. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'., limit: int # Limit the number of scripts to delete.}\n@returns(200) {deleted: [map], deleted_count: int, has_more: bool} # Delete scripts in namespace response.\n@errors {4XX: Delete scripts in namespace response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts\n@desc List Scripts in Namespace\n@required {account_id: str, dispatch_namespace: str}\n@optional {tags: str # Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.}\n@returns(200) List scripts in namespace response.\n@errors {4XX: List scripts in namespace response failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n@desc Delete Worker\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@optional {force: bool # If set to true, delete will not be stopped by associated service binding, durable object, or other binding. Any of these associated bindings/durable objects will be deleted along with the script.}\n@returns(200) Delete Worker response.\n@errors {4XX: Delete Worker response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n@desc Worker Details\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Worker Details Response (Workers for Platforms).\n@errors {4XX: Worker Details Failure (Workers for Platforms).}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}\n@desc Upload Worker Module\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@optional {bindings_inherit: str # When set to \"strict\", the upload will fail if any `inherit` type bindings cannot be resolved against the previous version of the script. Without this, unresolvable inherit bindings are silently dropped.}\n@returns(200) Upload Worker Module response.\n@errors {4XX: Upload Worker Module response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/assets-upload-session\n@desc Create Assets Upload Session\n@required {account_id: str, dispatch_namespace: str, script_name: str, manifest: map # A manifest ([path]: {hash, size}) map of files to upload. As an example, `/blog/hello-world.html` would be a valid path key.}\n@returns(200) Create Assets Upload Session response.\n@errors {4XX: Create Assets Upload Session response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/bindings\n@desc Get Script Bindings\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Fetch script bindings (Workers for Platforms).\n@errors {4XX: Fetch script bindings failure (Workers for Platforms).}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content\n@desc Get Script Content\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Get script content.\n@errors {4XX: Get script content failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content\n@desc Put Script Content\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@optional {CF-WORKER-BODY-PART: str # The multipart name of a script upload part containing script content in service worker format. Alternative to including in a metadata part., CF-WORKER-MAIN-MODULE-PART: str # The multipart name of a script upload part containing script content in es module format. Alternative to including in a metadata part.}\n@returns(200) Put script content (Workers for Platforms).\n@errors {4XX: Put script content failure (Workers for Platforms).}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets\n@desc List Script Secrets\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) List script secrets.\n@errors {4XX: List script secrets failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets\n@desc Add script secret\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Fetch script bindings (Workers for Platforms).\n@errors {429: Too many requests are currently modifying the script., 4XX: Fetch script bindings failure (Workers for Platforms).}\n\n@endpoint DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name}\n@desc Delete script secret\n@required {account_id: str, dispatch_namespace: str, script_name: str, secret_name: str}\n@optional {url_encoded: bool}\n@returns(200) Delete script secret binding (Workers for Platforms).\n@errors {4XX: Delete script secret failure (Workers for Platforms).}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name}\n@desc Get secret binding\n@required {account_id: str, dispatch_namespace: str, script_name: str, secret_name: str}\n@optional {url_encoded: bool}\n@returns(200) Get script secret (Workers for Platforms).\n@errors {4XX: Get script secret failure (Workers for Platforms).}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings\n@desc Get Script Settings\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Fetch script settings.\n@errors {4XX: Fetch script settings failure.}\n\n@endpoint PATCH /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings\n@desc Patch Script Settings\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Patch script settings.\n@errors {4XX: Patch script settings failure.}\n\n@endpoint GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags\n@desc Get Script Tags\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Fetch script tags.\n@errors {4XX: Fetch script tags failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags\n@desc Put Script Tags\n@required {account_id: str, dispatch_namespace: str, script_name: str}\n@returns(200) Fetch script tags.\n@errors {4XX: Fetch script tags failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags/{tag}\n@desc Delete Script Tag\n@required {account_id: str, dispatch_namespace: str, script_name: str, tag: str}\n@returns(200) Delete script tag.\n@errors {4XX: Delete script tag failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags/{tag}\n@desc Put Script Tag\n@required {account_id: str, dispatch_namespace: str, script_name: str, tag: str}\n@returns(200) Put script tag.\n@errors {4XX: Put script tag failure.}\n\n@endpoint GET /accounts/{account_id}/workers/domains\n@desc List Domains\n@required {account_id: str}\n@optional {zone_id: str, zone_name: str, service: str, hostname: str, environment: str}\n@returns(200) List domains response.\n@errors {4XX: List domains failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/domains\n@desc Attach Domain\n@required {account_id: str}\n@returns(200) Attach domain response.\n@errors {4XX: Attach domain failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/domains/{domain_id}\n@desc Detach Domain\n@required {account_id: str, domain_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Detach domain response.\n@errors {4XX: Detach domain failure.}\n\n@endpoint GET /accounts/{account_id}/workers/domains/{domain_id}\n@desc Get Domain\n@required {account_id: str, domain_id: str}\n@returns(200) Get domain response.\n@errors {4XX: Get domain failure.}\n\n@endpoint GET /accounts/{account_id}/workers/durable_objects/namespaces\n@desc List Namespaces\n@required {account_id: str}\n@optional {page: int=1 # Current page., per_page: int=20 # Items per-page.}\n@returns(200) List Namespaces response.\n@errors {4XX: List Namespaces response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects\n@desc List Objects\n@required {account_id: str, id: str}\n@optional {limit: num=1000, cursor: str}\n@returns(200) List Objects response.\n@errors {4XX: List Objects response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/observability/destinations\n@desc Get Destinations\n@optional {page: num=1, perPage: num=20, order: str(asc/desc)=desc, orderBy: str(created/updated)=updated}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint POST /accounts/{account_id}/workers/observability/destinations\n@desc Create Destination\n@required {configuration: map{headers!: map, logpushDataset!: any, type!: str, url!: str}, enabled: bool, name: str}\n@optional {skipPreflightCheck: bool}\n@returns(201) {errors: [map], messages: [map], result: map{configuration: map{destination_conf: str, logpushDataset: any, logpushJob: num, type: str, url: str}, enabled: bool, name: str, scripts: [str], slug: str}, success: bool} # Resource created\n@errors {400: Bad Request, 401: Unauthorized, 500: Internal error}\n\n@endpoint DELETE /accounts/{account_id}/workers/observability/destinations/{slug}\n@desc Delete Destination\n@required {slug: str}\n@returns(200) {errors: [map], messages: [map], result: map{configuration: map{destination_conf: str, logpushDataset: any, logpushJob: num, type: str, url: str}, enabled: bool, name: str, scripts: [str], slug: str}, success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint PATCH /accounts/{account_id}/workers/observability/destinations/{slug}\n@desc Update Destination\n@required {slug: str, configuration: map{headers!: map, type!: str, url!: str}, enabled: bool}\n@returns(200) {errors: [map], messages: [map], result: map{configuration: map{destination_conf: str, logpushDataset: any, logpushJob: num, type: str, url: str}, enabled: bool, name: str, scripts: [str], slug: str}, success: bool} # Successful request\n@errors {400: Bad Request, 401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint GET /accounts/{account_id}/workers/observability/queries\n@desc List queries\n@optional {page: num=1, perPage: num=20, order: str(asc/desc)=desc, orderBy: str(created/updated)=updated}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint POST /accounts/{account_id}/workers/observability/queries\n@desc Save query\n@required {description: str, name: str # Query name, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map, orderBy: map}}\n@returns(200) {errors: [map], messages: [map], result: map{adhoc: bool, created: str, createdBy: str, description: str?, id: str, name: str, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map{isRegex: bool, matchCase: bool, value: any}, orderBy: map{order: str, value: str}}, updated: str, updatedBy: str}, success: bool} # Successful request\n@errors {401: Unauthorized, 409: Conflict, 500: Internal error}\n\n@endpoint DELETE /accounts/{account_id}/workers/observability/queries/{queryId}\n@desc Delete query\n@required {queryId: str}\n@returns(200) {errors: [map], messages: [map], result: map{adhoc: bool, created: str, createdBy: str, description: str?, id: str, name: str, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map{isRegex: bool, matchCase: bool, value: any}, orderBy: map{order: str, value: str}}, updated: str, updatedBy: str}, success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint GET /accounts/{account_id}/workers/observability/queries/{queryId}\n@desc Get query\n@required {queryId: str}\n@returns(200) {errors: [map], messages: [map], result: map{adhoc: bool, created: str, createdBy: str, description: str?, id: str, name: str, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map{isRegex: bool, matchCase: bool, value: any}, orderBy: map{order: str, value: str}}, updated: str, updatedBy: str}, success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint PATCH /accounts/{account_id}/workers/observability/queries/{queryId}\n@desc Update query\n@required {queryId: str, description: str, name: str # Query name, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map, orderBy: map}}\n@returns(200) {errors: [map], messages: [map], result: map{adhoc: bool, created: str, createdBy: str, description: str?, id: str, name: str, parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [map], groupBys: [map], havings: [map], limit: int, needle: map{isRegex: bool, matchCase: bool, value: any}, orderBy: map{order: str, value: str}}, updated: str, updatedBy: str}, success: bool} # Successful request\n@errors {401: Unauthorized, 404: Not found, 500: Internal error}\n\n@endpoint POST /accounts/{account_id}/workers/observability/telemetry/keys\n@desc List keys\n@optional {datasets: [str]= # Leave this empty to use the default datasets, filters: [any]= # Apply filters to narrow key discovery. Supports nested groups via kind: 'group'. Maximum nesting depth is 4., from: num, keyNeedle: map{isRegex: bool, matchCase: bool, value!: any} # If the user suggests a key, use this to narrow down the list of keys returned. Make sure matchCase is false to avoid case sensitivity issues., limit: num # Advanced usage: set limit=1000+ to retrieve comprehensive key options without needing additional filtering., needle: map{isRegex: bool, matchCase: bool, value!: any} # Search for a specific substring in any of the events, to: num}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # Successful request\n@errors {400: Bad Request, 401: Unauthorized, 500: Internal error}\n\n@endpoint POST /accounts/{account_id}/workers/observability/telemetry/query\n@desc Run a query\n@required {queryId: str # Unique identifier for the query to execute, timeframe: map{from!: num, to!: num} # Timeframe for your query using Unix timestamps in milliseconds. Provide from/to epoch ms; narrower timeframes provide faster responses and more specific results.}\n@optional {chart: bool # Whether to include timeseties data in the response, compare: bool # Whether to include comparison data with previous time periods, dry: bool=false # Whether to perform a dry run without saving the results of the query. Useful for validation, granularity: num # This is only used when the view is calculations. Leaving it empty lets Workers Observability detect the correct granularity., ignoreSeries: bool=false # Whether to ignore time-series data in the results and return only aggregated values, limit: num=50 # Use this limit to cap the number of events returned when the view is events., offset: str # Cursor pagination for event/trace/invocation views. Pass the last item's $metadata.id as the next offset., offsetBy: num # Numeric offset for pattern results (top-N list). Use with limit to page pattern groups; not used by cursor pagination., offsetDirection: str # Direction for offset-based pagination (e.g., 'next', 'prev'), parameters: map{calculations: [map], datasets: [str], filterCombination: str, filters: [any], groupBys: [map], havings: [map], limit: int, needle: map, orderBy: map} # Optional parameters to pass to the query execution, view: str(traces/events/calculations/invocations/requests/agents)=calculations # Examples by view type. Events: show errors for a worker in the last 30 minutes. Calculations: p99 of wall time or count by status code. Invocations: find a specific request that resulted in a 500.}\n@returns(200) {errors: [map], messages: [map], result: map{agents: [map], calculations: [map], compare: [map], events: map{count: num, events: [map], fields: [map], series: [map]}, invocations: map, run: map{accountId: str, created: str, dry: bool, granularity: num, id: str, query: any, statistics: map{abr_level: num, bytes_read: num, elapsed: num, rows_read: num}, status: str, timeframe: map{from: num, to: num}, updated: str, userId: str}, statistics: map{abr_level: num, bytes_read: num, elapsed: num, rows_read: num}, traces: [map]}, success: bool} # Successful request\n@errors {400: Bad Request, 401: Unauthorized, 500: Internal error}\n\n@endpoint POST /accounts/{account_id}/workers/observability/telemetry/values\n@desc List values\n@required {datasets: [str] # Leave this empty to use the default datasets, key: str, timeframe: map{from!: num, to!: num}, type: str(string/boolean/number)}\n@optional {filters: [any]= # Apply filters before listing values. Supports nested groups via kind: 'group'. Maximum nesting depth is 4., limit: num=50, needle: map{isRegex: bool, matchCase: bool, value!: any} # Search for a specific substring in the event.}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # Successful request\n@errors {400: Bad Request, 401: Unauthorized, 500: Internal error}\n\n@endpoint GET /accounts/{account_id}/workers/placement/regions\n@desc List Placement Regions\n@required {account_id: str}\n@returns(200) List Placement Regions response.\n@errors {4XX: List Placement Regions response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts\n@desc List Workers\n@required {account_id: str}\n@optional {tags: str # Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.}\n@returns(200) List Workers response.\n@errors {4XX: List Workers response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts-search\n@desc Search Workers\n@required {account_id: str}\n@optional {name: str, id: str, order_by: str(created_on/modified_on/name)=name, page: int=1 # Current page., per_page: int=10 # Items per page.}\n@returns(200) Search Workers success.\n@errors {4XX: Search Workers failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/scripts/{script_name}\n@desc Delete Worker\n@required {account_id: str, script_name: str}\n@optional {force: bool # If set to true, delete will not be stopped by associated service binding, durable object, or other binding. Any of these associated bindings/durable objects will be deleted along with the script.}\n@returns(200) Delete Worker response.\n@errors {4XX: Delete Worker response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}\n@desc Download Worker\n@required {account_id: str, script_name: str}\n@returns(200) Worker successfully downloaded. Returns script content as a multipart form, with no metadata part and no JSON encoding applied.\n@errors {4XX: Download Worker response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/scripts/{script_name}\n@desc Upload Worker Module\n@required {account_id: str, script_name: str}\n@optional {bindings_inherit: str # When set to \"strict\", the upload will fail if any `inherit` type bindings cannot be resolved against the previous version of the Worker. Without this, unresolvable inherit bindings are silently dropped.}\n@returns(200) Upload Worker Module response.\n@errors {4XX: Upload Worker Module response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session\n@desc Create Assets Upload Session\n@required {account_id: str, script_name: str, manifest: map # A manifest ([path]: {hash, size}) map of files to upload. As an example, `/blog/hello-world.html` would be a valid path key.}\n@returns(200) Create Assets Upload Session response.\n@errors {4XX: Create Assets Upload Session response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/scripts/{script_name}/content\n@desc Put script content\n@required {account_id: str, script_name: str}\n@optional {CF-WORKER-BODY-PART: str # The multipart name of a script upload part containing script content in service worker format. Alternative to including in a metadata part., CF-WORKER-MAIN-MODULE-PART: str # The multipart name of a script upload part containing script content in es module format. Alternative to including in a metadata part.}\n@returns(200) Put script content.\n@errors {4XX: Put script content failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/content/v2\n@desc Get script content\n@required {account_id: str, script_name: str}\n@returns(200) Fetch script content.\n@errors {4XX: Fetch script content failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/deployments\n@desc List Deployments\n@required {account_id: str, script_name: str}\n@returns(200) List Deployments response.\n@errors {4XX: List Deployments response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/scripts/{script_name}/deployments\n@desc Create Deployment\n@required {account_id: str, script_name: str, created_on: str(date-time), id: str(uuid), source: str, strategy: str, versions: [map{percentage!: num, version_id!: str(uuid)}]}\n@optional {force: bool # If set to true, the deployment will be created even if normally blocked by something such rolling back to an older version when a secret has changed., annotations: map{workers/message: str, workers/triggered_by: str}, author_email: str(email)}\n@returns(200) Create Deployment response.\n@errors {4XX: Create Deployment response failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}\n@desc Delete Deployment\n@required {account_id: str, script_name: str, deployment_id: str(uuid)}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete Deployment response.\n@errors {4XX: Delete Deployment response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}\n@desc Get Deployment\n@required {account_id: str, script_name: str, deployment_id: str(uuid)}\n@returns(200) Get Deployment response.\n@errors {4XX: Get Deployment response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/schedules\n@desc Get Cron Triggers\n@required {account_id: str, script_name: str}\n@returns(200) Get Cron Triggers response.\n@errors {4XX: Get Cron Triggers response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/scripts/{script_name}/schedules\n@desc Update Cron Triggers\n@required {account_id: str, script_name: str}\n@returns(200) Update Cron Triggers response.\n@errors {4XX: Update Cron Triggers response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/script-settings\n@desc Get Script Settings\n@required {account_id: str, script_name: str}\n@returns(200) Fetch script settings.\n@errors {4XX: Fetch script settings failure.}\n\n@endpoint PATCH /accounts/{account_id}/workers/scripts/{script_name}/script-settings\n@desc Patch Script Settings\n@required {account_id: str, script_name: str}\n@optional {logpush: bool=false # Whether Logpush is turned on for the Worker., observability: any, tags: any, tail_consumers: [map{environment: str, namespace: str, service!: str}] # List of Workers that will consume logs from the attached Worker.}\n@returns(200) Patch script settings.\n@errors {4XX: Patch script settings failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/secrets\n@desc List script secrets\n@required {account_id: str, script_name: str}\n@returns(200) List script secrets.\n@errors {4XX: List script secrets failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/scripts/{script_name}/secrets\n@desc Add script secret\n@required {account_id: str, script_name: str}\n@returns(200) Put script secret binding success.\n@errors {429: Too many requests are currently modifying the script., 4XX: Put script secret binding failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}\n@desc Delete script secret\n@required {account_id: str, script_name: str, secret_name: str}\n@optional {url_encoded: bool}\n@returns(200) Delete script secret binding.\n@errors {4XX: Delete script secret failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}\n@desc Get secret binding\n@required {account_id: str, script_name: str, secret_name: str}\n@optional {url_encoded: bool}\n@returns(200) Get script secret binding.\n@errors {4XX: Get script secret failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/settings\n@desc Get Settings\n@required {account_id: str, script_name: str}\n@returns(200) Fetch settings.\n@errors {4XX: Fetch settings failure.}\n\n@endpoint PATCH /accounts/{account_id}/workers/scripts/{script_name}/settings\n@desc Patch Settings\n@required {account_id: str, script_name: str}\n@returns(200) Patch settings.\n@errors {4XX: Patch settings failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/scripts/{script_name}/subdomain\n@desc Delete Worker subdomain\n@required {account_id: str, script_name: str}\n@returns(200) Delete subdomain response.\n@errors {4XX: Delete subdomain response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/subdomain\n@desc Get Worker subdomain\n@required {account_id: str, script_name: str}\n@returns(200) Get subdomain response.\n@errors {4XX: Get subdomain response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/scripts/{script_name}/subdomain\n@desc Post Worker subdomain\n@required {account_id: str, script_name: str, enabled: bool # Whether the Worker should be available on the workers.dev subdomain.}\n@optional {previews_enabled: bool # Whether the Worker's Preview URLs should be available on the workers.dev subdomain.}\n@returns(200) Post subdomain response.\n@errors {4XX: Post subdomain response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/tails\n@desc List Tails\n@required {account_id: str, script_name: str}\n@returns(200) List Tails response.\n@errors {4XX: List Tails response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/scripts/{script_name}/tails\n@desc Start Tail\n@required {account_id: str, script_name: str}\n@returns(200) Start Tail response.\n@errors {4XX: Start Tail response failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/scripts/{script_name}/tails/{id}\n@desc Delete Tail\n@required {account_id: str, script_name: str, id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete Tail response.\n@errors {4XX: Delete Tail response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/usage-model\n@desc Fetch Usage Model\n@required {account_id: str, script_name: str}\n@returns(200) Fetch Usage Model response.\n@errors {4XX: Fetch Usage Model response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/scripts/{script_name}/usage-model\n@desc Update Usage Model\n@required {account_id: str, script_name: str}\n@optional {usage_model: str(standard/bundled/unbound)=standard # Usage model for the Worker invocations., user_limits: map{cpu_ms: int} # User-defined resource limits for Workers with standard usage model.}\n@returns(200) Update Usage Model response.\n@errors {4XX: Update Usage Model response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/versions\n@desc List Versions\n@required {account_id: str, script_name: str}\n@optional {deployable: bool=false # Only return versions that can be used in a deployment. Ignores pagination., page: int=1 # Current page., per_page: int # Items per-page.}\n@returns(200) List Versions response.\n@errors {4XX: List Versions response failure.}\n\n@endpoint POST /accounts/{account_id}/workers/scripts/{script_name}/versions\n@desc Upload Version\n@required {account_id: str, script_name: str}\n@optional {bindings_inherit: str # When set to \"strict\", the upload will fail if any `inherit` type bindings cannot be resolved against the previous version of the Worker. Without this, unresolvable inherit bindings are silently dropped.}\n@returns(200) Upload Version response.\n@errors {4XX: Upload Version response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/scripts/{script_name}/versions/{version_id}\n@desc Get Version Detail\n@required {account_id: str, script_name: str, version_id: str}\n@returns(200) Get Version Detail response.\n@errors {4XX: Get Version Detail response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content\n@desc Get script content\n@required {account_id: str, service_name: str, environment_name: str}\n@returns(200) Get script content.\n@errors {4XX: Get script content failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content\n@desc Put script content\n@required {account_id: str, service_name: str, environment_name: str}\n@optional {CF-WORKER-BODY-PART: str # The multipart name of a script upload part containing script content in service worker format. Alternative to including in a metadata part., CF-WORKER-MAIN-MODULE-PART: str # The multipart name of a script upload part containing script content in es module format. Alternative to including in a metadata part.}\n@returns(200) Put script content.\n@errors {4XX: Put script content failure.}\n\n@endpoint GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings\n@desc Get Script Settings\n@required {account_id: str, service_name: str, environment_name: str}\n@returns(200) Fetch script settings.\n@errors {4XX: Fetch script settings failure.}\n\n@endpoint PATCH /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings\n@desc Patch Script Settings\n@required {account_id: str, service_name: str, environment_name: str}\n@returns(200) Patch script settings.\n@errors {4XX: Patch script settings failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/subdomain\n@desc Delete Subdomain\n@required {account_id: str}\n@returns(204) Subdomain deleted successfully.\n@errors {4XX: Delete Subdomain response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/subdomain\n@desc Get Subdomain\n@required {account_id: str}\n@returns(200) Get Subdomain response.\n@errors {4XX: Get Subdomain response failure.}\n\n@endpoint PUT /accounts/{account_id}/workers/subdomain\n@desc Create Subdomain\n@required {account_id: str, subdomain: str}\n@returns(200) Create Subdomain response.\n@errors {4XX: Create Subdomain response failure.}\n\n@endpoint GET /accounts/{account_id}/workers/workers\n@desc List Workers\n@required {account_id: str}\n@optional {page: int=1 # Current page., per_page: int=10 # Items per-page., order_by: str(deployed_on/updated_on/created_on/name)=deployed_on # Property to sort results by., order: str(asc/desc)=desc # Sort direction.}\n@returns(200) List Workers success.\n@errors {401: Authentication required or insufficient permissions., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint POST /accounts/{account_id}/workers/workers\n@desc Create Worker\n@required {account_id: str}\n@returns(200) Create Worker success.\n@errors {400: Bad Request - Invalid input data., 401: Authentication required or insufficient permissions., 403: Forbidden - Access denied or limit exceeded., 409: Conflict - Resource already exists., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint DELETE /accounts/{account_id}/workers/workers/{worker_id}\n@desc Delete Worker\n@required {account_id: str, worker_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete Worker success.\n@errors {400: Bad Request - Missing or invalid parameters., 401: Authentication required or insufficient permissions., 404: Not Found - Worker does not exist., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint GET /accounts/{account_id}/workers/workers/{worker_id}\n@desc Get Worker\n@required {account_id: str, worker_id: str}\n@returns(200) Get Worker success.\n@errors {400: Bad Request - Missing or invalid parameters., 404: Not Found - Worker does not exist., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint PATCH /accounts/{account_id}/workers/workers/{worker_id}\n@desc Edit Worker\n@required {account_id: str, worker_id: str}\n@returns(200) Partially Update Worker success.\n@errors {400: Bad Request - Invalid input data., 401: Authentication required or insufficient permissions., 403: Forbidden - Insufficient permissions or quota exceeded., 404: Not Found - Worker does not exist., 409: Conflict - Worker name already exists., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint PUT /accounts/{account_id}/workers/workers/{worker_id}\n@desc Update Worker\n@required {account_id: str, worker_id: str}\n@returns(200) Update Worker success.\n@errors {400: Bad Request - Invalid input data., 401: Authentication required or insufficient permissions., 403: Forbidden - Insufficient permissions or quota exceeded., 404: Not Found - Worker does not exist., 409: Conflict - Worker name already exists., 500: Internal Server Error - An unexpected server error occurred.}\n\n@endpoint GET /accounts/{account_id}/workers/workers/{worker_id}/versions\n@desc List Versions\n@required {account_id: str, worker_id: str}\n@optional {page: int=1 # Current page., per_page: int=10 # Items per-page.}\n@returns(200) List versions success.\n@errors {4XX: List versions failure.}\n\n@endpoint POST /accounts/{account_id}/workers/workers/{worker_id}/versions\n@desc Create Version\n@required {account_id: str, worker_id: str, created_on: str(date-time) # When the version was created., id: str(uuid) # Version identifier., number: int # The integer version number, starting from one., urls: [str(uri)] # All routable URLs that always point to this version. Does not include alias URLs, since aliases can be updated to point to a different version.}\n@optional {deploy: bool, annotations: map{workers/message: str, workers/tag: str, workers/triggered_by: str} # Metadata about the version., assets: map{config: map, jwt: str} # Configuration for assets within a Worker.  [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and [`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files should be included as modules named `_headers` and `_redirects` with content type `text/plain`., bindings: [map] # List of bindings attached to a Worker. You can find more about bindings on our docs: https://developers.cloudflare.com/workers/configuration/multipart-upload-metadata/#bindings., compatibility_date: str # Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker., compatibility_flags: [str]= # Flags that enable or disable certain features in the Workers runtime. Used to enable upcoming features or opt in or out of specific changes not included in a `compatibility_date`., limits: map{cpu_ms!: int} # Resource limits enforced at runtime., main_module: str # The name of the main module in the `modules` array (e.g. the name of the module that exports a `fetch` handler)., migrations: any # Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed., modules: [map{content_base64!: str(byte), content_type!: str, name!: str}] # Code, sourcemaps, and other content used at runtime.  This includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and [`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure  [Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be  included as modules named `_headers` and `_redirects` with content type `text/plain`., placement: map # Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host., source: str # The client used to create the version., startup_time_ms: int # Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time)., usage_model: str(standard/bundled/unbound)=standard # Usage model for the version.}\n@returns(200) Create version success.\n@errors {4XX: Create version failure.}\n\n@endpoint DELETE /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id}\n@desc Delete Version\n@required {account_id: str, worker_id: str, version_id: str}\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete version success.\n@errors {4XX: Delete version failure.}\n\n@endpoint GET /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id}\n@desc Get Version\n@required {account_id: str, worker_id: str, version_id: str}\n@optional {include: str}\n@returns(200) Get version success.\n@errors {4XX: Get version failure.}\n\n@endpoint GET /accounts/{account_id}/workflows\n@desc List all Workflows\n@required {account_id: str}\n@optional {per_page: num=10, page: num=1, search: str # Allows filtering workflows` name.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # List of all Workflows belonging to a account.\n@errors {400: Input Validation Error.}\n\n@endpoint DELETE /accounts/{account_id}/workflows/{workflow_name}\n@desc Deletes a Workflow\n@required {workflow_name: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{status: str, success: bool?}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Deletes a Workflow.\n@errors {400: Workflow has no deployed versions., 404: Workflow not found.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}\n@desc Get Workflow details\n@required {workflow_name: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{class_name: str, created_on: str(date-time), id: str(uuid), instances: map{complete: num, errored: num, paused: num, queued: num, running: num, terminated: num, waiting: num, waitingForPause: num}, modified_on: str(date-time), name: str, script_name: str, triggered_on: str(date-time)?}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get Workflow details.\n@errors {400: Workflow has no deployed versions., 404: Workflow not found.}\n\n@endpoint PUT /accounts/{account_id}/workflows/{workflow_name}\n@desc Create/modify Workflow\n@required {workflow_name: str, account_id: str, class_name: str, script_name: str}\n@optional {limits: map{steps: int}}\n@returns(200) {errors: [map], messages: [map], result: map{class_name: str, created_on: str(date-time), id: str(uuid), is_deleted: num, modified_on: str(date-time), name: str, script_name: str, terminator_running: num, triggered_on: str(date-time)?, version_id: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Create/modify a Workflow based on a deployed script with an existing `WorkflowEntrypoint` class. Must be done after deploying the corresponding script.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/instances\n@desc List of workflow instances\n@required {workflow_name: str, account_id: str}\n@optional {page: num # `page` and `cursor` are mutually exclusive, use one or the other., per_page: num=50, cursor: str # `page` and `cursor` are mutually exclusive, use one or the other., direction: str(asc/desc) # should only be used when `cursor` is used, defines a new direction for the cursor, status: str(queued/running/paused/errored/terminated/complete/waitingForPause/waiting), date_start: str(date-time) # Accepts ISO 8601 with no timezone offsets and in UTC., date_end: str(date-time) # Accepts ISO 8601 with no timezone offsets and in UTC.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # List of workflow instances.\n@errors {400: Input Validation Error., 404: Workflow Name not found.}\n\n@endpoint POST /accounts/{account_id}/workflows/{workflow_name}/instances\n@desc Create a new workflow instance\n@required {workflow_name: str, account_id: str}\n@optional {instance_id: str, instance_retention: map{error_retention: any, success_retention: any}, params: map}\n@returns(200) {errors: [map], messages: [map], result: map{id: str, status: str, version_id: str(uuid), workflow_id: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Create workflow instance. Body is a JSON parsable string that it's passed into the new instance as the event payload.\n@errors {400: Provided Workflow ID is not valid., 404: Workflow Name not found.}\n\n@endpoint POST /accounts/{account_id}/workflows/{workflow_name}/instances/batch\n@desc Batch create new Workflow instances\n@required {workflow_name: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Batch create workflow instances. Body is a JSON list that contain all payloads and ids that are passed into the new instance as the event payload.\n@errors {400: Provided Workflow ID is not valid., 404: Workflow Name not found.}\n\n@endpoint POST /accounts/{account_id}/workflows/{workflow_name}/instances/batch/terminate\n@desc Batch terminate instances of a workflow\n@required {workflow_name: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{instancesTerminated: num, status: str}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Batch terminate instances of a workflow, via a async job. Body is a JSON list that contain the ids of the instances to terminate.\n@errors {400: Provided Workflow ID is not valid., 404: Workflow Name not found.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/instances/terminate\n@desc Get status of the job responsible for terminate all instances of a workflow\n@required {workflow_name: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{status: str}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get status of the job responsible for terminate all instances of a workflow.\n@errors {400: Input Validation Error., 404: Workflow Name not found.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}\n@desc Get logs and status from instance\n@required {workflow_name: str, instance_id: str, account_id: str}\n@optional {simple: str(true/false)=false # When true, omits step details and returns only metadata with step_count., order: str(asc/desc)=asc # Step ordering: \"asc\" (default, oldest first) or \"desc\" (newest first).}\n@returns(200) {errors: [map], messages: [map], result: map{end: str(date-time)?, error: map?{message: str, name: str}, output: any, params: map, queued: str(date-time), start: str(date-time)?, status: str, step_count: int, steps: [any], success: bool?, trigger: map{source: str}, versionId: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get all logs and status from the instance.\n@errors {400: Bad Request., 404: Instance not found.}\n\n@endpoint POST /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}/events/{event_type}\n@desc Send event to instance\n@required {workflow_name: str, instance_id: str, event_type: str, account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Send an event to an instance.\n@errors {400: Bad Request., 404: Workflow not found.}\n\n@endpoint PATCH /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}/status\n@desc Change status of instance\n@required {workflow_name: str, instance_id: str, account_id: str, status: str(resume/pause/terminate/restart) # Apply action to instance.}\n@returns(200) {errors: [map], messages: [map], result: map{status: str, timestamp: str(date-time)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Change status of instance - it can be paused, resumed or terminated.\n@errors {400: Bad Request., 404: Instance not found., 409: Instance not in a restartable state.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/versions\n@desc List deployed Workflow versions\n@required {workflow_name: str, account_id: str}\n@optional {per_page: num=50, page: num=1}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # List deployed workflow versions.\n@errors {400: Bad Request.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}\n@desc Get Workflow version details\n@required {workflow_name: str, version_id: str(uuid), account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{class_name: str, created_on: str(date-time), has_dag: bool, id: str(uuid), limits: map{steps: int}, modified_on: str(date-time), workflow_id: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get specific version details.\n@errors {400: Bad Request., 404: Version not found.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/dag\n@desc Get Workflow version dag\n@required {workflow_name: str, version_id: str(uuid), account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{class_name: str, created_on: str(date-time), dag: map?, id: str(uuid), modified_on: str(date-time), workflow_id: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get the parsed DAG for a specific workflow version.\n@errors {404: Version not found.}\n\n@endpoint GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph\n@desc Get Workflow version graph\n@required {workflow_name: str, version_id: str(uuid), account_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{class_name: str, created_on: str(date-time), graph: map?{version: num, workflow: map{class_name: str, functions: map, nodes: [any], payload: any}}, id: str(uuid), modified_on: str(date-time), workflow_id: str(uuid)}, result_info: map{count: num, cursor: str, page: num, per_page: num, total_count: num}, success: bool} # Get the parsed graph for a specific workflow version.\n@errors {404: Version not found.}\n\n@endpoint GET /accounts/{account_id}/zerotrust/connectivity_settings\n@desc Get Zero Trust Connectivity Settings\n@required {account_id: str}\n@returns(200) Get Zero Trust Connectivity Settings response\n@errors {4XX: Get Zero Trust Connectivity Settings response failure}\n\n@endpoint PATCH /accounts/{account_id}/zerotrust/connectivity_settings\n@desc Updates the Zero Trust Connectivity Settings\n@required {account_id: str}\n@optional {icmp_proxy_enabled: bool # A flag to enable the ICMP proxy for the account network., offramp_warp_enabled: bool # A flag to enable WARP to WARP traffic.}\n@returns(200) Update Zero Trust Connectivity Settings response\n@errors {4XX: Update Zero Trust Connectivity Settings response failure}\n\n@endpoint GET /accounts/{account_id}/zerotrust/routes/hostname\n@desc List hostname routes\n@required {account_id: str}\n@optional {id: str(uuid), hostname: str # If set, only list hostname routes that contain a substring of the given value, the filter is case-insensitive., tunnel_id: str(uuid) # If set, only list hostname routes that point to a specific tunnel., comment: str, existed_at: str(url-encoded-date-time), is_deleted: bool=false, per_page: num, page: num}\n@returns(200) List hostname routes response\n@errors {4XX: List hostname routes failure}\n\n@endpoint POST /accounts/{account_id}/zerotrust/routes/hostname\n@desc Create hostname route\n@required {account_id: str}\n@optional {comment: str # An optional description of the hostname route., hostname: str # The hostname of the route., tunnel_id: str(uuid) # UUID of the tunnel.}\n@returns(200) Create hostname route response\n@errors {4XX: Create hostname route response failure}\n\n@endpoint DELETE /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n@desc Delete hostname route\n@required {account_id: str, hostname_route_id: str(uuid)}\n@returns(200) Delete hostname route response\n@errors {4XX: Delete hostname route response failure}\n\n@endpoint GET /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n@desc Get hostname route\n@required {account_id: str, hostname_route_id: str(uuid)}\n@returns(200) Get hostname route response\n@errors {4XX: Get hostname route response failure}\n\n@endpoint PATCH /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}\n@desc Update hostname route\n@required {account_id: str, hostname_route_id: str(uuid)}\n@optional {comment: str # An optional description of the hostname route., hostname: str # The hostname of the route., tunnel_id: str(uuid) # UUID of the tunnel.}\n@returns(200) Update hostname route response\n@errors {4XX: Update hostname route response failure}\n\n@endpoint GET /accounts/{account_id}/zerotrust/subnets\n@desc List Subnets\n@required {account_id: str}\n@optional {name: str # If set, only list subnets with the given name, comment: str, network: any, existed_at: str(url-encoded-date-time), address_family: str # If set, only include subnets in the given address family - `v4` or `v6`, is_default_network: bool, is_deleted: bool, sort_order: str(asc/desc), subnet_types: str(cloudflare_source/warp), per_page: num, page: num}\n@returns(200) List subnets response\n@errors {4XX: List subnets response failure}\n\n@endpoint PATCH /accounts/{account_id}/zerotrust/subnets/cloudflare_source/{address_family}\n@desc Update Cloudflare Source Subnet\n@required {account_id: str, address_family: str}\n@optional {comment: str= # An optional description of the subnet., name: str # A user-friendly name for the subnet., network: str # The private IPv4 or IPv6 range defining the subnet, in CIDR notation.}\n@returns(200) Update subnet response\n@errors {4XX: Update subnet response failure}\n\n@endpoint POST /accounts/{account_id}/zerotrust/subnets/warp\n@desc Create WARP IP subnet\n@required {account_id: str, name: str # A user-friendly name for the subnet., network: str # The private IPv4 or IPv6 range defining the subnet, in CIDR notation.}\n@optional {comment: str= # An optional description of the subnet., is_default_network: bool=false # If `true`, this is the default subnet for the account. There can only be one default subnet per account.}\n@returns(200) Create subnet response\n@errors {4XX: Create subnet response failure}\n\n@endpoint DELETE /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n@desc Delete WARP IP subnet\n@required {account_id: str, subnet_id: str(uuid)}\n@returns(200) Delete subnet response\n@errors {4XX: Delete subnet response failure}\n\n@endpoint GET /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n@desc Get WARP IP subnet\n@required {account_id: str, subnet_id: str(uuid)}\n@returns(200) Get subnet response\n@errors {4XX: Get subnet response failure}\n\n@endpoint PATCH /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}\n@desc Update WARP IP subnet\n@required {account_id: str, subnet_id: str(uuid)}\n@optional {comment: str= # An optional description of the subnet., is_default_network: bool=false # If `true`, this is the default subnet for the account. There can only be one default subnet per account., name: str # A user-friendly name for the subnet., network: str # The private IPv4 or IPv6 range defining the subnet, in CIDR notation.}\n@returns(200) Update subnet response\n@errors {4XX: Update subnet response failure}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/behaviors\n@desc Get all behaviors and associated configuration\n@required {account_id: str}\n@returns(200) Risk scoring behaviors.\n@errors {4XX: Failed to get risk scoring behaviors.}\n\n@endpoint PUT /accounts/{account_id}/zt_risk_scoring/behaviors\n@desc Update configuration for risk behaviors\n@required {account_id: str # Account ID., behaviors: map}\n@returns(200) Dataset created successfully.\n@errors {4XX: Dataset creation failed.}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/integrations\n@desc List all risk score integrations for the account.\n@required {account_id: str}\n@returns(200) List response.\n@errors {4XX: List failure response.}\n\n@endpoint POST /accounts/{account_id}/zt_risk_scoring/integrations\n@desc Create new risk score integration.\n@required {account_id: str, integration_type: str, tenant_url: str(uri) # The base url of the tenant, e.g. \"https://tenant.okta.com\".}\n@optional {reference_id: str # A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4). https://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider}\n@returns(200) Create response.\n@errors {4XX: Create failure response.}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/integrations/reference_id/{reference_id}\n@desc Get risk score integration by reference id.\n@required {account_id: str, reference_id: str}\n@returns(200) Get response.\n@errors {4XX: Get failure response.}\n\n@endpoint DELETE /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id}\n@desc Delete a risk score integration.\n@required {account_id: str, integration_id: str(uuid)}\n@returns(200) Delete response.\n@errors {4XX: Delete failure response.}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id}\n@desc Get risk score integration by id.\n@required {account_id: str, integration_id: str(uuid)}\n@returns(200) Get response.\n@errors {4XX: Get failure response.}\n\n@endpoint PUT /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id}\n@desc Update a risk score integration.\n@required {account_id: str, integration_id: str(uuid), active: bool # Whether this integration is enabled. If disabled, no risk changes will be exported to the third-party., tenant_url: str(uri) # The base url of the tenant, e.g. \"https://tenant.okta.com\".}\n@optional {reference_id: str # A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4). https://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider}\n@returns(200) Update response.\n@errors {4XX: Update failure response.}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/summary\n@desc Get risk score info for all users in the account\n@required {account_id: str}\n@returns(200) Risk score for all users in the account.\n@errors {4XX: Failed to get risk scores.}\n\n@endpoint GET /accounts/{account_id}/zt_risk_scoring/{user_id}\n@desc Get risk event/score information for a specific user\n@required {account_id: str, user_id: str(uuid)}\n@returns(200) Risk events.\n@errors {4XX: Failed to get risk events.}\n\n@endpoint POST /accounts/{account_id}/zt_risk_scoring/{user_id}/reset\n@desc Clear the risk score for a particular user\n@required {account_id: str, user_id: str(uuid)}\n@returns(200) Dataset created successfully.\n@errors {4XX: Dataset creation failed.}\n\n@endgroup\n\n@group certificates\n@endpoint GET /certificates\n@desc List Certificates\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20, limit: int, offset: int}\n@returns(200) List Certificates response\n@errors {4XX: List Certificates response failure}\n\n@endpoint POST /certificates\n@desc Create Certificate\n@required {csr: str # The Certificate Signing Request (CSR). Must be newline-encoded., hostnames: [str] # Array of hostnames or wildcard names bound to the certificate. Hostnames must be fully qualified domain names (FQDNs) belonging to zones on your account (e.g., `example.com` or `sub.example.com`). Wildcards are supported only as a `*.` prefix for a single level (e.g., `*.example.com`). Double wildcards (`*.*.example.com`) and interior wildcards (`foo.*.example.com`) are not allowed. The wildcard suffix must be a multi-label domain (`*.example.com` is valid, but `*.com` is not). Unicode/IDN hostnames are accepted and automatically converted to punycode., request_type: str(origin-rsa/origin-ecc/keyless-certificate) # Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).}\n@optional {requested_validity: num(7/30/90/365/730/1095/5475)=5475 # The number of days for which the certificate should be valid.}\n@returns(200) Create Certificate response\n@errors {4XX: Create Certificate response failure}\n\n@endpoint DELETE /certificates/{certificate_id}\n@desc Revoke Certificate\n@required {certificate_id: str}\n@returns(200) Revoke Certificate response\n@errors {4XX: Revoke Certificate response failure}\n\n@endpoint GET /certificates/{certificate_id}\n@desc Get Certificate\n@required {certificate_id: str}\n@returns(200) Get Certificate response\n@errors {4XX: Get Certificate response failure}\n\n@endgroup\n\n@group internal\n@endpoint POST /internal/submit\n@desc Internal route for testing URL submissions\n\n@endgroup\n\n@group ips\n@endpoint GET /ips\n@desc Cloudflare/JD Cloud IP Details\n@optional {networks: str # Specified as `jdcloud` to list IPs used by JD Cloud data centers.}\n@returns(200) Cloudflare IP Details response\n@errors {4XX: Cloudflare IP Details response failure}\n\n@endgroup\n\n@group live\n@endpoint GET /live\n@desc Run liveness checks\n\n@endgroup\n\n@group memberships\n@endpoint GET /memberships\n@desc List Memberships\n@optional {account.name: str, page: num=1, per_page: num=20, order: str(id/account.name/status), direction: str(asc/desc), name: str, status: str(accepted/pending/rejected)}\n@returns(200) List Memberships response\n@errors {4XX: List Memberships response failure}\n\n@endpoint DELETE /memberships/{membership_id}\n@desc Delete Membership\n@required {membership_id: str}\n@returns(200) Delete Membership response\n@errors {4XX: Delete Membership response failure}\n\n@endpoint GET /memberships/{membership_id}\n@desc Membership Details\n@required {membership_id: str}\n@returns(200) Membership Details response\n@errors {4XX: Membership Details response failure}\n\n@endpoint PUT /memberships/{membership_id}\n@desc Update Membership\n@required {membership_id: str, status: any(accepted/rejected) # Whether to accept or reject this account invitation.}\n@returns(200) Update Membership response\n@errors {4XX: Update Membership response failure}\n\n@endgroup\n\n@group organizations\n@endpoint GET /organizations\n@desc List organizations the user has access to\n@optional {id: [str] # Only return organizations with the specified IDs (ex. id=foo&id=bar). Send multiple elements by repeating the query value., name: str # (case-sensitive) Filter the list of organizations to where the name is equal to a particular string., name.startsWith: str # (case-insensitive) Filter the list of organizations to where the name starts with a particular string., name.endsWith: str # (case-insensitive) Filter the list of organizations to where the name ends with a particular string., name.contains: str # (case-insensitive) Filter the list of organizations to where the name contains a particular string., containing.account: str # Filter the list of organizations to the ones that contain this particular account., containing.user: str # Filter the list of organizations to the ones that contain this particular user.  IMPORTANT: Just because an organization \"contains\" a user is not a representation of any authorization or privilege to manage any resources therein. An organization \"containing\" a user simply means the user is managed by that organization., containing.organization: str # Filter the list of organizations to the ones that contain this particular organization., parent.id: any # Filter the list of organizations to the ones that are a sub-organization of the specified organization.  \"null\" is a valid value to provide for this parameter. It means \"where an organization has no parent (i.e. it is a 'root' organization).\", page_token: str # An opaque token returned from the last list response that when provided will retrieve the next page.  Parameters used to filter the retrieved list must remain in subsequent requests with a page token., page_size: int # The amount of items to return. Defaults to 10.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{next_page_token: str, total_size: int}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint POST /organizations\n@desc Create organization\n@required {create_time: str(date-time), id: any, meta: map{flags: any, managed_by: str}, name: str}\n@optional {parent: map{id!: str, name!: str}, profile: map{business_address!: str, business_email!: str, business_name!: str, business_phone!: str, external_metadata!: str}}\n@returns(200) {errors: [map], messages: [map], result: map{create_time: str(date-time), id: any, meta: map{flags: any, managed_by: str}, name: str, parent: map{id: str, name: str}, profile: map{business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint DELETE /organizations/{organization_id}\n@desc Delete organization.\n@required {organization_id: str # The ID of the organization to delete.}\n@returns(200) {errors: [map], messages: [map], result: map{id: str}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}\n@desc Get organization\n@required {organization_id: str # The ID of the organization to retrieve.}\n@returns(200) {errors: [map], messages: [map], result: map{create_time: str(date-time), id: any, meta: map{flags: any, managed_by: str}, name: str, parent: map{id: str, name: str}, profile: map{business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint PUT /organizations/{organization_id}\n@desc Modify organization.\n@required {organization_id: str # The ID of the organization to modify., create_time: str(date-time), id: any, meta: map{flags: any, managed_by: str}, name: str}\n@optional {parent: map{id!: str, name!: str}, profile: map{business_address!: str, business_email!: str, business_name!: str, business_phone!: str, external_metadata!: str}}\n@returns(200) {errors: [map], messages: [map], result: map{create_time: str(date-time), id: any, meta: map{flags: any, managed_by: str}, name: str, parent: map{id: str, name: str}, profile: map{business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}/accounts\n@desc Get organization accounts\n@required {organization_id: str # The ID of the organization to retrieve a list of accounts for.}\n@optional {account_pubname: str # (case-insensitive) Filter the list of accounts to where the account_pubname is equal to a particular string., account_pubname.startsWith: str # (case-insensitive) Filter the list of accounts to where the account_pubname starts with a particular string., account_pubname.endsWith: str # (case-insensitive) Filter the list of accounts to where the account_pubname ends with a particular string., account_pubname.contains: str # (case-insensitive) Filter the list of accounts to where the account_pubname contains a particular string., name: str # (case-insensitive) Filter the list of accounts to where the name is equal to a particular string., name.startsWith: str # (case-insensitive) Filter the list of accounts to where the name starts with a particular string., name.endsWith: str # (case-insensitive) Filter the list of accounts to where the name ends with a particular string., name.contains: str # (case-insensitive) Filter the list of accounts to where the name contains a particular string., order_by: str # Field to order results by. Currently supported values: `account_name`. When not specified, results are ordered by internal account ID., direction: str(asc/desc) # Sort direction for the order_by field. Valid values: `asc`, `desc`. Defaults to `asc` when order_by is specified., page_token: str # An opaque token returned from the last list response that when provided will retrieve the next page.  Parameters used to filter the retrieved list must remain in subsequent requests with a page token., page_size: int # The amount of items to return. Defaults to 10.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{next_page_token: str, total_size: int}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}/logs/audit\n@desc Get organization audit logs (Version 2, Beta release)\n@required {organization_id: str, since: str(date) # Limits the returned results to logs newer than the specified date. This can be a date string 2019-04-30 (interpreted in UTC) or an absolute timestamp that conforms to RFC3339., before: str(date) # Limits the returned results to logs older than the specified date. This can be a date string 2019-04-30 (interpreted in UTC) or an absolute timestamp that conforms to RFC3339.}\n@optional {action_result: [str], action_type: [str], actor_context: [str], actor_email: [str(email)], actor_id: [str], actor_ip_address: [str], actor_token_id: [str], actor_token_name: [str], actor_type: [str], id: [str], raw_cf_ray_id: [str], raw_method: [str], raw_status_code: [int], raw_uri: [str], resource_id: [str], resource_product: [str], resource_type: [str], resource_scope: [str], action_result.not: [str], action_type.not: [str], actor_context.not: [str], actor_email.not: [str(email)], actor_id.not: [str], actor_ip_address.not: [str], actor_token_id.not: [str], actor_token_name.not: [str], actor_type.not: [str], id.not: [str], raw_cf_ray_id.not: [str], raw_method.not: [str], raw_status_code.not: [int], raw_uri.not: [str], resource_id.not: [str], resource_product.not: [str], resource_type.not: [str], resource_scope.not: [str], direction: str(desc/asc)=desc, limit: num=100, cursor: str}\n@returns(200) Get organization audit logs successful response\n@errors {4XX: Get organization audit logs failed response}\n\n@endpoint GET /organizations/{organization_id}/members\n@desc List organization members\n@required {organization_id: str}\n@optional {status: [str] # Filter the list of memberships by membership status., user.email: str # Filter the list of memberships for a specific email., user.email.contains: str # Filter the list of memberships for a specific email that contains a substring., user.email.startsWith: str # Filter the list of memberships for a specific email that starts with a substring., user.email.endsWith: str # Filter the list of memberships for a specific email that ends with a substring., page_token: str # An opaque token returned from the last list response that when provided will retrieve the next page.  Parameters used to filter the retrieved list must remain in subsequent requests with a page token., page_size: int # The amount of items to return. Defaults to 10.}\n@returns(200) {errors: [map], messages: [map], result: [map], result_info: map{next_page_token: str, total_size: int}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint POST /organizations/{organization_id}/members\n@desc Create organization member\n@required {organization_id: str, member: map{status: str, user!: map}}\n@returns(200) {errors: [map], messages: [map], result: map{create_time: str(date-time), id: str, meta: map, status: str, update_time: str(date-time), user: map{email: str, id: str, name: str, two_factor_authentication_enabled: bool}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint DELETE /organizations/{organization_id}/members/{member_id}\n@desc Delete organization member\n@required {organization_id: str, member_id: str, member_id: str # Organization Member ID}\n@returns(204) There is no content to send for this request, but the headers may be useful.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}/members/{member_id}\n@desc Get organization member\n@required {organization_id: str, member_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{create_time: str(date-time), id: str, meta: map, status: str, update_time: str(date-time), user: map{email: str, id: str, name: str, two_factor_authentication_enabled: bool}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint POST /organizations/{organization_id}/members:batchCreate\n@desc Batch create organization members\n@required {organization_id: str, members: [map{status: str, user!: map}]}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}/profile\n@desc Get organization profile\n@required {organization_id: str # The ID of the organization to retrieve a profile for.}\n@returns(200) {errors: [map], messages: [map], result: map{business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint PUT /organizations/{organization_id}/profile\n@desc Modify organization profile.\n@required {organization_id: str, business_address: str, business_email: str, business_name: str, business_phone: str, external_metadata: str}\n@returns(204) There is no content to send for this request, but the headers may be useful.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /organizations/{organization_id}/shares\n@desc List organization shares\n@required {organization_id: str}\n@optional {status: str # Filter shares by status., kind: str # Filter shares by kind., target_type: str # Filter shares by target_type., resource_types: [str] # Filter share resources by resource_types., order: str(name/created)=created # Order shares by values in the given field., direction: str(asc/desc)=asc # Direction to sort objects., page: int # Page number., per_page: int # Number of objects to return per page.}\n@returns(200) List organization shares response.\n@errors {4XX: List organization shares response failure., 5XX: List organization shares response failure.}\n\n@endgroup\n\n@group radar\n@endpoint GET /radar/ai/bots/summary/user_agent\n@desc Get AI user agents summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/bots/summary/{dimension}\n@desc Get AI bots HTTP requests distribution by dimension\n@required {dimension: str(USER_AGENT/CRAWL_PURPOSE/INDUSTRY/VERTICAL/CONTENT_TYPE) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., crawlPurpose: [str] # Filters results by bot crawl purpose., userAgent: [str] # Filters results by user agent., vertical: [str] # Filters results by vertical., industry: [str] # Filters results by industry., contentType: [str] # Filters results by content type category., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/bots/timeseries\n@desc Get AI bots HTTP requests time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., crawlPurpose: [str] # Filters results by bot crawl purpose., userAgent: [str] # Filters results by user agent., industry: [str] # Filters results by industry., vertical: [str] # Filters results by vertical., contentType: [str] # Filters results by content type category., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/bots/timeseries_groups/user_agent\n@desc Get AI user agents time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/bots/timeseries_groups/{dimension}\n@desc Get time series distribution of AI bots HTTP requests by dimension.\n@required {dimension: str(USER_AGENT/CRAWL_PURPOSE/INDUSTRY/VERTICAL/CONTENT_TYPE) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., crawlPurpose: [str] # Filters results by bot crawl purpose., userAgent: [str] # Filters results by user agent., industry: [str] # Filters results by industry., vertical: [str] # Filters results by vertical., contentType: [str] # Filters results by content type category., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/summary/model\n@desc Get Workers AI models summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/summary/task\n@desc Get Workers AI tasks summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/summary/{dimension}\n@desc Get Workers AI inference distribution by dimension\n@required {dimension: str(MODEL/TASK) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/timeseries_groups/model\n@desc Get Workers AI models time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/timeseries_groups/task\n@desc Get Workers AI tasks time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ai/inference/timeseries_groups/{dimension}\n@desc Get time series distribution of Workers AI inference by dimension.\n@required {dimension: str(MODEL/TASK) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/annotations\n@desc Get latest annotations\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., dataSource: str(ALL/AI_BOTS/AI_GATEWAY/BGP/BOTS/CONNECTION_ANOMALY/CT/DNS/DNS_MAGNITUDE/DNS_AS112/DOS/EMAIL_ROUTING/EMAIL_SECURITY/FW/FW_PG/HTTP/HTTP_CONTROL/HTTP_CRAWLER_REFERER/HTTP_ORIGINS/IQI/LEAKED_CREDENTIALS/NET/ROBOTS_TXT/SPEED/WORKERS_AI) # Filters results by data source., eventType: str(EVENT/GENERAL/OUTAGE/PARTIAL_PROJECTION/PIPELINE/TRAFFIC_ANOMALY) # Filters results by event type., asn: int # Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer., location: str # Filters results by location. Specify an alpha-2 location code., origin: str # Filters results by origin., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{annotations: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/annotations/outages\n@desc Get latest Internet outages and anomalies\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., asn: int # Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer., location: str # Filters results by location. Specify an alpha-2 location code., origin: str # Filters results by origin., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{annotations: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/annotations/outages/locations\n@desc Get the number of outages by location\n@optional {limit: int=5 # Limits the number of objects returned in the response., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{annotations: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/dnssec\n@desc Get AS112 DNS queries by DNSSEC summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SUPPORTED: str, SUPPORTED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/edns\n@desc Get AS112 DNS queries by EDNS summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SUPPORTED: str, SUPPORTED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/ip_version\n@desc Get AS112 DNS queries by IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/protocol\n@desc Get AS112 DNS queries by DNS protocol summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{HTTPS: str, TCP: str, TLS: str, UDP: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/query_type\n@desc Get AS112 DNS queries by type summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/response_codes\n@desc Get AS112 DNS queries by response code summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/summary/{dimension}\n@desc Get AS112 summary by dimension\n@required {dimension: str(DNSSEC/EDNS/IP_VERSION/PROTOCOL/QUERY_TYPE/RESPONSE_CODE) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries\n@desc Get AS112 DNS queries time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/dnssec\n@desc Get AS112 DNS queries by DNSSEC support time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SUPPORTED: [str], SUPPORTED: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/edns\n@desc Get AS112 DNS queries by EDNS support summary\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SUPPORTED: [str], SUPPORTED: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/ip_version\n@desc Get AS112 DNS queries by IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/protocol\n@desc Get AS112 DNS queries by DNS protocol time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{HTTPS: [str], TCP: [str], TLS: [str], UDP: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/query_type\n@desc Get AS112 DNS queries by type time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/response_codes\n@desc Get AS112 DNS queries by response code time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/timeseries_groups/{dimension}\n@desc Get AS112 time series grouped by dimension\n@required {dimension: str(DNSSEC/EDNS/IP_VERSION/PROTOCOL/QUERY_TYPE/RESPONSE_CODE) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/as112/top/locations\n@desc Get top locations by AS112 DNS queries\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/as112/top/locations/dnssec/{dnssec}\n@desc Get top locations by AS112 DNS queries with DNSSEC support\n@required {dnssec: str(SUPPORTED/NOT_SUPPORTED) # DNSSEC (DNS Security Extensions) status.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/as112/top/locations/edns/{edns}\n@desc Get top locations by AS112 DNS queries with EDNS support\n@required {edns: str(SUPPORTED/NOT_SUPPORTED) # EDNS (Extension Mechanisms for DNS) status.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/as112/top/locations/ip_version/{ip_version}\n@desc Get top locations by AS112 DNS queries for an IP version\n@required {ip_version: str(IPv4/IPv6) # IP version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer3/summary/bitrate\n@desc Get layer 3 attacks by bitrate summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{OVER_100_GBPS: str, UNDER_500_MBPS: str, _10_GBPS_TO_100_GBPS: str, _1_GBPS_TO_10_GBPS: str, _500_MBPS_TO_1_GBPS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/duration\n@desc Get layer 3 attacks by duration summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{OVER_3_HOURS: str, UNDER_10_MINS: str, _10_MINS_TO_20_MINS: str, _1_HOUR_TO_3_HOURS: str, _20_MINS_TO_40_MINS: str, _40_MINS_TO_1_HOUR: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/industry\n@desc Get layer 3 attacks by targeted industry summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/ip_version\n@desc Get layer 3 attacks by IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/protocol\n@desc Get layer 3 attacks by protocol summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{GRE: str, ICMP: str, TCP: str, UDP: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/vector\n@desc Get layer 3 attacks by vector summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/vertical\n@desc Get layer 3 attacks by targeted vertical summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/summary/{dimension}\n@desc Get layer 3 attacks summary by dimension\n@required {dimension: str(PROTOCOL/IP_VERSION/VECTOR/DURATION/BITRATE/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries\n@desc Get layer 3 attacks by bytes time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE_CHANGE/MIN0_MAX) # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., metric: str(BYTES/BYTES_OLD)=bytes # Measurement units, eg. bytes., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/bitrate\n@desc Get layer 3 attacks by bitrate time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{OVER_100_GBPS: [str], UNDER_500_MBPS: [str], _10_GBPS_TO_100_GBPS: [str], _1_GBPS_TO_10_GBPS: [str], _500_MBPS_TO_1_GBPS: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/duration\n@desc Get layer 3 attacks by duration time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{OVER_3_HOURS: [str], UNDER_10_MINS: [str], _10_MINS_TO_20_MINS: [str], _1_HOUR_TO_3_HOURS: [str], _20_MINS_TO_40_MINS: [str], _40_MINS_TO_1_HOUR: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/industry\n@desc Get layer 3 attacks by target industries time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/ip_version\n@desc Get layer 3 attacks by IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/protocol\n@desc Get layer 3 attacks by protocol time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{GRE: [str], ICMP: [str], TCP: [str], UDP: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/vector\n@desc Get layer 3 attacks by vector time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/vertical\n@desc Get layer 3 attacks by vertical time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/timeseries_groups/{dimension}\n@desc Get layer 3 attacks time series grouped by dimension\n@required {dimension: str(PROTOCOL/IP_VERSION/VECTOR/DURATION/BITRATE/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., direction: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `location` filter applies to the source or target location., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer3/top/attacks\n@desc Get top layer 3 attack pairs (origin and target locations)\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., limitDirection: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `limitPerLocation` applies to the source or target location., limitPerLocation: int=10 # Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location., magnitude: str(MITIGATED_BYTES/MITIGATED_ATTACKS) # Orders results based on attack magnitude, defined by total mitigated bytes or total mitigated attacks., normalization: str(PERCENTAGE/MIN_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer3/top/industry\n@desc Get top industries targeted by layer 3 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer3/top/locations/origin\n@desc Get top origin locations of layer 3 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer3/top/locations/target\n@desc Get top target locations of layer 3 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer3/top/vertical\n@desc Get top verticals targeted by layer 3 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., protocol: [str] # Filters the results by layer 3/4 protocol., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/summary/http_method\n@desc Get layer 7 attacks by HTTP method summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/http_version\n@desc Get layer 7 attacks by HTTP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{HTTP/1.x: str, HTTP/2: str, HTTP/3: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/industry\n@desc Get layer 7 attacks by targeted industry summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/ip_version\n@desc Get layer 7 attacks by IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/managed_rules\n@desc Get layer 7 attacks by managed rules summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/mitigation_product\n@desc Get layer 7 attacks by mitigation product summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/vertical\n@desc Get layer 7 attacks by targeted vertical summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/summary/{dimension}\n@desc Get layer 7 attacks summary by dimension\n@required {dimension: str(HTTP_METHOD/HTTP_VERSION/IP_VERSION/MANAGED_RULES/MITIGATION_PRODUCT/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries\n@desc Get layer 7 attacks time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., normalization: str(PERCENTAGE_CHANGE/MIN0_MAX) # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)], values: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/http_method\n@desc Get layer 7 attacks by HTTP method time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/http_version\n@desc Get layer 7 attacks by HTTP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{HTTP/1.x: [str], HTTP/2: [str], HTTP/3: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/industry\n@desc Get layer 7 attacks by target industries time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/ip_version\n@desc Get layer 7 attacks by IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/managed_rules\n@desc Get layer 7 attacks by managed rules time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/mitigation_product\n@desc Get layer 7 attacks by mitigation product time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/vertical\n@desc Get layer 7 attacks by vertical time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/timeseries_groups/{dimension}\n@desc Get layer 7 attacks time series grouped by dimension\n@required {dimension: str(HTTP_METHOD/HTTP_VERSION/IP_VERSION/MANAGED_RULES/MITIGATION_PRODUCT/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/attacks/layer7/top/ases/origin\n@desc Get top origin ASes of layer 7 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/top/attacks\n@desc Get top layer 7 attack pairs (origin and target locations)\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., limitDirection: str(ORIGIN/TARGET)=ORIGIN # Specifies whether the `limitPerLocation` applies to the source or target location., limitPerLocation: int=10 # Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location., normalization: str(PERCENTAGE/MIN_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/top/industry\n@desc Get top industries targeted by layer 7 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/top/locations/origin\n@desc Get top origin locations of layer 7 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/top/locations/target\n@desc Get top target locations of layer 7 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/attacks/layer7/top/vertical\n@desc Get top verticals targeted by layer 7 attacks\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., httpVersion: [str] # Filters results by HTTP version., httpMethod: [str] # Filters results by HTTP method., mitigationProduct: [str] # Filters the results by layer 7 mitigation product., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/bgp/hijacks/events\n@desc Get BGP hijack events\n@optional {page: int=1 # Current page number, starting from 1., per_page: int=50 # Number of entries per page., eventId: int # The unique identifier of a event., hijackerAsn: int # The potential hijacker AS of a BGP hijack event., victimAsn: int # The potential victim AS of a BGP hijack event., involvedAsn: int # The potential hijacker or victim AS of a BGP hijack event., involvedCountry: str # The country code of the potential hijacker or victim AS of a BGP hijack event., prefix: str, minConfidence: int # Filters events by minimum confidence score (1-4 low, 5-7 mid, 8+ high)., maxConfidence: int # Filters events by maximum confidence score (1-4 low, 5-7 mid, 8+ high)., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., sortBy: str(ID/TIME/CONFIDENCE) # Sorts results by the specified field., sortOrder: str(ASC/DESC) # Sort order., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asn_info: [map], events: [map], total_monitors: int}, result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/ips/timeseries\n@desc Get announced IP address space time series\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 location codes., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., includeDelay: bool # Includes data delay meta information., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], delay: map{asn_data: map, country_data: map, healthy: bool, nowTs: num}, lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{ipv4: [str], ipv6: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/leaks/events\n@desc Get BGP route leak events\n@optional {page: int=1 # Current page number, starting from 1., per_page: int=50 # Number of entries per page., eventId: int # The unique identifier of a event., leakAsn: int # The leaking AS of a route leak event., involvedAsn: int # ASN that is causing or affected by a route leak event., involvedCountry: str # Country code of a involved ASN in a route leak event., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., sortBy: str(ID/LEAKS/PEERS/PREFIXES/ORIGINS/TIME) # Sorts results by the specified field., sortOrder: str(ASC/DESC) # Sort order., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asn_info: [map], events: [map]}, result_info: map{count: int, page: int, per_page: int, total_count: int}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/routes/ases\n@desc List ASes from global routing tables\n@optional {location: str # Filters results by location. Specify an alpha-2 location code., limit: int=5 # Limits the number of objects returned in the response., sortBy: str(cone/pfxs/ipv4/ipv6/rpki_valid/rpki_invalid/rpki_unknown) # Sorts results by the specified field., sortOrder: str(ASC/DESC) # Sort order., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asns: [map], meta: map{dataTime: str, queryTime: str, totalPeers: int}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/routes/moas\n@desc Get Multi-Origin AS (MOAS) prefixes\n@optional {origin: int # Lookup MOASes originated by the given ASN., prefix: str, invalid_only: bool # Lookup only RPKI invalid MOASes., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{data_time: str, query_time: str, total_peers: int}, moas: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/routes/pfx2as\n@desc Get prefix-to-ASN mapping\n@optional {prefix: str, origin: int # Lookup prefixes originated by the given ASN., rpkiStatus: str(VALID/INVALID/UNKNOWN) # Return only results with matching rpki status: valid, invalid or unknown., longestPrefixMatch: bool # Return only results with the longest prefix match for the given prefix. For example, specify a /32 prefix to lookup the origin ASN for an IPv4 address., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{data_time: str, query_time: str, total_peers: int}, prefix_origins: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/routes/realtime\n@desc Get real-time BGP routes for a prefix\n@optional {prefix: str, format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{asn_info: [map], collectors: [map], data_time: str, prefix_origins: [map], query_time: str}, routes: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/routes/stats\n@desc Get BGP routing table stats\n@optional {asn: int # Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer., location: str # Filters results by location. Specify an alpha-2 location code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{data_time: str, query_time: str, total_peers: int}, stats: map{distinct_origins: int, distinct_origins_ipv4: int, distinct_origins_ipv6: int, distinct_prefixes: int, distinct_prefixes_ipv4: int, distinct_prefixes_ipv6: int, routes_invalid: int, routes_invalid_ipv4: int, routes_invalid_ipv6: int, routes_total: int, routes_total_ipv4: int, routes_total_ipv6: int, routes_unknown: int, routes_unknown_ipv4: int, routes_unknown_ipv6: int, routes_valid: int, routes_valid_ipv4: int, routes_valid_ipv6: int}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/rpki/aspa/changes\n@desc Get ASPA changes over time\n@optional {dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., asn: int # Filter changes involving this ASN (as customer or provider)., includeAsnInfo: bool # Include ASN metadata (name, country) in response., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asnInfo: map{13335: map{asn: int, country: str, name: str}}, changes: [map], meta: map{dataTime: str(date-time), queryTime: str(date-time)}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/rpki/aspa/snapshot\n@desc Get ASPA objects snapshot\n@optional {customerAsn: int # Filter by customer ASN (the ASN publishing the ASPA object)., providerAsn: int # Filter by provider ASN (an authorized upstream provider in ASPA objects)., date: str(date-time) # Filters results by the specified datetime (ISO 8601)., includeAsnInfo: bool # Include ASN metadata (name, country) in response., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asnInfo: map{13335: map{asn: int, country: str, name: str}}, aspaObjects: [map], meta: map{dataTime: str(date-time), queryTime: str(date-time), totalCount: int}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/rpki/aspa/timeseries\n@desc Get ASPA count time series\n@optional {dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., name: [str] # Array of names used to label the series in the response., rir: [str] # Filter by Regional Internet Registry (RIR). Multiple RIRs generate multiple series., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 location codes., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{dataTime: str(date-time), queryTime: str(date-time)}, serie_0: map{timestamps: [str(date-time)], values: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/timeseries\n@desc Get BGP time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., prefix: [str] # Filters results by BGP network prefix., updateType: [str] # Filters results by BGP update type., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time)}, serie_0: map{timestamps: [str(date-time)], values: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/top/ases\n@desc Get top ASes by BGP updates\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., prefix: [str] # Filters results by BGP network prefix., updateType: [str] # Filters results by BGP update type., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{dateRange: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bgp/top/ases/prefixes\n@desc Get top ASes by prefix count\n@optional {country: str # Alpha-2 country code., limit: int # Maximum number of ASes to return., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asns: [map], meta: map{data_time: str, query_time: str, total_peers: int}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/bgp/top/prefixes\n@desc Get top prefixes by BGP updates\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., updateType: [str] # Filters results by BGP update type., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{dateRange: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots\n@desc List bots\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., botCategory: str(SEARCH_ENGINE_CRAWLER/SEARCH_ENGINE_OPTIMIZATION/MONITORING_AND_ANALYTICS/ADVERTISING_AND_MARKETING/SOCIAL_MEDIA_MARKETING/PAGE_PREVIEW/ACADEMIC_RESEARCH/SECURITY/ACCESSIBILITY/WEBHOOKS/FEED_FETCHER/AI_CRAWLER/AGGREGATOR/AI_ASSISTANT/AI_SEARCH/ARCHIVER) # Filters results by bot category., botOperator: str # Filters results by bot operator., kind: str(AGENT/BOT) # Filters results by bot kind., botVerificationStatus: str # Filters results by bot verification status., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{bots: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/crawlers/summary/{dimension}\n@desc Get crawler HTTP request distribution by dimension\n@required {dimension: str(CLIENT_TYPE/USER_AGENT/REFERER/CRAWL_REFER_RATIO/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., botOperator: [str] # Filters results by bot operator., vertical: [str] # Filters results by vertical., industry: [str] # Filters results by industry., clientType: [str] # Filters results by agent type., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/crawlers/timeseries_groups/{dimension}\n@desc Get time series of crawler HTTP request distribution by dimension\n@required {dimension: str(CLIENT_TYPE/USER_AGENT/REFERER/CRAWL_REFER_RATIO/VERTICAL/INDUSTRY) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., botOperator: [str] # Filters results by bot operator., vertical: [str] # Filters results by vertical., industry: [str] # Filters results by industry., clientType: [str] # Filters results by agent type., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/summary/{dimension}\n@desc Get bots HTTP requests distribution by dimension\n@required {dimension: str(BOT/BOT_KIND/BOT_OPERATOR/BOT_CATEGORY) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., bot: [str] # Filters results by bot name., botOperator: [str] # Filters results by bot operator., botCategory: [str] # Filters results by bot category., botKind: [str] # Filters results by bot kind., botVerificationStatus: [str] # Filters results by bot verification status (Verified vs. Unverified)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/timeseries\n@desc Get bots HTTP requests time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., bot: [str] # Filters results by bot name., botOperator: [str] # Filters results by bot operator., botCategory: [str] # Filters results by bot category., botKind: [str] # Filters results by bot kind., botVerificationStatus: [str] # Filters results by bot verification status (Verified vs. Unverified)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/timeseries_groups/{dimension}\n@desc Get time series distribution of bots HTTP requests by dimension.\n@required {dimension: str(BOT/BOT_KIND/BOT_OPERATOR/BOT_CATEGORY) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., bot: [str] # Filters results by bot name., botOperator: [str] # Filters results by bot operator., botCategory: [str] # Filters results by bot category., botKind: [str] # Filters results by bot kind., botVerificationStatus: [str] # Filters results by bot verification status (Verified vs. Unverified)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/bots/{bot_slug}\n@desc Get bot details\n@required {bot_slug: str # Bot slug.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{bot: map{category: str, description: str, kind: str, name: str, operator: str, operatorUrl: str, slug: str, userAgentPatterns: [str], userAgents: [str]}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/ct/authorities\n@desc List certificate authorities\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{certificateAuthorities: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ct/authorities/{ca_slug}\n@desc Get certificate authority details\n@required {ca_slug: str # Certificate authority SHA256 fingerprint.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{certificateAuthority: map{appleStatus: str, authorityKeyIdentifier: str, certificateRecordType: str, chromeStatus: str, country: str, countryName: str, microsoftStatus: str, mozillaStatus: str, name: str, owner: str, parentName: str, parentSha256Fingerprint: str, related: [map], revocationStatus: str, sha256Fingerprint: str, subjectKeyIdentifier: str, validFrom: str, validTo: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/ct/logs\n@desc List certificate logs\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{certificateLogs: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ct/logs/{log_slug}\n@desc Get certificate log details\n@required {log_slug: str # Certificate log slug.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{certificateLog: map{api: str, avgThroughput: num, description: str, endExclusive: str(date-time), lastUpdate: str(date-time), operator: str, performance: map?{endpoints: [map], responseTime: num, uptime: num}, related: [map], slug: str, startInclusive: str(date-time), state: str, stateTimestamp: str(date-time), submittableCertCount: str?, submittedCertCount: str?, url: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/ct/summary/{dimension}\n@desc Get certificate distribution by dimension\n@required {dimension: str(CA/CA_OWNER/DURATION/ENTRY_TYPE/EXPIRATION_STATUS/HAS_IPS/HAS_WILDCARDS/LOG/LOG_API/LOG_OPERATOR/PUBLIC_KEY_ALGORITHM/SIGNATURE_ALGORITHM/TLD/VALIDATION_LEVEL) # Specifies the certificate attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., ca: [str] # Filters results by certificate authority., caOwner: [str] # Filters results by certificate authority owner., duration: [str] # Filters results by certificate duration., entryType: [str] # Filters results by entry type (certificate vs. pre-certificate)., expirationStatus: [str] # Filters results by expiration status (expired vs. valid)., hasIps: [bool] # Filters results based on whether the certificates are bound to specific IP addresses., hasWildcards: [bool] # Filters results based on whether the certificates contain wildcard domains., log: [str] # Filters results by certificate log., logApi: [str] # Filters results by certificate log API (RFC6962 vs. static)., logOperator: [str] # Filters results by certificate log operator., publicKeyAlgorithm: [str] # Filters results by public key algorithm., signatureAlgorithm: [str] # Filters results by signature algorithm., tld: [str] # Filters results by top-level domain., validationLevel: [str] # Filters results by validation level., uniqueEntries: [str] # Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only., normalization: str(RAW_VALUES/PERCENTAGE)=RAW_VALUES # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: any}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ct/timeseries\n@desc Get certificates time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., ca: [str] # Filters results by certificate authority., caOwner: [str] # Filters results by certificate authority owner., duration: [str] # Filters results by certificate duration., entryType: [str] # Filters results by entry type (certificate vs. pre-certificate)., expirationStatus: [str] # Filters results by expiration status (expired vs. valid)., hasIps: [bool] # Filters results based on whether the certificates are bound to specific IP addresses., hasWildcards: [bool] # Filters results based on whether the certificates contain wildcard domains., log: [str] # Filters results by certificate log., logApi: [str] # Filters results by certificate log API (RFC6962 vs. static)., logOperator: [str] # Filters results by certificate log operator., publicKeyAlgorithm: [str] # Filters results by public key algorithm., signatureAlgorithm: [str] # Filters results by signature algorithm., tld: [str] # Filters results by top-level domain., validationLevel: [str] # Filters results by validation level., uniqueEntries: [str] # Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ct/timeseries_groups/{dimension}\n@desc Get time series of certificate distribution by dimension\n@required {dimension: str(CA/CA_OWNER/DURATION/ENTRY_TYPE/EXPIRATION_STATUS/HAS_IPS/HAS_WILDCARDS/LOG/LOG_API/LOG_OPERATOR/PUBLIC_KEY_ALGORITHM/SIGNATURE_ALGORITHM/TLD/VALIDATION_LEVEL) # Specifies the certificate attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., ca: [str] # Filters results by certificate authority., caOwner: [str] # Filters results by certificate authority owner., duration: [str] # Filters results by certificate duration., entryType: [str] # Filters results by entry type (certificate vs. pre-certificate)., expirationStatus: [str] # Filters results by expiration status (expired vs. valid)., hasIps: [bool] # Filters results based on whether the certificates are bound to specific IP addresses., hasWildcards: [bool] # Filters results based on whether the certificates contain wildcard domains., log: [str] # Filters results by certificate log., logApi: [str] # Filters results by certificate log API (RFC6962 vs. static)., logOperator: [str] # Filters results by certificate log operator., publicKeyAlgorithm: [str] # Filters results by public key algorithm., signatureAlgorithm: [str] # Filters results by signature algorithm., validationLevel: [str] # Filters results by validation level., tld: [str] # Filters results by top-level domain., normalization: str(RAW_VALUES/PERCENTAGE)=RAW_VALUES # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., uniqueEntries: [str] # Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: any}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/datasets\n@desc List datasets\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., datasetType: str(RANKING_BUCKET/REPORT)=RANKING_BUCKET # Filters results by dataset type., date: str(date) # Filters results by the specified date., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{datasets: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint POST /radar/datasets/download\n@desc Get dataset download URL\n@required {datasetId: int}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{dataset: map{url: str}}} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/datasets/{alias}\n@desc Get dataset CSV stream\n@required {alias: str # Dataset alias or ID.}\n@returns(200) Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/cache_hit\n@desc Get DNS queries by cache status summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NEGATIVE: str, POSITIVE: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/dnssec\n@desc Get DNS queries by DNSSEC support summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{INSECURE: str, INVALID: str, OTHER: str, SECURE: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/dnssec_aware\n@desc Get DNS queries by DNSSEC awareness summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SUPPORTED: str, SUPPORTED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/dnssec_e2e\n@desc Get DNS queries by DNSSEC end-to-end summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NEGATIVE: str, POSITIVE: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/ip_version\n@desc Get DNS queries by IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/matching_answer\n@desc Get DNS queries by matching answer summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NEGATIVE: str, POSITIVE: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/protocol\n@desc Get DNS queries by protocol summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{HTTPS: str, TCP: str, TLS: str, UDP: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/query_type\n@desc Get DNS queries by type summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/response_code\n@desc Get DNS queries by response code summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/response_ttl\n@desc Get DNS queries by response TTL summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{gt_15m_lte_1h: str, gt_1d_lte_1w: str, gt_1h_lte_1d: str, gt_1m_lte_5m: str, gt_1w: str, gt_5m_lte_15m: str, lte_1m: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/summary/{dimension}\n@desc Get DNS summary by dimension\n@required {dimension: str(AS/CACHE_HIT/DNSSEC/DNSSEC_AWARE/DNSSEC_E2E/IP_VERSION/LOCATION/MATCHING_ANSWER/PROTOCOL/QUERY_TYPE/RESPONSE_CODE/RESPONSE_TTL/TLD/TLD_DNS_MAGNITUDE) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., cacheHit: [bool] # Filters results based on cache status., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., protocol: [str] # Filters results by DNS transport protocol., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., responseTtl: [str] # Filters results by DNS response TTL., dnssec: [str] # Filters results based on DNSSEC (DNS Security Extensions) support., dnssecAware: [str] # Filters results based on DNSSEC (DNS Security Extensions) client awareness., dnssecE2e: [bool] # Filters results based on DNSSEC-validated answers by end-to-end security status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., matchingAnswer: [bool] # Filters results based on whether the queries have a matching answer., tld: [str] # Filters results by top-level domain., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries\n@desc Get DNS queries time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., cacheHit: [bool] # Filters results based on cache status., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., protocol: [str] # Filters results by DNS transport protocol., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., responseTtl: [str] # Filters results by DNS response TTL., dnssec: [str] # Filters results based on DNSSEC (DNS Security Extensions) support., dnssecAware: [str] # Filters results based on DNSSEC (DNS Security Extensions) client awareness., dnssecE2e: [bool] # Filters results based on DNSSEC-validated answers by end-to-end security status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., matchingAnswer: [bool] # Filters results based on whether the queries have a matching answer., tld: [str] # Filters results by top-level domain., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/cache_hit\n@desc Get DNS queries by cache status time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NEGATIVE: [str], POSITIVE: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/dnssec\n@desc Get DNS queries by DNSSEC support time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{INSECURE: [str], INVALID: [str], OTHER: [str], SECURE: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/dnssec_aware\n@desc Get DNS queries by DNSSEC awareness time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SUPPORTED: [str], SUPPORTED: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/dnssec_e2e\n@desc Get DNS queries by DNSSEC end-to-end time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NEGATIVE: [str], POSITIVE: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/ip_version\n@desc Get DNS queries by IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/matching_answer\n@desc Get DNS queries by matching answer time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NEGATIVE: [str], POSITIVE: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/protocol\n@desc Get DNS queries by protocol time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{HTTPS: [str], TCP: [str], TLS: [str], UDP: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/query_type\n@desc Get DNS queries by type time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/response_code\n@desc Get DNS queries by response code time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/response_ttl\n@desc Get DNS queries by response TTL time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., tld: [str] # Filters results by top-level domain., queryType: [str] # Filters results by DNS query type., protocol: [str] # Filters results by DNS transport protocol., responseCode: [str] # Filters results by DNS response code., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{gt_15m_lte_1h: [str], gt_1d_lte_1w: [str], gt_1h_lte_1d: [str], gt_1m_lte_5m: [str], gt_1w: [str], gt_5m_lte_15m: [str], lte_1m: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/timeseries_groups/{dimension}\n@desc Get DNS time series grouped by dimension\n@required {dimension: str(AS/CACHE_HIT/DNSSEC/DNSSEC_AWARE/DNSSEC_E2E/IP_VERSION/LOCATION/MATCHING_ANSWER/PROTOCOL/QUERY_TYPE/RESPONSE_CODE/RESPONSE_TTL/TLD) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., cacheHit: [bool] # Filters results based on cache status., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., protocol: [str] # Filters results by DNS transport protocol., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., responseTtl: [str] # Filters results by DNS response TTL., dnssec: [str] # Filters results based on DNSSEC (DNS Security Extensions) support., dnssecAware: [str] # Filters results based on DNSSEC (DNS Security Extensions) client awareness., dnssecE2e: [bool] # Filters results based on DNSSEC-validated answers by end-to-end security status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., matchingAnswer: [bool] # Filters results based on whether the queries have a matching answer., tld: [str] # Filters results by top-level domain., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/dns/top/ases\n@desc Get top ASes by DNS queries\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., domain: [str] # Filters results by domain name., cacheHit: [bool] # Filters results based on cache status., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., protocol: [str] # Filters results by DNS transport protocol., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., responseTtl: [str] # Filters results by DNS response TTL., dnssec: [str] # Filters results based on DNSSEC (DNS Security Extensions) support., dnssecAware: [str] # Filters results based on DNSSEC (DNS Security Extensions) client awareness., dnssecE2e: [bool] # Filters results based on DNSSEC-validated answers by end-to-end security status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., matchingAnswer: [bool] # Filters results based on whether the queries have a matching answer., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/dns/top/locations\n@desc Get top locations by DNS queries\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., domain: [str] # Filters results by domain name., cacheHit: [bool] # Filters results based on cache status., nodata: [bool]=true # Specifies whether the response includes empty DNS responses (NODATA)., protocol: [str] # Filters results by DNS transport protocol., queryType: [str] # Filters results by DNS query type., responseCode: [str] # Filters results by DNS response code., responseTtl: [str] # Filters results by DNS response TTL., dnssec: [str] # Filters results based on DNSSEC (DNS Security Extensions) support., dnssecAware: [str] # Filters results based on DNSSEC (DNS Security Extensions) client awareness., dnssecE2e: [bool] # Filters results based on DNSSEC-validated answers by end-to-end security status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., matchingAnswer: [bool] # Filters results based on whether the queries have a matching answer., tld: [str] # Filters results by top-level domain., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/email/routing/summary/arc\n@desc Get email ARC validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/dkim\n@desc Get email DKIM validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/dmarc\n@desc Get email DMARC validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/encrypted\n@desc Get email encryption status summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{ENCRYPTED: str, NOT_ENCRYPTED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/ip_version\n@desc Get email IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/spf\n@desc Get email SPF validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/summary/{dimension}\n@desc Get email routing summary by dimension\n@required {dimension: str(IP_VERSION/ENCRYPTED/ARC/DKIM/DMARC/SPF) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/arc\n@desc Get email ARC validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/dkim\n@desc Get email DKIM validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/dmarc\n@desc Get email DMARC validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/encrypted\n@desc Get email encryption status time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{ENCRYPTED: [str], NOT_ENCRYPTED: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/ip_version\n@desc Get email IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/spf\n@desc Get email SPF validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/routing/timeseries_groups/{dimension}\n@desc Get email routing time series grouped by dimension\n@required {dimension: str(IP_VERSION/ENCRYPTED/ARC/DKIM/DMARC/SPF) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., encrypted: [str] # Filters results by encryption status (encrypted vs. not-encrypted)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/arc\n@desc Get email ARC validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/dkim\n@desc Get email DKIM validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/dmarc\n@desc Get email DMARC validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/malicious\n@desc Get email malicious classification summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{MALICIOUS: str, NOT_MALICIOUS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/spam\n@desc Get email spam classification summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SPAM: str, SPAM: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/spf\n@desc Get email SPF validation summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{FAIL: str, NONE: str, PASS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/spoof\n@desc Get email spoof classification summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SPOOF: str, SPOOF: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/threat_category\n@desc Get email threat category summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{BrandImpersonation: str, CredentialHarvester: str, IdentityDeception: str, Link: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/tls_version\n@desc Get email TLS version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{TLS 1.0: str, TLS 1.1: str, TLS 1.2: str, TLS 1.3: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/summary/{dimension}\n@desc Get email security summary by dimension\n@required {dimension: str(SPAM/MALICIOUS/SPOOF/THREAT_CATEGORY/ARC/DKIM/DMARC/SPF/TLS_VERSION) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/arc\n@desc Get email ARC validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/dkim\n@desc Get email DKIM validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/dmarc\n@desc Get email DMARC validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/malicious\n@desc Get email malicious classification time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{MALICIOUS: [str], NOT_MALICIOUS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/spam\n@desc Get email spam classification time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SPAM: [str], SPAM: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/spf\n@desc Get email SPF validation time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{FAIL: [str], NONE: [str], PASS: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/spoof\n@desc Get email spoof classification time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SPOOF: [str], SPOOF: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/threat_category\n@desc Get email threat category time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{BrandImpersonation: [str], CredentialHarvester: [str], IdentityDeception: [str], Link: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/tls_version\n@desc Get email TLS version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{TLS 1.0: [str], TLS 1.1: [str], TLS 1.2: [str], TLS 1.3: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/timeseries_groups/{dimension}\n@desc Get email security time series grouped by dimension\n@required {dimension: str(SPAM/MALICIOUS/SPOOF/THREAT_CATEGORY/ARC/DKIM/DMARC/SPF/TLS_VERSION) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/email/security/top/tlds\n@desc Get top TLDs by email message volume\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., tldCategory: str(CLASSIC/COUNTRY) # Filters results by TLD category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/email/security/top/tlds/malicious/{malicious}\n@desc Get top TLDs by email malicious classification\n@required {malicious: str(MALICIOUS/NOT_MALICIOUS) # Malicious classification.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., tldCategory: str(CLASSIC/COUNTRY) # Filters results by TLD category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/email/security/top/tlds/spam/{spam}\n@desc Get top TLDs by email spam classification\n@required {spam: str(SPAM/NOT_SPAM) # Spam classification.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., tldCategory: str(CLASSIC/COUNTRY) # Filters results by TLD category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/email/security/top/tlds/spoof/{spoof}\n@desc Get top TLDs by email spoof classification\n@required {spoof: str(SPOOF/NOT_SPOOF) # Spoof classification.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., arc: [str] # Filters results by ARC (Authenticated Received Chain) validation., dkim: [str] # Filters results by DKIM (DomainKeys Identified Mail) validation status., dmarc: [str] # Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status., spf: [str] # Filters results by SPF (Sender Policy Framework) validation status., tlsVersion: [str] # Filters results by TLS version., tldCategory: str(CLASSIC/COUNTRY) # Filters results by TLD category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/entities/asns\n@desc List autonomous systems\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., asn: str # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list., location: str # Filters results by location. Specify an alpha-2 location code., orderBy: str(ASN/POPULATION)=ASN # Specifies the metric to order the ASNs by., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asns: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/entities/asns/botnet_threat_feed\n@desc Get AS rankings by botnet threat feed activity\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., metric: str(OFFENSE_COUNT/NUMBER_OF_OFFENDING_IPS)=NUMBER_OF_OFFENDING_IPS # Metric to rank ASNs by., date: str(date) # The date to retrieve (YYYY-MM-DD format). If not specified, returns the most recent available data. Note: This is the date the report was generated. The report is generated from information collected from the previous day (e.g., the 2026-02-23 entry contains data from 2026-02-22)., compareDateRange: str # Relative date range for rank change comparison (e.g., \"1d\", \"7d\", \"30d\")., location: str # Filters results by location. Specify an alpha-2 location code., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., sortOrder: str(ASC/DESC) # Sort order., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{ases: [map], meta: map{compareDate: str, date: str, total: int}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/entities/asns/ip\n@desc Get AS details by IP address\n@required {ip: str(ip) # IP address.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asn: map{aka: str, asn: int, country: str, countryName: str, estimatedUsers: map{estimatedUsers: int, locations: [map]}, name: str, orgName: str, related: [map], source: str, website: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/entities/asns/{asn}\n@desc Get AS details by ASN\n@required {asn: int # Single Autonomous System Number (ASN) as integer.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{asn: map{aka: str, asn: int, confidenceLevel: int, country: str, countryName: str, estimatedUsers: map{estimatedUsers: int, locations: [map]}, name: str, orgName: str, related: [map], source: str, website: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/entities/asns/{asn}/as_set\n@desc Get IRR AS-SETs that an AS is a member of\n@required {asn: int # Retrieves all AS-SETs that the given AS is a member of.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{as_sets: [map], paths: [[str]]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/entities/asns/{asn}/rel\n@desc Get AS-level relationships by ASN\n@required {asn: int # Retrieves all ASNs with provider-customer or peering relationships with the given ASN.}\n@optional {asn2: int # Retrieves the AS relationship of ASN2 with respect to the given ASN., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{data_time: str, query_time: str, total_peers: int}, rels: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/entities/ip\n@desc Get IP address details\n@required {ip: str(ip) # IP address.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{ip: map{asn: str, asnLocation: str, asnName: str, asnOrgName: str, ip: str, ipVersion: str, location: str, locationName: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/entities/locations\n@desc List locations\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., location: str # Filters results by location. Specify a comma-separated list of alpha-2 location codes., region: str # Filters results by region., subregion: str # Filters results by subregion., continent: str(AF/AS/EU/NA/OC/SA) # Filters results by continent code., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{locations: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/entities/locations/{location}\n@desc Get location details\n@required {location: str # Location alpha-2 code.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{location: map{alpha2: str, confidenceLevel: int, continent: str, latitude: str, longitude: str, name: str, region: str, subregion: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/geolocations\n@desc List Geolocations\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., geoId: str # Filters results by geolocation. Specify a comma-separated list of GeoNames IDs., location: str # Filters results by location. Specify a comma-separated list of alpha-2 location codes., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{geolocations: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/geolocations/{geo_id}\n@desc Get Geolocation details\n@required {geo_id: str # Geolocation ID. Refer to [GeoNames](https://download.geonames.org/export/dump/readme.txt)}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{geolocation: map{code: str, geoId: str, latitude: str, locale: str, longitude: str, name: str, parent: map{code: str, geoId: str, latitude: str, locale: str, longitude: str, name: str, parent: map, type: str}, type: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/summary/bot_class\n@desc Get HTTP requests by bot class summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{bot: str, human: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/device_type\n@desc Get HTTP requests by device type summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{desktop: str, mobile: str, other: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/http_protocol\n@desc Get HTTP requests by HTTP/HTTPS summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{http: str, https: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/http_version\n@desc Get HTTP requests by HTTP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{HTTP/1.x: str, HTTP/2: str, HTTP/3: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/ip_version\n@desc Get HTTP requests by IP version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{IPv4: str, IPv6: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/os\n@desc Get HTTP requests by OS summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{ANDROID: str, IOS: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/post_quantum\n@desc Get HTTP requests by post-quantum support summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{NOT_SUPPORTED: str, SUPPORTED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/tls_version\n@desc Get HTTP requests by TLS version summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{TLS 1.0: str, TLS 1.1: str, TLS 1.2: str, TLS 1.3: str, TLS QUIC: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/summary/{dimension}\n@desc Get HTTP requests summary by dimension\n@required {dimension: str(ADM1/AS/BOT_CLASS/BROWSER/BROWSER_FAMILY/DEVICE_TYPE/HTTP_PROTOCOL/HTTP_VERSION/IP_VERSION/LOCATION/OS/POST_QUANTUM/TLS_VERSION) # Specifies the HTTP attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries\n@desc Get HTTP requests time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., normalization: str(PERCENTAGE_CHANGE/MIN0_MAX) # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/bot_class\n@desc Get HTTP requests by bot class time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{bot: [str], human: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/browser\n@desc Get HTTP requests by user agent time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/browser_family\n@desc Get HTTP requests by user agent family time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/device_type\n@desc Get HTTP requests by device type time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{desktop: [str], mobile: [str], other: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/http_protocol\n@desc Get HTTP requests by HTTP/HTTPS time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{http: [str], https: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/http_version\n@desc Get HTTP requests by HTTP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{HTTP/1.x: [str], HTTP/2: [str], HTTP/3: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/ip_version\n@desc Get HTTP requests by IP version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{IPv4: [str], IPv6: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/os\n@desc Get HTTP requests by OS time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/post_quantum\n@desc Get HTTP requests by post-quantum support time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{NOT_SUPPORTED: [str], SUPPORTED: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/tls_version\n@desc Get HTTP requests by TLS version time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{TLS 1.0: [str], TLS 1.1: [str], TLS 1.2: [str], TLS 1.3: [str], TLS QUIC: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/timeseries_groups/{dimension}\n@desc Get HTTP requests time series grouped by dimension\n@required {dimension: str(ADM1/AS/BOT_CLASS/BROWSER/BROWSER_FAMILY/DEVICE_TYPE/HTTP_PROTOCOL/HTTP_VERSION/IP_VERSION/LOCATION/OS/POST_QUANTUM/TLS_VERSION) # Specifies the HTTP attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/http/top/ases\n@desc Get top ASes by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/bot_class/{bot_class}\n@desc Get top ASes by HTTP requests for a bot class\n@required {bot_class: str(LIKELY_AUTOMATED/LIKELY_HUMAN) # Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/browser_family/{browser_family}\n@desc Get top ASes by HTTP requests for a browser family\n@required {browser_family: str(CHROME/EDGE/FIREFOX/SAFARI) # Browser family.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/device_type/{device_type}\n@desc Get top ASes by HTTP requests for a device type\n@required {device_type: str(DESKTOP/MOBILE/OTHER) # Device type.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/http_protocol/{http_protocol}\n@desc Get top ASes by HTTP requests for an HTTP protocol\n@required {http_protocol: str(HTTP/HTTPS) # HTTP protocol (HTTP vs. HTTPS).}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/http_version/{http_version}\n@desc Get top ASes by HTTP requests for an HTTP version\n@required {http_version: str(HTTPv1/HTTPv2/HTTPv3) # HTTP version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/ip_version/{ip_version}\n@desc Get top ASes by HTTP requests for an IP version\n@required {ip_version: str(IPv4/IPv6) # IP version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/os/{os}\n@desc Get top ASes by HTTP requests for an OS\n@required {os: str(WINDOWS/MACOSX/IOS/ANDROID/CHROMEOS/LINUX/SMART_TV) # Operating system.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/ases/tls_version/{tls_version}\n@desc Get top ASes by HTTP requests for a TLS version\n@required {tls_version: str(TLSv1_0/TLSv1_1/TLSv1_2/TLSv1_3/TLSvQUIC) # TLS version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/browser\n@desc Get top user agents by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/browser_family\n@desc Get top user agent families by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations\n@desc Get top locations by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/bot_class/{bot_class}\n@desc Get top locations by HTTP requests for a bot class\n@required {bot_class: str(LIKELY_AUTOMATED/LIKELY_HUMAN) # Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/browser_family/{browser_family}\n@desc Get top locations by HTTP requests for a browser family\n@required {browser_family: str(CHROME/EDGE/FIREFOX/SAFARI) # Browser family.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/device_type/{device_type}\n@desc Get top locations by HTTP requests for a device type\n@required {device_type: str(DESKTOP/MOBILE/OTHER) # Device type.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/http_protocol/{http_protocol}\n@desc Get top locations by HTTP requests for an HTTP protocol\n@required {http_protocol: str(HTTP/HTTPS) # HTTP protocol (HTTP vs. HTTPS).}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/http_version/{http_version}\n@desc Get top locations by HTTP requests for an HTTP version\n@required {http_version: str(HTTPv1/HTTPv2/HTTPv3) # HTTP version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/ip_version/{ip_version}\n@desc Get top locations by HTTP requests for an IP version\n@required {ip_version: str(IPv4/IPv6) # IP version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., os: [str] # Filters results by operating system., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/os/{os}\n@desc Get top locations by HTTP requests for an OS\n@required {os: str(WINDOWS/MACOSX/IOS/ANDROID/CHROMEOS/LINUX/SMART_TV) # Operating system.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., tlsVersion: [str] # Filters results by TLS version., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/http/top/locations/tls_version/{tls_version}\n@desc Get top locations by HTTP requests for a TLS version\n@required {tls_version: str(TLSv1_0/TLSv1_1/TLSv1_2/TLSv1_3/TLSvQUIC) # TLS version.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., deviceType: [str] # Filters results by device type., httpProtocol: [str] # Filters results by HTTP protocol (HTTP vs. HTTPS)., httpVersion: [str] # Filters results by HTTP version., ipVersion: [str] # Filters results by IP version (Ipv4 vs. IPv6)., os: [str] # Filters results by operating system., browserFamily: [str] # Filters results by browser family., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/leaked_credential_checks/summary/bot_class\n@desc Get HTTP authentication requests by bot class summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., compromised: [str] # Filters results by compromised credential status (clean vs. compromised)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{bot: str, human: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/leaked_credential_checks/summary/compromised\n@desc Get HTTP authentication requests by compromised credential status summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{CLEAN: str, COMPROMISED: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/leaked_credential_checks/summary/{dimension}\n@desc Get HTTP authentication requests distribution by dimension\n@required {dimension: str(COMPROMISED/BOT_CLASS) # Specifies the attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., compromised: [str] # Filters results by compromised credential status (clean vs. compromised)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/leaked_credential_checks/timeseries_groups/bot_class\n@desc Get HTTP authentication requests by bot class time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., compromised: [str] # Filters results by compromised credential status (clean vs. compromised)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{bot: [str], human: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/leaked_credential_checks/timeseries_groups/compromised\n@desc Get HTTP authentication requests by compromised credential status time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{CLEAN: [str], COMPROMISED: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/leaked_credential_checks/timeseries_groups/{dimension}\n@desc Get time series distribution of HTTP authentication requests by dimension.\n@required {dimension: str(COMPROMISED/BOT_CLASS) # Specifies the attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., botClass: [str] # Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/)., compromised: [str] # Filters results by compromised credential status (clean vs. compromised)., checkResult: [str] # Filters results by leaked credential check result., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., normalization: str(PERCENTAGE_CHANGE/MIN0_MAX) # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/netflows/summary\n@desc Get network traffic summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{HTTP: str, OTHER: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/netflows/summary/{dimension}\n@desc Get network traffic distribution by dimension\n@required {dimension: str(ADM1/AS/LOCATION/PRODUCT) # Specifies the NetFlows attribute by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., product: [str] # Filters the results by network traffic product types., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/netflows/timeseries\n@desc Get network traffic time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., product: [str] # Filters the results by network traffic product types., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., normalization: str(PERCENTAGE_CHANGE/MIN0_MAX) # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)], values: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/netflows/timeseries_groups/{dimension}\n@desc Get time series distribution of network traffic by dimension\n@required {dimension: str(ADM1/AS/LOCATION/PRODUCT) # Specifies the NetFlows attribute by which to group the results.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., product: [str] # Filters the results by network traffic product types., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/netflows/top/ases\n@desc Get top ASes by network traffic\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/netflows/top/locations\n@desc Get top locations by network traffic\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., geoId: [str] # Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/origins\n@desc List Origins\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{origins: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/origins/summary/{dimension}\n@desc Get origin metrics distribution by dimension\n@required {dimension: str(REGION/SUCCESS_RATE/PERCENTILE) # Specifies the origin attribute by which to group the results., origin: [str] # Filters results by origin., metric: str(CONNECTION_FAILURES/REQUESTS/RESPONSE_HEADER_RECEIVE_DURATION/TCP_HANDSHAKE_DURATION/TCP_RTT/TLS_HANDSHAKE_DURATION) # Specifies the metric to retrieve.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., region: [str] # Filters results by origin region., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/origins/timeseries\n@desc Get origin metrics time series\n@required {origin: [str] # Filters results by origin., metric: str(CONNECTION_FAILURES/REQUESTS/RESPONSE_HEADER_RECEIVE_DURATION/TCP_HANDSHAKE_DURATION/TCP_RTT/TLS_HANDSHAKE_DURATION) # Specifies the metric to retrieve.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., region: [str] # Filters results by origin region., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/origins/timeseries_groups/{dimension}\n@desc Get origin metrics time series grouped by dimension\n@required {dimension: str(REGION/SUCCESS_RATE/PERCENTILE) # Specifies the origin attribute by which to group the results., origin: [str] # Filters results by origin., metric: str(CONNECTION_FAILURES/REQUESTS/RESPONSE_HEADER_RECEIVE_DURATION/TCP_HANDSHAKE_DURATION/TCP_RTT/TLS_HANDSHAKE_DURATION) # Specifies the metric to retrieve.}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., limitPerGroup: int # Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an \"other\" category., region: [str] # Filters results by origin region., normalization: str(PERCENTAGE/MIN0_MAX)=PERCENTAGE # Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/origins/{slug}\n@desc Get Origin details\n@required {slug: str(AMAZON/GOOGLE/MICROSOFT/ORACLE) # Origin slug.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{origin: map{regions: [map], slug: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/post_quantum/origin/summary/{dimension}\n@desc Get Origin Post-Quantum Data Summary\n@required {dimension: str # Specifies the origin post-quantum data dimension by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/post_quantum/origin/timeseries_groups/{dimension}\n@desc Get Origin Post-Quantum Data Over Time\n@required {dimension: str # Specifies the origin post-quantum data dimension by which to group the results.}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/post_quantum/tls/support\n@desc Check Post-Quantum TLS support\n@required {host: str # Hostname or IP address to test for Post-Quantum TLS support, optionally with port (defaults to 443).}\n@returns(200) {result: map{host: str, kex: num, kexName: str, pq: bool}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/quality/iqi/summary\n@desc Get Internet Quality Index (IQI) summary\n@required {metric: str(BANDWIDTH/DNS/LATENCY) # Defines which metric to return (bandwidth, latency, or DNS response time).}\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{p25: str, p50: str, p75: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/quality/iqi/timeseries_groups\n@desc Get Internet Quality Index (IQI) time series\n@required {metric: str(BANDWIDTH/DNS/LATENCY) # Defines which metric to return (bandwidth, latency, or DNS response time).}\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., interpolation: bool # Enables interpolation for all series (using the average)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{p25: [str], p50: [str], p75: [str], timestamps: [str]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/quality/speed/histogram\n@desc Get speed tests histogram\n@optional {name: [str] # Array of names used to label the series in the response., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., bucketSize: int # Specifies the width for every bucket in the histogram., metricGroup: str(BANDWIDTH/LATENCY/JITTER)=bandwidth # Metrics to be returned., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{histogram_0: map{bandwidthDownload: [str], bandwidthUpload: [str], bucketMin: [str]}, meta: map{bucketSize: int, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, totalTests: [int], units: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/quality/speed/summary\n@desc Get speed tests summary\n@optional {name: [str] # Array of names used to label the series in the response., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{bandwidthDownload: str, bandwidthUpload: str, jitterIdle: str, jitterLoaded: str, latencyIdle: str, latencyLoaded: str, packetLoss: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/quality/speed/top/ases\n@desc Get top ASes by speed test results\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., orderBy: str(BANDWIDTH_DOWNLOAD/BANDWIDTH_UPLOAD/LATENCY_IDLE/LATENCY_LOADED/JITTER_IDLE/JITTER_LOADED)=BANDWIDTH_DOWNLOAD # Specifies the metric to order the results by., reverse: bool # Reverses the order of results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/quality/speed/top/locations\n@desc Get top locations by speed test results\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., orderBy: str(BANDWIDTH_DOWNLOAD/BANDWIDTH_UPLOAD/LATENCY_IDLE/LATENCY_LOADED/JITTER_IDLE/JITTER_LOADED)=BANDWIDTH_DOWNLOAD # Specifies the metric to order the results by., reverse: bool # Reverses the order of results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/ranking/domain/{domain}\n@desc Get domain rank details\n@required {domain: str # Domain name.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., rankingType: str(POPULAR/TRENDING_RISE/TRENDING_STEADY)=POPULAR # The ranking type., name: [str] # Array of names used to label the series in the response., includeTopLocations: bool # Includes top locations in the response., date: [str(date)] # Filters results by the specified array of dates., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{details_0: map{bucket: str, categories: [map], rank: int, top_locations: [map]}, meta: map{dateRange: [map]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ranking/internet_services/categories\n@desc List Internet services categories\n@optional {limit: int # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., date: [str(date)] # Filters results by the specified array of dates., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{categories_0: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ranking/internet_services/timeseries_groups\n@desc Get Internet services rank time series\n@optional {serviceCategory: [str] # Filters results by Internet service category., limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ranking/internet_services/top\n@desc Get top Internet services\n@optional {serviceCategory: [str] # Filters results by Internet service category., limit: int # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., date: [str(date)] # Filters results by the specified array of dates., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ranking/timeseries_groups\n@desc Get domains rank time series\n@optional {limit: int=5 # Limits the number of objects returned in the response., rankingType: str(POPULAR/TRENDING_RISE/TRENDING_STEADY)=POPULAR # The ranking type., name: [str] # Array of names used to label the series in the response., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 location codes., domains: [str] # Filters results by domain name. Specify a comma-separated list of domain names., domainCategory: [str] # Filters results by domain category., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/ranking/top\n@desc Get top or trending domains\n@optional {limit: int # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 location codes., domainCategory: [str] # Filters results by domain category., date: [str(date)] # Filters results by the specified array of dates., rankingType: str(POPULAR/TRENDING_RISE/TRENDING_STEADY)=POPULAR # The ranking type., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/robots_txt/top/domain_categories\n@desc Get top domain categories by robots.txt files parsed\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., userAgentCategory: str=AI # Filters results by user agent category., date: [str(date)] # Filters results by the specified array of dates., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/robots_txt/top/user_agents/directive\n@desc Get top user agents on robots.txt files\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., userAgentCategory: str=AI # Filters results by user agent category., date: [str(date)] # Filters results by the specified array of dates., domainCategory: [str] # Filters results by domain category., directive: str(ALLOW/DISALLOW) # Filters results by robots.txt directive., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/search/global\n@desc Search for locations, ASes, reports, and more\n@required {query: str # String used to perform the search operation.}\n@optional {limit: int=5 # Limits the number of objects returned in the response., limitPerGroup: num # Limits the number of objects per search category., include: [str] # Search types included in results., exclude: [str] # Search types excluded from results., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{search: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/tcp_resets_timeouts/summary\n@desc Get TCP resets and timeouts summary\n@optional {name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, summary_0: map{later_in_flow: str, no_match: str, post_ack: str, post_psh: str, post_syn: str}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/tcp_resets_timeouts/timeseries_groups\n@desc Get TCP resets and timeouts time series\n@optional {aggInterval: str(15m/1h/1d/1w) # Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/)., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{aggInterval: str, confidenceInfo: map{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, serie_0: map{later_in_flow: [str], no_match: [str], post_ack: [str], post_psh: [str], post_syn: [str], timestamps: [str(date-time)]}}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/tlds\n@desc List TLDs\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., tldManager: str # Filters results by TLD manager., tldType: str(GENERIC/COUNTRY_CODE/GENERIC_RESTRICTED/INFRASTRUCTURE/SPONSORED) # Filters results by TLD type., tld: str # Filters results by top-level domain. Specify a comma-separated list of TLDs., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{tlds: [map]}, success: bool} # Successful response.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/tlds/{tld}\n@desc Get TLD details\n@required {tld: str # Top-level domain.}\n@optional {format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{tld: map{manager: str, tld: str, type: str}}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/traffic_anomalies\n@desc Get latest Internet traffic anomalies\n@optional {limit: int=5 # Limits the number of objects returned in the response., offset: int # Skips the specified number of objects before fetching the results., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., status: str(VERIFIED/UNVERIFIED), type: [str] # Filters results by entity type (LOCATION, AS, or ORIGIN)., asn: int # Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer., location: str # Filters results by location. Specify an alpha-2 location code., origin: str # Filters results by origin., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{trafficAnomalies: [map]}, success: bool} # List of Internet traffic anomalies.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/traffic_anomalies/locations\n@desc Get top locations by total traffic anomalies\n@optional {limit: int=5 # Limits the number of objects returned in the response., dateRange: str # Filters results by date range., dateStart: str(date-time) # Start of the date range (inclusive)., dateEnd: str(date-time) # End of the date range (inclusive)., status: str(VERIFIED/UNVERIFIED), format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{trafficAnomalies: [map]}, success: bool} # List of locations with number of traffic anomalies.\n@errors {400: Bad request.}\n\n@endpoint GET /radar/verified_bots/top/bots\n@desc Get top verified bots by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endpoint GET /radar/verified_bots/top/categories\n@desc Get top verified bot categories by HTTP requests\n@optional {limit: int=5 # Limits the number of objects returned in the response., name: [str] # Array of names used to label the series in the response., dateRange: [str] # Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters)., dateStart: [str(date-time)] # Start of the date range., dateEnd: [str(date-time)] # End of the date range (inclusive)., asn: [str] # Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356., location: [str] # Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT., continent: [str] # Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA., format: str(JSON/CSV) # Format in which results will be returned.}\n@returns(200) {result: map{meta: map{confidenceInfo: map?{annotations: [map], level: int}, dateRange: [map], lastUpdated: str(date-time), normalization: str, units: [map]}, top_0: [map]}, success: bool} # Successful response.\n@errors {404: Not found.}\n\n@endgroup\n\n@group ready\n@endpoint GET /ready\n@desc Run readiness checks\n\n@endgroup\n\n@group signed-url\n@endpoint GET /signed-url\n@desc Internal route for testing signed URLs\n\n@endgroup\n\n@group system\n@endpoint GET /system/accounts/{account_tag}/stores\n@desc List account stores (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID.}\n@optional {direction: str(asc/desc)=desc # Direction to sort objects, page: int # Page number, per_page: int # Number of objects to return per page, order: str(name/comment/created/modified/status)=created # Order secrets by values in the given field}\n@returns(200) List account stores response\n@errors {4XX: List account stores response failure}\n\n@endpoint POST /system/accounts/{account_tag}/stores\n@desc Create a store (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., account_id: int(int64) # Account internal ID (numeric). Required for system API routes. This value must remain consistent for all stores within an account managed by the same service., name: str # The name of the store}\n@returns(200) Store details\n@errors {4XX: Create store failure}\n\n@endpoint DELETE /system/accounts/{account_tag}/stores/{store_id}\n@desc Delete a store (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str}\n@returns(200) Store deleted\n@errors {4XX: Delete store failure}\n\n@endpoint GET /system/accounts/{account_tag}/stores/{store_id}\n@desc Get a store by ID (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str}\n@returns(200) Store details\n@errors {4XX: Get store failure}\n\n@endpoint DELETE /system/accounts/{account_tag}/stores/{store_id}/secrets\n@desc Delete secrets (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str}\n@returns(200) Secret detail\n@errors {4XX: Delete secrets failure}\n\n@endpoint GET /system/accounts/{account_tag}/stores/{store_id}/secrets\n@desc List store secrets (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str}\n@optional {direction: str(asc/desc)=desc # Direction to sort objects, page: int # Page number, per_page: int # Number of objects to return per page, search: str # Search secrets using a filter string, filtering across name and comment, order: str(name/comment/created/modified/status)=created # Order secrets by values in the given field, scopes: [[str]] # Only secrets with the given scopes will be returned}\n@returns(200) List store secrets response\n@errors {4XX: List store secrets response failure}\n\n@endpoint POST /system/accounts/{account_tag}/stores/{store_id}/secrets\n@desc Create secrets (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str}\n@returns(200) Secret detail\n@errors {4XX: Create secrets failure}\n\n@endpoint DELETE /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}\n@desc Delete a secret (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str, secret_id: str}\n@returns(200) Secret deleted\n@errors {4XX: Delete secret failure}\n\n@endpoint GET /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}\n@desc Get a secret by ID (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str, secret_id: str}\n@returns(200) Secret detail\n@errors {4XX: Get secret failure}\n\n@endpoint PATCH /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}\n@desc Patch a secret (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str, secret_id: str}\n@optional {comment: str # Freeform text describing the secret, scopes: [str] # The list of services that can use this secret.}\n@returns(200) Secret detail\n@errors {4XX: Patch secret failure}\n\n@endpoint POST /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}/duplicate\n@desc Duplicate secret (System)\n@required {account_tag: str # Account tag identifier (e.g., '12a6ed19f349896cfbd6694ba3de8d31'). This is the account's external tag identifier, not the numeric account ID., store_id: str, secret_id: str, name: str # The name of the secret, scopes: [str] # The list of services that can use this secret.}\n@optional {comment: str # Freeform text describing the secret}\n@returns(200) Secret detail\n@errors {4XX: Duplicate secret failure}\n\n@endgroup\n\n@group tenants\n@endpoint GET /tenants/{tenant_id}\n@desc Get tenant\n@required {tenant_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{cdate: str(date-time), customer_id: str, edate: str(date-time), tenant_contacts: map{email: str, website: str}, tenant_labels: [str], tenant_metadata: map{dns: map{ns_pool: map}}, tenant_name: str, tenant_network: map, tenant_status: str, tenant_tag: str, tenant_type: str, tenant_units: [map]}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /tenants/{tenant_id}/account_types\n@desc Get tenant account types\n@required {tenant_id: str}\n@returns(200) {errors: [map], messages: [map], result: [str], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /tenants/{tenant_id}/accounts\n@desc List tenant accounts\n@required {tenant_id: str}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /tenants/{tenant_id}/entitlements\n@desc List tenant entitlements\n@required {tenant_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{allow_add_subdomain: map{type: str, value: bool}, allow_auto_accept_invites: map{type: str, value: bool}, cname_setup_allowed: map{type: str, value: bool}, custom_entitlements: [map]?, mhs_certificate_count: map{type: str, value: int}, partial_setup_allowed: map{type: str, value: bool}}, success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endpoint GET /tenants/{tenant_id}/memberships\n@desc List tenant memberships\n@required {tenant_id: str}\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endgroup\n\n@group user\n@endpoint GET /user\n@desc User Details\n@returns(200) User Details response\n@errors {4XX: User Details response failure}\n\n@endpoint PATCH /user\n@desc Edit User\n@optional {country: str # The country in which the user lives., first_name: str # User's first name, last_name: str # User's last name, telephone: str # User's telephone number, zipcode: str # The zipcode or postal code where the user lives.}\n@returns(200) Edit User response\n@errors {4XX: Edit User response failure}\n\n@endpoint GET /user/audit_logs\n@desc Get user audit logs\n@optional {id: str, export: bool, action.type: str, actor.ip: str, actor.email: str(email), since: any, before: any, zone.name: str, direction: str(desc/asc)=desc, per_page: num=100, page: num=1, hide_user_logs: bool=false}\n@returns(200) Get user audit logs response\n@errors {4XX: Get user audit logs response failure}\n\n@endpoint GET /user/billing/history\n@desc Billing History Details\n@optional {page: num=1, per_page: num=20, order: str(type/occurred_at/action), occurred_at: str(date-time), type: str, action: str}\n@returns(200) Billing History Details response\n@errors {4XX: Billing History Details response failure}\n\n@endpoint GET /user/billing/profile\n@desc Billing Profile Details\n@returns(200) Billing Profile Details response\n@errors {4XX: Billing Profile Details response failure}\n\n@endpoint GET /user/firewall/access_rules/rules\n@desc List IP Access rules\n@optional {mode: str, configuration.target: str(ip/ip_range/asn/country), configuration.value: str, notes: str, match: str(any/all)=all, page: num, per_page: num, order: str(configuration.target/configuration.value/mode), direction: str(asc/desc)}\n@returns(200) List IP Access rules response.\n@errors {4XX: List IP Access rules response failure.}\n\n@endpoint POST /user/firewall/access_rules/rules\n@desc Create an IP Access rule\n@required {configuration: map # The rule configuration., mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request.}\n@optional {notes: any}\n@returns(200) Create an IP Access rule response.\n@errors {4XX: Create an IP Access rule response failure.}\n\n@endpoint DELETE /user/firewall/access_rules/rules/{rule_id}\n@desc Delete an IP Access rule\n@required {rule_id: str}\n@returns(200) Delete an IP Access rule response.\n@errors {4XX: Delete an IP Access rule response failure.}\n\n@endpoint PATCH /user/firewall/access_rules/rules/{rule_id}\n@desc Update an IP Access rule\n@required {rule_id: str}\n@optional {mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request., notes: str # An informative summary of the rule, typically used as a reminder or explanation.}\n@returns(200) Update an IP Access rule response.\n@errors {4XX: Update an IP Access rule response failure.}\n\n@endpoint GET /user/invites\n@desc List Invitations\n@returns(200) List Invitations response\n@errors {4XX: List Invitations response failure}\n\n@endpoint GET /user/invites/{invite_id}\n@desc Invitation Details\n@required {invite_id: str}\n@returns(200) Invitation Details response\n@errors {4XX: Invitation Details response failure}\n\n@endpoint PATCH /user/invites/{invite_id}\n@desc Respond to Invitation\n@required {invite_id: str, status: any(accepted/rejected) # Status of your response to the invitation (rejected or accepted).}\n@returns(200) Respond to Invitation response\n@errors {4XX: Respond to Invitation response failure}\n\n@endpoint GET /user/load_balancers/monitors\n@desc List Monitors\n@returns(200) Successful list monitors response.\n@errors {4XX: Failed list monitors response.}\n\n@endpoint POST /user/load_balancers/monitors\n@desc Create Monitor\n@returns(200) Create Monitor response.\n@errors {4XX: Create Monitor response failure.}\n\n@endpoint DELETE /user/load_balancers/monitors/{monitor_id}\n@desc Delete Monitor\n@required {monitor_id: str}\n@returns(200) Delete Monitor response.\n@errors {4XX: Delete Monitor response failure.}\n\n@endpoint GET /user/load_balancers/monitors/{monitor_id}\n@desc Monitor Details\n@required {monitor_id: str}\n@returns(200) Monitor Details response.\n@errors {4XX: Monitor Details response failure.}\n\n@endpoint PATCH /user/load_balancers/monitors/{monitor_id}\n@desc Patch Monitor\n@required {monitor_id: str}\n@returns(200) Patch Monitor response.\n@errors {4XX: Patch Monitor response failure.}\n\n@endpoint PUT /user/load_balancers/monitors/{monitor_id}\n@desc Update Monitor\n@required {monitor_id: str}\n@returns(200) Update Monitor response.\n@errors {4XX: Update Monitor response failure.}\n\n@endpoint POST /user/load_balancers/monitors/{monitor_id}/preview\n@desc Preview Monitor\n@required {monitor_id: str}\n@returns(200) Preview Monitor response.\n@errors {4XX: Preview Monitor response failure.}\n\n@endpoint GET /user/load_balancers/monitors/{monitor_id}/references\n@desc List Monitor References\n@required {monitor_id: str}\n@returns(200) List Monitor References response.\n@errors {4XX: List Monitor References response failure.}\n\n@endpoint GET /user/load_balancers/pools\n@desc List Pools\n@optional {monitor: str}\n@returns(200) List Pools response.\n@errors {4XX: List Pools response failure.}\n\n@endpoint PATCH /user/load_balancers/pools\n@desc Patch Pools\n@optional {notification_email: str # The email address to send health status notifications to. This field is now deprecated in favor of Cloudflare Notifications for Load Balancing, so only resetting this field with an empty string `\"\"` is accepted.}\n@returns(200) Patch Pools response.\n@errors {4XX: Patch Pools response failure.}\n\n@endpoint POST /user/load_balancers/pools\n@desc Create Pool\n@required {name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means every Cloudflare data center., description: str= # A human-readable description of the pool., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., networks: [str] # List of networks where Load Balancer or Pool is enabled., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.}\n@returns(200) Create Pool response.\n@errors {4XX: Create Pool response failure.}\n\n@endpoint DELETE /user/load_balancers/pools/{pool_id}\n@desc Delete Pool\n@required {pool_id: str}\n@returns(200) Delete Pool response.\n@errors {4XX: Delete Pool response failure.}\n\n@endpoint GET /user/load_balancers/pools/{pool_id}\n@desc Pool Details\n@required {pool_id: str}\n@returns(200) Pool Details response.\n@errors {4XX: Pool Details response failure.}\n\n@endpoint PATCH /user/load_balancers/pools/{pool_id}\n@desc Patch Pool\n@required {pool_id: str}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means every Cloudflare data center., description: str= # A human-readable description of the pool., disabled_at: str(date-time) # This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@returns(200) Patch Pool response.\n@errors {4XX: Patch Pool response failure.}\n\n@endpoint PUT /user/load_balancers/pools/{pool_id}\n@desc Update Pool\n@required {pool_id: str, name: str # A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed., origins: [map{address: str, disabled_at: str(date-time), enabled: bool, header: map, name: str, port: int, virtual_network_id: str, weight: num}] # The list of origins within this pool. Traffic directed at this pool is balanced across all currently healthy origins, provided the pool itself is healthy.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means every Cloudflare data center., description: str= # A human-readable description of the pool., disabled_at: str(date-time) # This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at., enabled: bool=true # Whether to enable (the default) or disable this pool. Disabled pools will not receive traffic and are excluded from health checks. Disabling a pool will cause any load balancers using it to failover to the next pool (if any)., latitude: num # The latitude of the data center containing the origins used in this pool in decimal degrees. If this is set, longitude must also be set., load_shedding: map{default_percent: num, default_policy: str, session_percent: num, session_policy: str} # Configures load shedding policies and percentages for the pool., longitude: num # The longitude of the data center containing the origins used in this pool in decimal degrees. If this is set, latitude must also be set., minimum_origins: int=1 # The minimum number of origins that must be healthy for this pool to serve traffic. If the number of healthy origins falls below this number, the pool will be marked unhealthy and will failover to the next available pool., monitor: str # The ID of the Monitor to use for checking the health of origins within this pool., monitor_group: str # The ID of the Monitor Group to use for checking the health of origins within this pool., networks: [str] # List of networks where Load Balancer or Pool is enabled., notification_email: str= # This field is now deprecated. It has been moved to Cloudflare's Centralized Notification service https://developers.cloudflare.com/fundamentals/notifications/. The email address to send health status notifications to. This can be an individual mailbox or a mailing list. Multiple emails can be supplied as a comma delimited list., notification_filter: map{origin: map, pool: map} # Filter pool and origin health notifications by resource type or health status. Use null to reset., origin_steering: map{policy: str} # Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.}\n@returns(200) Update Pool response.\n@errors {4XX: Update Pool response failure.}\n\n@endpoint GET /user/load_balancers/pools/{pool_id}/health\n@desc Pool Health Details\n@required {pool_id: str}\n@returns(200) Pool Health Details response.\n@errors {4XX: Pool Health Details response failure.}\n\n@endpoint POST /user/load_balancers/pools/{pool_id}/preview\n@desc Preview Pool\n@required {pool_id: str}\n@returns(200) Preview Pool response.\n@errors {4XX: Preview Pool response failure.}\n\n@endpoint GET /user/load_balancers/pools/{pool_id}/references\n@desc List Pool References\n@required {pool_id: str}\n@returns(200) List Pool References response.\n@errors {4XX: List Pool References response failure.}\n\n@endpoint GET /user/load_balancers/preview/{preview_id}\n@desc Preview Result\n@required {preview_id: any}\n@returns(200) Preview Result response.\n@errors {4XX: Preview Result response failure.}\n\n@endpoint GET /user/load_balancing_analytics/events\n@desc List Healthcheck Events\n@optional {until: str(date-time), pool_name: str, origin_healthy: bool, pool_id: str, since: str(date-time), origin_name: str, pool_healthy: bool=true}\n@returns(200) List Healthcheck Events response.\n@errors {4XX: List Healthcheck Events response failure.}\n\n@endpoint GET /user/organizations\n@desc List Organizations\n@optional {name: str, page: num=1, per_page: num=20, order: str(id/name/status), direction: str(asc/desc), match: str(any/all)=all, status: str(member/invited)}\n@returns(200) List Organizations response\n@errors {4XX: List Organizations response failure}\n\n@endpoint DELETE /user/organizations/{organization_id}\n@desc Leave Organization\n@required {organization_id: str}\n@returns(200) {id: str} # Leave Organization response\n@errors {4XX: Leave Organization response failure}\n\n@endpoint GET /user/organizations/{organization_id}\n@desc Organization Details\n@required {organization_id: str}\n@returns(200) Organization Details response\n@errors {4XX: Organization Details response failure}\n\n@endpoint GET /user/subscriptions\n@desc Get User Subscriptions\n@returns(200) Get User Subscriptions response\n@errors {4XX: Get User Subscriptions response failure}\n\n@endpoint DELETE /user/subscriptions/{identifier}\n@desc Delete User Subscription\n@required {identifier: str}\n@returns(200) {subscription_id: str} # Delete User Subscription response\n@errors {4XX: Delete User Subscription response failure}\n\n@endpoint PUT /user/subscriptions/{identifier}\n@desc Update User Subscription\n@required {identifier: str}\n@optional {app: any, component_values: [map{default: num, name: str, price: num, value: num}] # The list of add-ons subscribed to., currency: str # The monetary unit in which pricing information is displayed., current_period_end: str(date-time) # The end of the current period and also when the next billing is due., current_period_start: str(date-time) # When the current billing period started. May match initial_period_start if this is the first period., frequency: str(weekly/monthly/quarterly/yearly) # How often the subscription is renewed automatically., id: str # Subscription identifier tag., price: num # The price of the subscription that will be billed, in US dollars., rate_plan: map{currency: str, externally_managed: bool, id: str, is_contract: bool, public_name: str, scope: str, sets: [str]} # The rate plan applied to the subscription., state: str(Trial/Provisioned/Paid/AwaitingPayment/Cancelled/Failed/Expired) # The state that the subscription is in., zone: map{id: str, name: str} # A simple zone object. May have null properties if not a zone subscription.}\n@returns(200) Update User Subscription response\n@errors {4XX: Update User Subscription response failure}\n\n@endpoint GET /user/tokens\n@desc List Tokens\n@optional {page: num=1, per_page: num=20, direction: str(asc/desc)}\n@returns(200) List Tokens response\n@errors {4XX: List Tokens response failure}\n\n@endpoint POST /user/tokens\n@desc Create Token\n@required {name: str # Token name., policies: [map{effect!: str, id!: str, permission_groups!: [map], resources!: any}] # List of access policies assigned to the token.}\n@optional {condition: map{request_ip: map}, expires_on: str(date-time) # The expiration time on or after which the JWT MUST NOT be accepted for processing., not_before: str(date-time) # The time before which the token MUST NOT be accepted for processing.}\n@returns(200) Create Token response\n@errors {4XX: Create Token response failure}\n\n@endpoint GET /user/tokens/permission_groups\n@desc List Token Permission Groups\n@optional {name: str # Filter by the name of the permission group. The value must be URL-encoded., scope: str # Filter by the scope of the permission group. The value must be URL-encoded.}\n@returns(200) List Token Permission Groups response\n@errors {4XX: List Token Permission Groups response failure}\n\n@endpoint GET /user/tokens/verify\n@desc Verify Token\n@returns(200) Verify Token response\n@errors {4XX: Verify Token response failure}\n\n@endpoint DELETE /user/tokens/{token_id}\n@desc Delete Token\n@required {token_id: str}\n@returns(200) Delete Token response\n@errors {4XX: Delete Token response failure}\n\n@endpoint GET /user/tokens/{token_id}\n@desc Token Details\n@required {token_id: str}\n@returns(200) Token Details response\n@errors {4XX: Token Details response failure}\n\n@endpoint PUT /user/tokens/{token_id}\n@desc Update Token\n@required {token_id: str}\n@returns(200) Update Token response\n@errors {4XX: Update Token response failure}\n\n@endpoint PUT /user/tokens/{token_id}/value\n@desc Roll Token\n@required {token_id: str}\n@returns(200) Roll Token response\n@errors {4XX: Roll Token response failure}\n\n@endgroup\n\n@group users\n@endpoint GET /users/tenants\n@desc List user tenants\n@returns(200) {errors: [map], messages: [map], result: [map], success: bool} # The request has succeeded.\n@errors {4XX: An unexpected error response.}\n\n@endgroup\n\n@group zones\n@endpoint GET /zones\n@desc List Zones\n@optional {name: str, status: str(initializing/pending/active/moved), account.id: str, account.name: str, page: num=1, per_page: num=20, order: str(name/status/account.id/account.name/plan.id), direction: str(asc/desc), match: str(any/all)=all}\n@returns(200) List Zones response.\n@errors {4XX: List Zones response failure.}\n\n@endpoint POST /zones\n@desc Create Zone\n@required {account: map{id: str}, name: str # The domain name. Per [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4) the overall zone name can be up to 253 characters, with each segment (\"label\") not exceeding 63 characters.}\n@optional {type: str(full/partial/secondary/internal)=full # A full zone implies that DNS is hosted with Cloudflare. A partial zone is typically a partner-hosted zone or a CNAME setup.}\n@returns(200) Create Zone response.\n@errors {4XX: Create Zone response failure.}\n\n@endpoint GET /zones/{zone_identifier}/analytics/colos\n@desc Get analytics by Co-locations\n@required {zone_identifier: str}\n@optional {until: any, since: any=-10080, continuous: bool=true}\n@returns(200) Get analytics by Co-locations response\n@errors {4XX: Get analytics by Co-locations response failure}\n\n@endpoint GET /zones/{zone_identifier}/analytics/dashboard\n@desc Get dashboard\n@required {zone_identifier: str}\n@optional {until: any, since: any=-10080, continuous: bool=true}\n@returns(200) Get dashboard response\n@errors {4XX: Get dashboard response failure}\n\n@endpoint GET /zones/{zone_identifier}/custom_pages\n@desc List custom pages\n@required {zone_identifier: str}\n@returns(200) List custom pages response\n@errors {4XX: List custom pages response failure}\n\n@endpoint GET /zones/{zone_identifier}/custom_pages/assets\n@desc List custom assets\n@required {zone_identifier: str}\n@optional {page: int=1, per_page: int=20}\n@returns(200) List custom assets response\n@errors {4XX: List custom assets response failure}\n\n@endpoint POST /zones/{zone_identifier}/custom_pages/assets\n@desc Create a custom asset\n@required {zone_identifier: str, description: str # A short description of the custom asset., name: str # The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_)., url: str(uri) # The URL where the asset content is fetched from.}\n@returns(200) Create custom asset response\n@errors {4XX: Create custom asset response failure}\n\n@endpoint DELETE /zones/{zone_identifier}/custom_pages/assets/{asset_name}\n@desc Delete a custom asset\n@required {asset_name: str, zone_identifier: str}\n@returns(204) Delete a custom asset response\n@errors {4XX: Delete a custom asset response failure}\n\n@endpoint GET /zones/{zone_identifier}/custom_pages/assets/{asset_name}\n@desc Get a custom asset\n@required {asset_name: str, zone_identifier: str}\n@returns(200) Get a custom asset response\n@errors {4XX: Get a custom asset response failure}\n\n@endpoint PUT /zones/{zone_identifier}/custom_pages/assets/{asset_name}\n@desc Update a custom asset\n@required {asset_name: str, zone_identifier: str, description: str # A short description of the custom asset., url: str(uri) # The URL where the asset content is fetched from.}\n@returns(200) Update a custom asset response\n@errors {4XX: Update a custom asset response failure}\n\n@endpoint GET /zones/{zone_identifier}/custom_pages/{identifier}\n@desc Get a custom page\n@required {identifier: str, zone_identifier: str}\n@returns(200) {created_on: str(date-time), description: str, id: str, modified_on: str(date-time), preview_target: str, required_tokens: [str], state: str, url: str(uri)} # Get a custom page response\n@errors {4XX: Get a custom page response failure}\n\n@endpoint PUT /zones/{zone_identifier}/custom_pages/{identifier}\n@desc Update a custom page\n@required {identifier: str, zone_identifier: str, state: str(default/customized) # The custom page state., url: str(uri)= # The URL associated with the custom page.}\n@returns(200) Update a custom page response\n@errors {4XX: Update a custom page response failure}\n\n@endpoint DELETE /zones/{zone_id}\n@desc Delete Zone\n@required {zone_id: str}\n@returns(200) Delete Zone response.\n@errors {4XX: Delete Zone response failure.}\n\n@endpoint GET /zones/{zone_id}\n@desc Zone Details\n@required {zone_id: str}\n@returns(200) Zone Details response.\n@errors {4XX: Zone Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}\n@desc Edit Zone\n@required {zone_id: str}\n@optional {paused: bool=false # Indicates whether the zone is only using Cloudflare DNS services. A true value means the zone will not receive security or performance benefits., plan: map{id: str} # (Deprecated) Please use the `/zones/{zone_id}/subscription` API to update a zone's plan. Changing this value will create/cancel associated subscriptions. To view available plans for this zone, see Zone Plans., type: str(full/partial/secondary/internal) # A full zone implies that DNS is hosted with Cloudflare. A partial zone is typically a partner-hosted zone or a CNAME setup. This parameter is only available to Enterprise customers or if it has been explicitly enabled on a zone., vanity_name_servers: [str(hostname)]= # An array of domains used for custom name servers. This is only available for Business and Enterprise plans.}\n@returns(200) Edit Zone response.\n@errors {4XX: Edit Zone response failure.}\n\n@endpoint GET /zones/{zone_id}/access/apps\n@desc List Access Applications\n@required {zone_id: str}\n@returns(200) List Access Applications response\n@errors {4XX: List Access Applications response failure}\n\n@endpoint POST /zones/{zone_id}/access/apps\n@desc Add an Access application\n@required {zone_id: str}\n@returns(201) Add an Access application response\n@errors {4XX: Add an Access application response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/ca\n@desc List short-lived certificate CAs\n@required {zone_id: str}\n@returns(200) List short-lived certificate CAs response\n@errors {4XX: List short-lived certificate CAs response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/apps/{app_id}\n@desc Delete an Access application\n@required {app_id: any, zone_id: str}\n@returns(202) Delete an Access application response\n@errors {4XX: Delete an Access application response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/{app_id}\n@desc Get an Access application\n@required {app_id: any, zone_id: str}\n@returns(200) Get an Access application response\n@errors {4XX: Get an Access application response failure}\n\n@endpoint PUT /zones/{zone_id}/access/apps/{app_id}\n@desc Update an Access application\n@required {app_id: any, zone_id: str}\n@returns(200) Update an Access application response\n@errors {4XX: Update an Access application response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/apps/{app_id}/ca\n@desc Delete a short-lived certificate CA\n@required {app_id: str, zone_id: str}\n@returns(202) Delete a short-lived certificate CA response\n@errors {4XX: Delete a short-lived certificate CA response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/{app_id}/ca\n@desc Get a short-lived certificate CA\n@required {app_id: str, zone_id: str}\n@returns(200) Get a short-lived certificate CA response\n@errors {4XX: Get a short-lived certificate CA response failure}\n\n@endpoint POST /zones/{zone_id}/access/apps/{app_id}/ca\n@desc Create a short-lived certificate CA\n@required {app_id: str, zone_id: str}\n@returns(200) Create a short-lived certificate CA response\n@errors {4XX: Create a short-lived certificate CA response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/{app_id}/policies\n@desc List Access policies\n@required {app_id: str, zone_id: str}\n@returns(200) List Access policies response\n@errors {4XX: List Access policies response failure}\n\n@endpoint POST /zones/{zone_id}/access/apps/{app_id}/policies\n@desc Create an Access policy\n@required {app_id: str, zone_id: str, decision: str(allow/deny/non_identity/bypass) # The action Access will take if a user matches this policy., include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access policy.}\n@optional {approval_groups: [map{approvals_needed!: num, email_addresses: [any], email_list_uuid: str}] # Administrators who can approve a temporary authentication request., approval_required: bool=false # Requires the user to request access from an administrator at the start of each session., exclude: [map] # Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules., isolation_required: bool=false # Require this application to be served in an isolated browser for users matching this policy., precedence: int # The order of execution for this policy. Must be unique for each policy., purpose_justification_prompt: str # A custom message that will appear on the purpose justification screen., purpose_justification_required: bool=false # Require users to enter a justification when they log in to the application., require: [map] # Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.}\n@returns(201) Create an Access policy response\n@errors {4XX: Create an Access policy response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Delete an Access policy\n@required {policy_id: str, app_id: str, zone_id: str}\n@returns(202) Delete an Access policy response\n@errors {4XX: Delete an Access policy response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Get an Access policy\n@required {policy_id: str, app_id: str, zone_id: str}\n@returns(200) Get an Access policy response\n@errors {4XX: Get an Access policy response failure}\n\n@endpoint PUT /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id}\n@desc Update an Access policy\n@required {policy_id: str, app_id: str, zone_id: str, decision: str(allow/deny/non_identity/bypass) # The action Access will take if a user matches this policy., include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access policy.}\n@optional {approval_groups: [map{approvals_needed!: num, email_addresses: [any], email_list_uuid: str}] # Administrators who can approve a temporary authentication request., approval_required: bool=false # Requires the user to request access from an administrator at the start of each session., exclude: [map] # Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules., isolation_required: bool=false # Require this application to be served in an isolated browser for users matching this policy., precedence: int # The order of execution for this policy. Must be unique for each policy., purpose_justification_prompt: str # A custom message that will appear on the purpose justification screen., purpose_justification_required: bool=false # Require users to enter a justification when they log in to the application., require: [map] # Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.}\n@returns(200) Update an Access policy response\n@errors {4XX: Update an Access policy response failure}\n\n@endpoint POST /zones/{zone_id}/access/apps/{app_id}/revoke_tokens\n@desc Revoke application tokens\n@required {app_id: any, zone_id: str}\n@returns(202) Revoke application tokens response\n@errors {4XX: Revoke application tokens response failure}\n\n@endpoint PATCH /zones/{zone_id}/access/apps/{app_id}/settings\n@desc Update application settings\n@required {app_id: any, zone_id: str}\n@optional {allow_iframe: bool # Enables loading application content in an iFrame., skip_interstitial: bool # Enables automatic authentication through cloudflared.}\n@returns(202) Update application settings response\n@errors {4XX: Update application settings response failure}\n\n@endpoint PUT /zones/{zone_id}/access/apps/{app_id}/settings\n@desc Update application settings\n@required {app_id: any, zone_id: str}\n@optional {allow_iframe: bool # Enables loading application content in an iFrame., skip_interstitial: bool # Enables automatic authentication through cloudflared.}\n@returns(202) Update application settings response\n@errors {4XX: Update application settings response failure}\n\n@endpoint GET /zones/{zone_id}/access/apps/{app_id}/user_policy_checks\n@desc Test Access policies\n@required {app_id: any, zone_id: str}\n@returns(200) Test Access policies response\n@errors {4XX: Test Access policies response failure}\n\n@endpoint GET /zones/{zone_id}/access/certificates\n@desc List mTLS certificates\n@required {zone_id: str}\n@returns(200) List mTLS certificates response\n@errors {4XX: List mTLS certificates response failure}\n\n@endpoint POST /zones/{zone_id}/access/certificates\n@desc Add an mTLS certificate\n@required {zone_id: str, certificate: str # The certificate content., name: str # The name of the certificate.}\n@optional {associated_hostnames: [str] # The hostnames of the applications that will use this certificate.}\n@returns(201) Add an mTLS certificate response\n@errors {4XX: Add an mTLS certificate response failure}\n\n@endpoint GET /zones/{zone_id}/access/certificates/settings\n@desc List all mTLS hostname settings\n@required {zone_id: str}\n@returns(200) List mTLS hostname settings response\n@errors {4XX: List mTLS hostname settings response failure}\n\n@endpoint PUT /zones/{zone_id}/access/certificates/settings\n@desc Update an mTLS certificate's hostname settings\n@required {zone_id: str, settings: [map{china_network!: bool, client_certificate_forwarding!: bool, hostname!: str}]}\n@returns(202) Update an mTLS certificates hostname settings response\n@errors {4XX: Update an mTLS certificates hostname settings failure}\n\n@endpoint DELETE /zones/{zone_id}/access/certificates/{certificate_id}\n@desc Delete an mTLS certificate\n@required {certificate_id: str, zone_id: str}\n@returns(200) Delete an mTLS certificate response\n@errors {4XX: Delete an mTLS certificate response failure}\n\n@endpoint GET /zones/{zone_id}/access/certificates/{certificate_id}\n@desc Get an mTLS certificate\n@required {certificate_id: str, zone_id: str}\n@returns(200) Get an mTLS certificate response\n@errors {4XX: Get an mTLS certificate response failure}\n\n@endpoint PUT /zones/{zone_id}/access/certificates/{certificate_id}\n@desc Update an mTLS certificate\n@required {certificate_id: str, zone_id: str, associated_hostnames: [str] # The hostnames of the applications that will use this certificate.}\n@optional {name: str # The name of the certificate.}\n@returns(200) Update an mTLS certificate response\n@errors {4XX: Update an mTLS certificate response failure}\n\n@endpoint GET /zones/{zone_id}/access/groups\n@desc List Access groups\n@required {zone_id: str}\n@returns(200) List Access groups response\n@errors {4XX: List Access groups response failure}\n\n@endpoint POST /zones/{zone_id}/access/groups\n@desc Create an Access group\n@required {zone_id: str, include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access group.}\n@optional {exclude: [map] # Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules., require: [map] # Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.}\n@returns(201) Create an Access group response\n@errors {4XX: Create an Access group response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/groups/{group_id}\n@desc Delete an Access group\n@required {group_id: str, zone_id: str}\n@returns(202) Delete an Access group response\n@errors {4XX: Delete an Access group response failure}\n\n@endpoint GET /zones/{zone_id}/access/groups/{group_id}\n@desc Get an Access group\n@required {group_id: str, zone_id: str}\n@returns(200) Get an Access group response\n@errors {4XX: Get an Access group response failure}\n\n@endpoint PUT /zones/{zone_id}/access/groups/{group_id}\n@desc Update an Access group\n@required {group_id: str, zone_id: str, include: [map] # Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules., name: str # The name of the Access group.}\n@optional {exclude: [map] # Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules., require: [map] # Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules.}\n@returns(200) Update an Access group response\n@errors {4XX: Update an Access group response failure}\n\n@endpoint GET /zones/{zone_id}/access/identity_providers\n@desc List Access identity providers\n@required {zone_id: str}\n@returns(200) List Access identity providers response\n@errors {4XX: List Access identity providers response failure}\n\n@endpoint POST /zones/{zone_id}/access/identity_providers\n@desc Add an Access identity provider\n@required {zone_id: str}\n@returns(201) Add an Access identity provider response\n@errors {4XX: Add an Access identity provider response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/identity_providers/{identity_provider_id}\n@desc Delete an Access identity provider\n@required {identity_provider_id: str, zone_id: str}\n@returns(202) Delete an Access identity provider response\n@errors {4XX: Delete an Access identity provider response failure}\n\n@endpoint GET /zones/{zone_id}/access/identity_providers/{identity_provider_id}\n@desc Get an Access identity provider\n@required {identity_provider_id: str, zone_id: str}\n@returns(200) Get an Access identity provider response\n@errors {4XX: Get an Access identity provider response failure}\n\n@endpoint PUT /zones/{zone_id}/access/identity_providers/{identity_provider_id}\n@desc Update an Access identity provider\n@required {identity_provider_id: str, zone_id: str}\n@returns(200) Update an Access identity provider response\n@errors {4XX: Update an Access identity provider response failure}\n\n@endpoint GET /zones/{zone_id}/access/organizations\n@desc Get your Zero Trust organization\n@required {zone_id: any}\n@returns(200) Get your Zero Trust organization response\n@errors {4XX: Get your Zero Trust organization response failure}\n\n@endpoint POST /zones/{zone_id}/access/organizations\n@desc Create your Zero Trust organization\n@required {zone_id: any, auth_domain: str # The unique subdomain assigned to your Zero Trust organization., name: str # The name of your Zero Trust organization.}\n@optional {is_ui_read_only: bool # Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled., login_design: any, ui_read_only_toggle_reason: str # A description of the reason why the UI read only field is being toggled., user_seat_expiration_inactive_time: str # The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count. Must be in the format `300ms` or `2h45m`. Valid time units are: `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`.}\n@returns(201) Create your Zero Trust organization response\n@errors {4XX: Create your Zero Trust organization response failure}\n\n@endpoint PUT /zones/{zone_id}/access/organizations\n@desc Update your Zero Trust organization\n@required {zone_id: any}\n@optional {auth_domain: str # The unique subdomain assigned to your Zero Trust organization., is_ui_read_only: bool # Lock all settings as Read-Only in the Dashboard, regardless of user permission. Updates may only be made via the API or Terraform for this account when enabled., login_design: any, name: str # The name of your Zero Trust organization., ui_read_only_toggle_reason: str # A description of the reason why the UI read only field is being toggled., user_seat_expiration_inactive_time: str # The amount of time a user seat is inactive before it expires. When the user seat exceeds the set time of inactivity, the user is removed as an active seat and no longer counts against your Teams seat count. Must be in the format `300ms` or `2h45m`. Valid time units are: `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`.}\n@returns(200) Update your Zero Trust organization response\n@errors {4XX: Update your Zero Trust organization response failure}\n\n@endpoint POST /zones/{zone_id}/access/organizations/revoke_user\n@desc Revoke all Access tokens for a user\n@required {zone_id: any, email: str # The email of the user to revoke.}\n@returns(200) Revoke all Access tokens for a user response\n@errors {4xx: Revoke all Access tokens for a user response failure}\n\n@endpoint GET /zones/{zone_id}/access/service_tokens\n@desc List service tokens\n@required {zone_id: str}\n@returns(200) List service tokens response\n@errors {4XX: List service tokens response failure}\n\n@endpoint POST /zones/{zone_id}/access/service_tokens\n@desc Create a service token\n@required {zone_id: str, name: str # The name of the service token.}\n@optional {client_secret_version: num=1 # A version number identifying the current `client_secret` associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by `previous_client_secret_expires_at`., duration: str=8760h # The duration for how long the service token will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h)., previous_client_secret_expires_at: str(date-time) # The expiration of the previous `client_secret`. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.}\n@returns(201) Create a service token response\n@errors {4XX: Create a service token response failure}\n\n@endpoint DELETE /zones/{zone_id}/access/service_tokens/{service_token_id}\n@desc Delete a service token\n@required {service_token_id: str, zone_id: str}\n@returns(200) Delete a service token response\n@errors {4XX: Delete a service token response failure}\n\n@endpoint GET /zones/{zone_id}/access/service_tokens/{service_token_id}\n@desc Get a service token\n@required {service_token_id: str, zone_id: str}\n@returns(200) Get a service token response\n@errors {4XX: Get a service token response failure}\n\n@endpoint PUT /zones/{zone_id}/access/service_tokens/{service_token_id}\n@desc Update a service token\n@required {service_token_id: str, zone_id: str}\n@optional {client_secret_version: num=1 # A version number identifying the current `client_secret` associated with the service token. Incrementing it triggers a rotation; the previous secret will still be accepted until the time indicated by `previous_client_secret_expires_at`., duration: str=8760h # The duration for how long the service token will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h. The default is 1 year in hours (8760h)., name: str # The name of the service token., previous_client_secret_expires_at: str(date-time) # The expiration of the previous `client_secret`. This can be modified at any point after a rotation. For example, you may extend it further into the future if you need more time to update services with the new secret; or move it into the past to immediately invalidate the previous token in case of compromise.}\n@returns(200) Update a service token response\n@errors {4XX: Update a service token response failure}\n\n@endpoint GET /zones/{zone_id}/acm/custom_trust_store\n@desc List Custom Origin Trust Store Details\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20, limit: int, offset: int}\n@returns(200) Custom Origin Trust Store Details response\n@errors {4XX: Custom Origin Trust Store response failure}\n\n@endpoint POST /zones/{zone_id}/acm/custom_trust_store\n@desc Upload Custom Origin Trust Store\n@required {zone_id: str, certificate: str # The zone's SSL certificate or certificate and the intermediate(s).}\n@returns(200) Upload Custom Origin Trust Store response\n@errors {4XX: Upload Custom Origin Trust Store response failure}\n\n@endpoint DELETE /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}\n@desc Delete Custom Origin Trust Store\n@required {custom_origin_trust_store_id: str, zone_id: str}\n@returns(200) Delete Custom Origin Trust Store response\n@errors {4XX: Delete Custom Origin Trust Store response failure}\n\n@endpoint GET /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}\n@desc Custom Origin Trust Store Details\n@required {custom_origin_trust_store_id: str, zone_id: str}\n@returns(200) Custom Origin Trust Store Details response\n@errors {4XX: Custom Origin Trust Store Details response failure}\n\n@endpoint GET /zones/{zone_id}/acm/total_tls\n@desc Total TLS Settings Details\n@required {zone_id: str}\n@returns(200) Total TLS Settings Details response\n@errors {4XX: Total TLS Settings Details response failure}\n\n@endpoint POST /zones/{zone_id}/acm/total_tls\n@desc Enable or Disable Total TLS\n@required {zone_id: str, enabled: bool # If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.}\n@optional {certificate_authority: str(google/lets_encrypt/ssl_com) # The Certificate Authority that Total TLS certificates will be issued through.}\n@returns(200) Enable or Disable Total TLS response\n@errors {4XX: Enable or Disable Total TLS response failure}\n\n@endpoint PUT /zones/{zone_id}/activation_check\n@desc Rerun the Activation Check\n@required {zone_id: str # Zone ID}\n@returns(200) Successful Response\n@errors {4XX: Client Error}\n\n@endpoint GET /zones/{zone_id}/addressing/regional_hostnames\n@desc List Regional Hostnames\n@required {zone_id: str}\n@returns(200) List hostnames response\n@errors {4XX: Failure to list hostnames}\n\n@endpoint POST /zones/{zone_id}/addressing/regional_hostnames\n@desc Create Regional Hostname\n@required {zone_id: str, hostname: str # DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`, region_key: str # Identifying key for the region}\n@optional {routing: str=dns # Configure which routing method to use for the regional hostname}\n@returns(200) Create hostname response\n@errors {4XX: Failure to create hostname}\n\n@endpoint DELETE /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n@desc Delete Regional Hostname\n@required {zone_id: str, hostname: str}\n@returns(200) Delete hostname response\n@errors {4XX: Failure to delete hostname}\n\n@endpoint GET /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n@desc Fetch Regional Hostname\n@required {zone_id: str, hostname: str}\n@returns(200) Fetch hostname response\n@errors {4XX: Failure to fetch hostname}\n\n@endpoint PATCH /zones/{zone_id}/addressing/regional_hostnames/{hostname}\n@desc Update Regional Hostname\n@required {zone_id: str, hostname: str, region_key: str # Identifying key for the region}\n@returns(200) Update hostname response\n@errors {4XX: Failure to update hostname}\n\n@endpoint GET /zones/{zone_id}/analytics/latency\n@desc Argo Analytics for a zone\n@required {zone_id: str}\n@optional {bins: str}\n@returns(200) Argo Analytics for a zone response\n@errors {4XX: Argo Analytics for a zone response failure}\n\n@endpoint GET /zones/{zone_id}/analytics/latency/colos\n@desc Argo Analytics for a zone at different PoPs\n@required {zone_id: str}\n@returns(200) Argo Analytics for a zone at different PoPs response\n@errors {4XX: Argo Analytics for a zone at different PoPs response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/configuration\n@desc Retrieve information about specific configuration properties\n@returns(200) Retrieve information about specific configuration properties response\n@errors {4XX: Retrieve information about specific configuration properties response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/configuration\n@desc Update configuration properties\n@required {auth_id_characteristics: [any]}\n@returns(200) Set configuration properties response\n@errors {4XX: Retrieve information about specific configuration properties response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/discovery\n@desc Retrieve discovered operations on a zone rendered as OpenAPI schemas\n@returns(200) Retrieve discovered operations on a zone, rendered as OpenAPI schemas response\n@errors {4XX: Retrieve discovered operations on a zone, rendered as OpenAPI schemas response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/discovery/operations\n@desc Retrieve discovered operations on a zone\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., host: [str], method: [str], endpoint: str, direction: str(asc/desc), order: str(host/method/endpoint/traffic_stats.requests/traffic_stats.last_updated), diff: bool, origin: str # Filter results to only include discovery results sourced from a particular discovery engine   * `ML` - Discovered operations that were sourced using ML API Discovery   * `SessionIdentifier` - Discovered operations that were sourced using Session Identifier API Discovery, state: str # Filter results to only include discovery results in a particular state. States are as follows   * `review` - Discovered operations that are not saved into API Shield Endpoint Management   * `saved` - Discovered operations that are already saved into API Shield Endpoint Management   * `ignored` - Discovered operations that have been marked as ignored}\n@returns(200) Retrieve discovered operations on a zone response\n@errors {4XX: Retrieve discovered operations on a zone response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/discovery/operations\n@desc Patch discovered operations\n@returns(200) Patch discovered operations response\n@errors {4XX: Patch discovered operations response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/discovery/operations/{operation_id}\n@desc Patch discovered operation\n@optional {state: any}\n@returns(200) Patch discovered operation response\n@errors {4XX: Patch discovered operation response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/expression-template/fallthrough\n@desc Generate fallthrough WAF expression template from a set of API hosts\n@required {hosts: [str] # List of hosts to be targeted in the expression}\n@returns(200) Generate fallthrough WAF expression template response\n@errors {4XX: Generate fallthrough WAF expression template failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/labels\n@desc Retrieve all labels\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., order: str(name/description/created_at/last_updated/mapped_resources.operations), direction: str(asc/desc), source: str # Filter for labels with source, filter: str # Filter for labels where the name or description matches using substring match, with_mapped_resource_counts: bool=false # Include `mapped_resources` for each label}\n@returns(200) Retrieve all labels response\n@errors {4XX: Retrieve all labels response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/labels/managed/{name}\n@desc Retrieve managed label\n@optional {with_mapped_resource_counts: bool=false # Include `mapped_resources` for each label}\n@returns(200) Retrieve managed label response\n@errors {4XX: Retrieve managed label response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/labels/managed/{name}/resources/operation\n@desc Replace operation(s) attached to a managed label\n@required {selector: map{include!: map} # Operation IDs selector}\n@returns(200) Replace all operations(s) attached to a managed label response\n@errors {4XX: Replace all operations(s) attached to a managed label failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/labels/user\n@desc Delete user labels\n@returns(200) Delete user labels response\n@errors {4XX: Delete user labels response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/labels/user\n@desc Create user labels\n@returns(200) Create user labels response\n@errors {4XX: Create user labels response failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/labels/user/{name}\n@desc Delete user label\n@returns(200) Delete user label response\n@errors {4XX: Delete label response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/labels/user/{name}\n@desc Retrieve user label\n@optional {with_mapped_resource_counts: bool=false # Include `mapped_resources` for each label}\n@returns(200) Retrieve user label response\n@errors {4XX: Retrieve user label response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/labels/user/{name}\n@desc Patch user label\n@optional {description: str # The description of the label, metadata: map # Metadata for the label}\n@returns(200) Patch label response\n@errors {4XX: Patch label response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/labels/user/{name}\n@desc Update user label\n@optional {description: str # The description of the label, metadata: map # Metadata for the label}\n@returns(200) Update label response\n@errors {4XX: Update label response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/labels/user/{name}/resources/operation\n@desc Replace operation(s) attached to a user label\n@required {selector: map{include!: map} # Operation IDs selector}\n@returns(200) Replace all operations(s) attached to a user label response\n@errors {4XX: Replace all operations(s) attached to a user label failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/operations\n@desc Delete multiple operations\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete multiple operations response\n@errors {4XX: Delete multiple operations response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/operations\n@desc Retrieve information about all operations on a zone\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., order: str(method/host/endpoint/thresholds.$key), direction: str(asc/desc), host: [str], method: [str], endpoint: str, feature: [str] # Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.}\n@returns(200) Retrieve information about all operations on a zone response\n@errors {4XX: Retrieve information about all operations on a zone response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/operations\n@desc Add operations to a zone\n@returns(200) Add operations to a zone response\n@errors {4XX: Add operations to a zone response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/operations/item\n@desc Add one operation to a zone\n@required {endpoint: str(uri-template) # The endpoint which can contain path parameter templates in curly braces, each will be replaced from left to right with {varN}, starting with {var1}, during insertion. This will further be Cloudflare-normalized upon insertion. See: https://developers.cloudflare.com/rules/normalization/how-it-works/., host: str(hostname) # RFC3986-compliant host., method: str(GET/POST/HEAD/OPTIONS/PUT/DELETE/CONNECT/PATCH/TRACE) # The HTTP method used to access the endpoint.}\n@returns(200) Add one operation to a zone response\n@errors {4XX: Add one operation to a zone response failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/operations/labels\n@desc Bulk remove label(s) on operation(s) in endpoint management\n@required {selector: map{include!: map} # Operation IDs selector}\n@optional {managed: map{labels: [str]}, user: map{labels: [str]}}\n@returns(200) Bulk remove label(s) on operation(s) in endpoint management response\n@errors {4XX: Bulk remove label(s) on operation(s) in endpoint management response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/operations/labels\n@desc Bulk attach label(s) on operation(s) in endpoint management\n@required {selector: map{include!: map} # Operation IDs selector}\n@optional {managed: map{labels: [str]}, user: map{labels: [str]}}\n@returns(200) Bulk attach label(s) on operation(s) in endpoint management response\n@errors {4XX: Bulk attach label(s) on operation(s) in endpoint management response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/operations/labels\n@desc Bulk replace label(s) on operation(s) in endpoint management\n@required {managed: map{labels!: [str]} # Managed labels to replace for all affected operations, selector: map{include!: map} # Operation IDs selector, user: map{labels!: [str]} # User labels to replace for all affected operations}\n@returns(200) Bulk replace label(s) on operation(s) in endpoint management response\n@errors {4XX: Bulk replace label(s) on operation(s) in endpoint management response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/operations/schema_validation\n@desc Update multiple operation-level schema validation settings\n@returns(200) Update multiple operation-level schema validation settings response\n@errors {4XX: Update multiple operation-level schema validation settings response failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/operations/{operation_id}\n@desc Delete an operation\n@returns(200) {errors: [map], messages: [map], success: bool} # Delete an operation response\n@errors {4XX: Delete an operation response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/operations/{operation_id}\n@desc Retrieve information about an operation\n@optional {feature: [str] # Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.}\n@returns(200) Retrieve information about an operation response\n@errors {4XX: Retrieve information about an operation response failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/operations/{operation_id}/labels\n@desc Remove label(s) on an operation in endpoint management\n@optional {managed: [str] # List of managed label names., user: [str] # List of user label names.}\n@returns(200) Remove label(s) on an operation in endpoint management response\n@errors {4XX: Remove label(s) on an operation in endpoint management response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/operations/{operation_id}/labels\n@desc Attach label(s) on an operation in endpoint management\n@optional {managed: [str] # List of managed label names., user: [str] # List of user label names.}\n@returns(200) Attach label(s) on an operation in endpoint management response\n@errors {4XX: Attach label(s) on an operation in endpoint management response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/operations/{operation_id}/labels\n@desc Replace label(s) on an operation in endpoint management\n@optional {managed: [str] # List of managed label names. Omitting this property or passing an empty array will result in all managed labels being removed from the operation, user: [str] # List of user label names. Omitting this property or passing an empty array will result in all user labels being removed from the operation}\n@returns(200) Replace label(s) on an operation in endpoint management response\n@errors {4XX: Replace label(s) on an operation in endpoint management response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/operations/{operation_id}/schema_validation\n@desc Retrieve operation-level schema validation settings\n@returns(200) {mitigation_action: str?, operation_id: any} # Operation-level schema validation settings response\n@errors {4XX: Operation-level schema validation settings response}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/operations/{operation_id}/schema_validation\n@desc Update operation-level schema validation settings\n@optional {mitigation_action: str(log/block/none) # When set, this applies a mitigation action to this operation    - `log` log request when request does not conform to schema for this operation   - `block` deny access to the site when request does not conform to schema for this operation   - `none` will skip mitigation for this operation   - `null` indicates that no operation level mitigation is in place, see Zone Level Schema Validation Settings for mitigation action that will be applied}\n@returns(200) {mitigation_action: str?, operation_id: any} # Update operation-level schema validation settings response\n@errors {4XX: Update operation-level schema validation settings response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/schemas\n@desc Retrieve operations and features as OpenAPI schemas\n@optional {host: [str], feature: [str] # Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning.}\n@returns(200) Retrieve operations and features as OpenAPI schemas response\n@errors {4XX: Retrieve operations and features as OpenAPI schemas response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/settings/schema_validation\n@desc Retrieve zone level schema validation settings\n@returns(200) {validation_default_mitigation_action: str, validation_override_mitigation_action: str?} # Zone level schema validation settings response\n@errors {4XX: Zone level schema validation settings response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/settings/schema_validation\n@desc Update zone level schema validation settings\n@optional {validation_default_mitigation_action: str(none/log/block) # The default mitigation action used when there is no mitigation action defined on the operation Mitigation actions are as follows:    * `log` - log request when request does not conform to schema   * `block` - deny access to the site when request does not conform to schema  A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation  `null` will have no effect., validation_override_mitigation_action: str(none/disable_override) # When set, this overrides both zone level and operation level mitigation actions.    - `none` will skip running schema validation entirely for the request  To clear any override, use the special value `disable_override`  `null` will have no effect.}\n@returns(200) {validation_default_mitigation_action: str, validation_override_mitigation_action: str?} # Update zone level schema validation settings response\n@errors {4XX: Update zone level schema validation settings response failure}\n\n@endpoint PUT /zones/{zone_id}/api_gateway/settings/schema_validation\n@desc Update zone level schema validation settings\n@required {validation_default_mitigation_action: str(none/log/block) # The default mitigation action used when there is no mitigation action defined on the operation  Mitigation actions are as follows:    * `log` - log request when request does not conform to schema   * `block` - deny access to the site when request does not conform to schema  A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation}\n@optional {validation_override_mitigation_action: str(none/disable_override) # When set, this overrides both zone level and operation level mitigation actions.    - `none` will skip running schema validation entirely for the request   - `null` indicates that no override is in place  To clear any override, use the special value `disable_override` or `null`}\n@returns(200) {validation_default_mitigation_action: str, validation_override_mitigation_action: str?} # Update zone level schema validation settings response\n@errors {4XX: Update zone level schema validation settings response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/user_schemas\n@desc Retrieve information about all schemas on a zone\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., omit_source: bool=false # Omit the source-files of schemas and only retrieve their meta-data., validation_enabled: bool}\n@returns(200) Retrieve information about all schemas on a zone response\n@errors {4XX: Retrieve information about all schemas on a zone response failure}\n\n@endpoint POST /zones/{zone_id}/api_gateway/user_schemas\n@desc Upload a schema to a zone\n@returns(200) Upload a schema response\n@errors {4XX: Upload a schema response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/user_schemas/hosts\n@desc Retrieve schema hosts in a zone\n@returns(200) Retrieve schema hosts in a zone response\n@errors {4XX: Retrieve schema hosts in a zone response failure}\n\n@endpoint DELETE /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n@desc Delete a schema\n@returns(200) Delete a schema response\n@errors {4XX: Delete a schema response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n@desc Retrieve information about a specific schema on a zone\n@optional {omit_source: bool=false # Omit the source-files of schemas and only retrieve their meta-data.}\n@returns(200) Retrieve information about a specific schema on a zone response\n@errors {4XX: Retrieve information about a specific schema zone response failure}\n\n@endpoint PATCH /zones/{zone_id}/api_gateway/user_schemas/{schema_id}\n@desc Enable validation for a schema\n@optional {validation_enabled: any}\n@returns(200) Enable validation for a schema response\n@errors {4XX: Enable validation for a schema response failure}\n\n@endpoint GET /zones/{zone_id}/api_gateway/user_schemas/{schema_id}/operations\n@desc Retrieve all operations from a schema.\n@optional {feature: [str] # Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning., host: [str], method: [str], endpoint: str, page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., operation_status: str(new/existing) # Filter results by whether operations exist in API Shield Endpoint Management or not. `new` will just return operations from the schema that do not exist in API Shield Endpoint Management. `existing` will just return operations from the schema that already exist in API Shield Endpoint Management.}\n@returns(200) Retrieve all operations from a schema response\n@errors {4XX: Retrieve all operations from a schema response failure}\n\n@endpoint GET /zones/{zone_id}/argo/smart_routing\n@desc Get Argo Smart Routing setting\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{editable: bool, id: str, modified_on: str(date-time), value: str}, success: bool} # Get Argo Smart Routing enablement setting response.\n@errors {4XX: Get Argo Smart Routing enablement setting failure.}\n\n@endpoint PATCH /zones/{zone_id}/argo/smart_routing\n@desc Patch Argo Smart Routing setting\n@required {zone_id: str, value: str(on/off) # Specifies the enablement value of Argo Smart Routing.}\n@returns(200) {errors: [map], messages: [map], result: map{editable: bool, id: str, modified_on: str(date-time), value: str}, success: bool} # Patch Argo Smart Routing enablement setting response.\n@errors {4XX: Patch Argo Smart Routing enablement setting failure.}\n\n@endpoint GET /zones/{zone_id}/argo/tiered_caching\n@desc Get Tiered Caching setting\n@required {zone_id: str}\n@returns(200) Get Tiered Caching setting response.\n@errors {4XX: Get Tiered Caching setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/argo/tiered_caching\n@desc Patch Tiered Caching setting\n@required {zone_id: str, value: str(on/off) # Enables Tiered Caching.}\n@returns(200) Patch Tiered Caching setting response.\n@errors {4XX: Patch Tiered Caching setting response failure.}\n\n@endpoint GET /zones/{zone_id}/available_plans\n@desc List Available Plans\n@required {zone_id: str}\n@returns(200) List Available Plans response\n@errors {4XX: List Available Plans response failure}\n\n@endpoint GET /zones/{zone_id}/available_plans/{plan_identifier}\n@desc Available Plan Details\n@required {plan_identifier: str, zone_id: str}\n@returns(200) Available Plan Details response\n@errors {4XX: Available Plan Details response failure}\n\n@endpoint GET /zones/{zone_id}/available_rate_plans\n@desc List Available Rate Plans\n@required {zone_id: str}\n@returns(200) List Available Rate Plans response\n@errors {4XX: List Available Rate Plans response failure}\n\n@endpoint GET /zones/{zone_id}/bot_management\n@desc Get Zone Bot Management Config\n@required {zone_id: str}\n@returns(200) Bot Management config response\n@errors {4XX: Bot Management config response failure}\n\n@endpoint PUT /zones/{zone_id}/bot_management\n@desc Update Zone Bot Management Config\n@required {zone_id: str}\n@returns(200) Update Bot Management response\n@errors {4XX: Update Bot Management response failure}\n@example_request {\"ai_bots_protection\":\"disabled\",\"cf_robots_variant\":\"off\",\"crawler_protection\":\"disabled\",\"enable_js\":true,\"fight_mode\":true,\"is_robots_txt_managed\":false}\n\n@endpoint GET /zones/{zone_id}/bot_management/feedback\n@desc List zone feedback reports\n@required {zone_id: str}\n@returns(200) List of feedback reports\n@errors {4XX: Feedback list failure}\n\n@endpoint POST /zones/{zone_id}/bot_management/feedback\n@desc Submit a feedback report\n@required {zone_id: str, description: str, expression: str # Wirefilter expression describing the traffic being reported., first_request_seen_at: str(date-time), last_request_seen_at: str(date-time), requests: int(int64), requests_by_attribute: map # Top attributes contributing to the feedback sample. Keys include topASNs, topCountries, topHosts, topIPs, topJA3Hashes, topJA4s, topPaths, topUserAgents., requests_by_score: map # Map of bot scores (1-99) to request counts. Sum must equal `requests`., requests_by_score_src: map # Map of score source to request counts. Sum must equal `requests`., type: str(false_positive/false_negative) # Type of feedback report.}\n@optional {created_at: str(date-time), subtype: str}\n@returns(201) Feedback report created\n@errors {4XX: Feedback creation failure}\n@example_request {\"description\":\"Automated scraping missed by detections\",\"expression\":\"http.host eq 'www.example.com' and http.request.uri.path starts_with '/products' and cf.bot_management.score gt 25\",\"first_request_seen_at\":\"2025-09-29T00:00:00Z\",\"last_request_seen_at\":\"2025-09-29T06:00:00Z\",\"requests\":2000,\"requests_by_attribute\":{\"topIPs\":[{\"metric\":\"203.0.113.55\",\"requests\":400}],\"topJA3Hashes\":[{\"metric\":\"ab12cd34ef56...\",\"requests\":900}]},\"requests_by_score\":{\"30\":800,\"40\":700,\"50\":500},\"requests_by_score_src\":{\"heuristics\":200,\"ml\":1800},\"subtype\":\"Scraping\",\"type\":\"false_negative\"}\n\n@endpoint GET /zones/{zone_id}/cache/cache_reserve\n@desc Get Cache Reserve setting\n@required {zone_id: str}\n@returns(200) Get Cache Reserve setting response.\n@errors {4XX: Get Cache Reserve setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/cache/cache_reserve\n@desc Change Cache Reserve setting\n@required {zone_id: str, value: str(on/off)=off # Value of the Cache Reserve zone setting.}\n@returns(200) Change Cache Reserve setting response.\n@errors {4XX: Change Cache Reserve setting response failure.}\n\n@endpoint GET /zones/{zone_id}/cache/cache_reserve_clear\n@desc Get Cache Reserve Clear\n@required {zone_id: str}\n@returns(200) Get Cache Reserve Clear response.\n@errors {4XX: Get Cache Reserve Clear failure response.}\n\n@endpoint POST /zones/{zone_id}/cache/cache_reserve_clear\n@desc Start Cache Reserve Clear\n@required {zone_id: str}\n@returns(200) Start Cache Reserve Clear response.\n@errors {4XX: Start Cache Reserve Clear failure response.}\n@example_request \"{}\"\n\n@endpoint GET /zones/{zone_id}/cache/origin_post_quantum_encryption\n@desc Get Origin Post-Quantum Encryption setting\n@required {zone_id: str}\n@returns(200) Get Origin Post-Quantum Encryption setting response.\n@errors {4XX: Get Origin Post-Quantum Encryption setting response failure.}\n\n@endpoint PUT /zones/{zone_id}/cache/origin_post_quantum_encryption\n@desc Change Origin Post-Quantum Encryption setting\n@required {zone_id: str, value: str(preferred/supported/off)=supported # Value of the Origin Post Quantum Encryption Setting.}\n@returns(200) Change Origin Post-Quantum Encryption setting response.\n@errors {4XX: Change Origin Post-Quantum Encryption setting response failure.}\n\n@endpoint GET /zones/{zone_id}/cache/regional_tiered_cache\n@desc Get Regional Tiered Cache setting\n@required {zone_id: str}\n@returns(200) Get Regional Tiered Cache setting response.\n@errors {4XX: Get Regional Tiered Cache setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/cache/regional_tiered_cache\n@desc Change Regional Tiered Cache setting\n@required {zone_id: str, value: str(on/off)=off # Value of the Regional Tiered Cache zone setting.}\n@returns(200) Change Regional Tiered Cache setting response.\n@errors {4XX: Change Regional Tiered Cache setting response failure.}\n\n@endpoint DELETE /zones/{zone_id}/cache/tiered_cache_smart_topology_enable\n@desc Delete Smart Tiered Cache setting\n@required {zone_id: str}\n@returns(200) Delete Smart Tiered Cache setting response.\n@errors {4XX: Delete Smart Tiered Cache setting response failure.}\n\n@endpoint GET /zones/{zone_id}/cache/tiered_cache_smart_topology_enable\n@desc Get Smart Tiered Cache setting\n@required {zone_id: str}\n@returns(200) Get Smart Tiered Cache setting response.\n@errors {4XX: Get Smart Tiered Cache setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/cache/tiered_cache_smart_topology_enable\n@desc Patch Smart Tiered Cache setting\n@required {zone_id: str, value: str(on/off) # Enable or disable the Smart Tiered Cache.}\n@returns(200) Patch Smart Tiered Cache setting response.\n@errors {4XX: Patch Smart Tiered Cache setting response failure.}\n\n@endpoint DELETE /zones/{zone_id}/cache/variants\n@desc Delete variants setting\n@required {zone_id: str}\n@returns(200) Delete variants setting response.\n@errors {4XX: Delete variants setting response failure.}\n\n@endpoint GET /zones/{zone_id}/cache/variants\n@desc Get variants setting\n@required {zone_id: str}\n@returns(200) Get variants setting response.\n@errors {4XX: Get variants setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/cache/variants\n@desc Change variants setting\n@required {zone_id: str, value: map{avif: [str], bmp: [str], gif: [str], jp2: [str], jpeg: [str], jpg: [str], jpg2: [str], png: [str], tif: [str], tiff: [str], webp: [str]} # Value of the zone setting.}\n@returns(200) Change variants setting response.\n@errors {4XX: Change variants setting response failure.}\n\n@endpoint GET /zones/{zone_id}/certificate_authorities/hostname_associations\n@desc List Hostname Associations\n@required {zone_id: str}\n@optional {mtls_certificate_id: str}\n@returns(200) List Hostname Associations Response\n@errors {4XX: List Hostname Associations Response Failure}\n\n@endpoint PUT /zones/{zone_id}/certificate_authorities/hostname_associations\n@desc Replace Hostname Associations\n@required {zone_id: str}\n@optional {hostnames: [str], mtls_certificate_id: str # The UUID for a certificate that was uploaded to the mTLS Certificate Management endpoint. If no mtls_certificate_id is given, the hostnames will be associated to your active Cloudflare Managed CA.}\n@returns(200) Replace Hostname Associations Response\n@errors {4XX: Replace Hostname Associations Response Failure}\n\n@endpoint GET /zones/{zone_id}/client_certificates\n@desc List Client Certificates\n@required {zone_id: str}\n@optional {status: any(all/active/pending_reactivation/pending_revocation/revoked), page: num=1, per_page: num=20, limit: int, offset: int}\n@returns(200) List Client Certificates Response\n@errors {4XX: List Client Certificates Response Failure}\n\n@endpoint POST /zones/{zone_id}/client_certificates\n@desc Create Client Certificate\n@required {zone_id: str, csr: str # The Certificate Signing Request (CSR). Must be newline-encoded., validity_days: int # The number of days the Client Certificate will be valid after the issued_on date}\n@returns(200) Create Client Certificate Response\n@errors {4XX: Create Client Certificate Response Failure}\n\n@endpoint DELETE /zones/{zone_id}/client_certificates/{client_certificate_id}\n@desc Revoke Client Certificate\n@required {zone_id: str, client_certificate_id: str}\n@returns(200) Revoke Client Certificate Response\n@errors {4XX: Revoke Client Certificate Response Failure}\n\n@endpoint GET /zones/{zone_id}/client_certificates/{client_certificate_id}\n@desc Client Certificate Details\n@required {zone_id: str, client_certificate_id: str}\n@returns(200) Client Certificate Details Response\n@errors {4XX: Client Certificate Details Response Failure}\n\n@endpoint PATCH /zones/{zone_id}/client_certificates/{client_certificate_id}\n@desc Reactivate Client Certificate\n@required {zone_id: str, client_certificate_id: str}\n@optional {reactivate: bool}\n@returns(200) Reactivate Client Certificate Response\n@errors {4XX: Reactivate Client Certificate Response Failure}\n\n@endpoint GET /zones/{zone_id}/cloud_connector/rules\n@desc Rules\n@required {zone_id: str}\n@returns(200) Cloud Connector rules response\n@errors {4XX: Cloud Connector response failure, 5XX: Cloud Connector response failure}\n\n@endpoint PUT /zones/{zone_id}/cloud_connector/rules\n@desc Put Rules\n@required {zone_id: str}\n@returns(200) Cloud Connector rules response\n@errors {4XX: Cloud Connector response failure, 5XX: Cloud Connector response failure}\n\n@endpoint POST /zones/{zone_id}/content-upload-scan/disable\n@desc Disable Content Scanning\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: any, success: bool} # Disable Content Scanning response.\n@errors {4XX: Disable Content Scanning failure response.}\n\n@endpoint POST /zones/{zone_id}/content-upload-scan/enable\n@desc Enable Content Scanning\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: any, success: bool} # Enable Content Scanning response.\n@errors {4XX: Enable Content Scanning failure response.}\n\n@endpoint GET /zones/{zone_id}/content-upload-scan/payloads\n@desc List Existing Custom Scan Expressions\n@required {zone_id: str}\n@returns(200) List existing Content Scan custom scan expressions response.\n@errors {4XX: List existing Content Scan custom scan expressions failure response.}\n\n@endpoint POST /zones/{zone_id}/content-upload-scan/payloads\n@desc Add Custom Scan Expressions\n@required {zone_id: str}\n@returns(200) Add custom scan expressions for Content Scanning.\n@errors {4XX: List existing Content Scan custom scan expressions failure response.}\n\n@endpoint DELETE /zones/{zone_id}/content-upload-scan/payloads/{expression_id}\n@desc Delete a Custom Scan Expression\n@required {zone_id: str, expression_id: any}\n@returns(200) Delete Content Scan custom scan expressions response.\n@errors {4XX: Delete Content Scan custom scan expressions failure response.}\n\n@endpoint GET /zones/{zone_id}/content-upload-scan/settings\n@desc Get Content Scanning Status\n@required {zone_id: str}\n@returns(200) Get Content Scanning status response.\n@errors {4XX: Get Content Scanning status failure response.}\n\n@endpoint PUT /zones/{zone_id}/content-upload-scan/settings\n@desc Update Content Scanning Status\n@required {zone_id: str, value: str(enabled/disabled) # The status value for Content Scanning.}\n@returns(200) Update Content Scanning settings response.\n@errors {4XX: Update Content Scanning settings failure response.}\n\n@endpoint GET /zones/{zone_id}/custom_certificates\n@desc List SSL Configurations\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20, match: str(any/all)=all, status: any(active/expired/deleted/pending/initializing)}\n@returns(200) List SSL Configurations response\n@errors {4XX: List SSL Configurations response failure}\n\n@endpoint POST /zones/{zone_id}/custom_certificates\n@desc Create SSL Configuration\n@required {zone_id: str, certificate: str # The zone's SSL certificate or certificate and the intermediate(s)., private_key: str # The zone's private key.}\n@optional {bundle_method: str(ubiquitous/optimal/force)=ubiquitous # A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it., custom_csr_id: str # The identifier for the Custom CSR that was used., deploy: str(staging/production)=production # The environment to deploy the certificate to, defaults to production, geo_restrictions: map{label: str} # Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance., policy: str # Specify the policy that determines the region where your private key will be held locally. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Any combination of countries, specified by their two letter country code (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) can be chosen, such as 'country: IN', as well as 'region: EU' which refers to the EU region. If there are too few data centers satisfying the policy, it will be rejected. Note: The API accepts this field as either \"policy\" or \"policy_restrictions\" in requests. Responses return this field as \"policy_restrictions\"., type: str(legacy_custom/sni_custom)=legacy_custom # The type 'legacy_custom' enables support for legacy clients which do not include SNI in the TLS handshake.}\n@returns(200) Create SSL Configuration response\n@errors {4XX: Create SSL Configuration response failure}\n\n@endpoint PUT /zones/{zone_id}/custom_certificates/prioritize\n@desc Re-prioritize SSL Certificates\n@required {zone_id: str, certificates: [map{id: str, priority: num}] # Array of ordered certificates.}\n@returns(200) Re-prioritize SSL Certificates response\n@errors {4XX: Re-prioritize SSL Certificates response failure}\n\n@endpoint DELETE /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n@desc Delete SSL Configuration\n@required {custom_certificate_id: str, zone_id: str}\n@returns(200) Delete SSL Configuration response\n@errors {4XX: Delete SSL Configuration response failure}\n\n@endpoint GET /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n@desc SSL Configuration Details\n@required {custom_certificate_id: str, zone_id: str}\n@returns(200) SSL Configuration Details response\n@errors {4XX: SSL Configuration Details response failure}\n\n@endpoint PATCH /zones/{zone_id}/custom_certificates/{custom_certificate_id}\n@desc Edit SSL Configuration\n@required {custom_certificate_id: str, zone_id: str}\n@optional {bundle_method: str(ubiquitous/optimal/force)=ubiquitous # A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it., certificate: str # The zone's SSL certificate or certificate and the intermediate(s)., custom_csr_id: str # The identifier for the Custom CSR that was used., deploy: str(staging/production)=production # The environment to deploy the certificate to, defaults to production, geo_restrictions: map{label: str} # Specify the region where your private key can be held locally for optimal TLS performance. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Options allow distribution to only to U.S. data centers, only to E.U. data centers, or only to highest security data centers. Default distribution is to all Cloudflare datacenters, for optimal performance., policy: str # Specify the policy that determines the region where your private key will be held locally. HTTPS connections to any excluded data center will still be fully encrypted, but will incur some latency while Keyless SSL is used to complete the handshake with the nearest allowed data center. Any combination of countries, specified by their two letter country code (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) can be chosen, such as 'country: IN', as well as 'region: EU' which refers to the EU region. If there are too few data centers satisfying the policy, it will be rejected. Note: The API accepts this field as either \"policy\" or \"policy_restrictions\" in requests. Responses return this field as \"policy_restrictions\"., private_key: str # The zone's private key.}\n@returns(200) Edit SSL Configuration response\n@errors {4XX: Edit SSL Configuration response failure}\n\n@endpoint GET /zones/{zone_id}/custom_hostnames\n@desc List Custom Hostnames\n@required {zone_id: str}\n@optional {hostname: str, hostname.contain: str, id: str, page: num=1, per_page: num=20, order: any(ssl/ssl_status)=ssl, direction: any(asc/desc), ssl_status: str(initializing/pending_validation/deleted/pending_issuance/pending_deployment/pending_deletion/pending_expiration/expired/active/initializing_timed_out/validation_timed_out/issuance_timed_out/deployment_timed_out/deletion_timed_out/pending_cleanup/staging_deployment/staging_active/deactivating/inactive/backup_issued/holding_deployment), hostname_status: str(active/pending/active_redeploying/moved/pending_deletion/deleted/pending_blocked/pending_migration/pending_provisioned/test_pending/test_active/test_active_apex/test_blocked/test_failed/provisioned/blocked), certificate_authority: str(google/lets_encrypt/ssl_com), wildcard: bool, custom_origin_server: str, ssl: any(0/1)=0}\n@returns(200) List Custom Hostnames response\n@errors {4XX: List Custom Hostnames response failure}\n\n@endpoint POST /zones/{zone_id}/custom_hostnames\n@desc Create Custom Hostname\n@required {zone_id: str, hostname: str # The custom hostname that will point to your hostname via CNAME.}\n@optional {custom_metadata: map # Unique key/value metadata for this hostname. These are per-hostname (customer) settings., ssl: map # SSL properties used when creating the custom hostname.}\n@returns(200) Create Custom Hostname response\n@errors {4XX: Create Custom Hostname response failure}\n\n@endpoint DELETE /zones/{zone_id}/custom_hostnames/fallback_origin\n@desc Delete Fallback Origin for Custom Hostnames\n@required {zone_id: str}\n@returns(200) Delete Fallback Origin for Custom Hostnames response\n@errors {4XX: Delete Fallback Origin for Custom Hostnames response failure}\n\n@endpoint GET /zones/{zone_id}/custom_hostnames/fallback_origin\n@desc Get Fallback Origin for Custom Hostnames\n@required {zone_id: str}\n@returns(200) Get Fallback Origin for Custom Hostnames response\n@errors {4XX: Get Fallback Origin for Custom Hostnames response failure}\n\n@endpoint PUT /zones/{zone_id}/custom_hostnames/fallback_origin\n@desc Update Fallback Origin for Custom Hostnames\n@required {zone_id: str, origin: str # Your origin hostname that requests to your custom hostnames will be sent to.}\n@returns(200) Update Fallback Origin for Custom Hostnames response\n@errors {4XX: Update Fallback Origin for Custom Hostnames response failure}\n\n@endpoint DELETE /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n@desc Delete Custom Hostname (and any issued SSL certificates)\n@required {custom_hostname_id: str, zone_id: str}\n@returns(200) {id: str} # Delete Custom Hostname (and any issued SSL certificates) response\n@errors {4XX: Delete Custom Hostname (and any issued SSL certificates) response failure}\n\n@endpoint GET /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n@desc Custom Hostname Details\n@required {custom_hostname_id: str, zone_id: str}\n@returns(200) Custom Hostname Details response\n@errors {4XX: Custom Hostname Details response failure}\n\n@endpoint PATCH /zones/{zone_id}/custom_hostnames/{custom_hostname_id}\n@desc Edit Custom Hostname\n@required {custom_hostname_id: str, zone_id: str}\n@optional {custom_metadata: map # Unique key/value metadata for this hostname. These are per-hostname (customer) settings., custom_origin_server: str # a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record., custom_origin_sni: str # A hostname that will be sent to your custom origin server as SNI for TLS handshake. This can be a valid subdomain of the zone or custom origin server name or the string ':request_host_header:' which will cause the host header in the request to be used as SNI. Not configurable with default/fallback origin server., ssl: map # SSL properties used when creating the custom hostname.}\n@returns(200) Edit Custom Hostname response\n@errors {4XX: Edit Custom Hostname response failure}\n\n@endpoint DELETE /zones/{zone_id}/custom_hostnames/{custom_hostname_id}/certificate_pack/{certificate_pack_id}/certificates/{certificate_id}\n@desc Delete Single Certificate And Key For Custom Hostname\n@required {custom_hostname_id: str, certificate_pack_id: str, certificate_id: str, zone_id: str}\n@returns(202) {id: str} # Delete Single Certificate and Key In a Custom Hostname response\n@errors {4XX: Delete Single Certificate and Key In a Custom Hostname response failure}\n\n@endpoint PUT /zones/{zone_id}/custom_hostnames/{custom_hostname_id}/certificate_pack/{certificate_pack_id}/certificates/{certificate_id}\n@desc Replace Custom Certificate and Custom Key In Custom Hostname\n@required {custom_hostname_id: str, certificate_pack_id: str, certificate_id: str, zone_id: str, custom_certificate: str # If a custom uploaded certificate is used., custom_key: str # The key for a custom uploaded certificate.}\n@returns(202) Edit Custom Certificate In a Custom Hostname response\n@errors {4XX: Edit Custom Certificate In a Custom Hostname response failure}\n\n@endpoint GET /zones/{zone_id}/custom_ns\n@desc Get Account Custom Nameserver Related Zone Metadata\n@required {zone_id: str}\n@returns(200) Get Account Custom Nameserver Related Zone Metadata response\n@errors {4XX: Get Account Custom Nameserver Related Zone Metadata response failure}\n\n@endpoint PUT /zones/{zone_id}/custom_ns\n@desc Set Account Custom Nameserver Related Zone Metadata\n@required {zone_id: str}\n@optional {enabled: bool # Whether zone uses account-level custom nameservers., ns_set: num=1 # The number of the name server set to assign to the zone.}\n@returns(200) Set Account Custom Nameserver Related Zone Metadata response\n@errors {4XX: Set Account Custom Nameserver Related Zone Metadata response failure}\n\n@endpoint GET /zones/{zone_id}/dcv_delegation/uuid\n@desc Retrieve the DCV Delegation unique identifier.\n@required {zone_id: str}\n@returns(200) Retrieve the DCV Delegation unique identifier response.\n@errors {4XX: Retrieve the DCV Delegation unique identifier response failure.}\n\n@endpoint GET /zones/{zone_id}/devices/policy/certificates\n@desc Get device certificate provisioning status\n@required {zone_id: any}\n@returns(200) Get WARP client provision certificates enabled status response.\n@errors {4XX: Get WARP client provision certificates enabled status failure.}\n\n@endpoint PATCH /zones/{zone_id}/devices/policy/certificates\n@desc Update device certificate provisioning status\n@required {zone_id: any, enabled: bool # The current status of the device policy certificate provisioning feature for WARP clients.}\n@returns(200) Update a zone to toggle permission for devices to provision certificates response.\n@errors {4XX: Patch a zone to toggle permission for devices to provision certificates failure.}\n\n@endpoint GET /zones/{zone_id}/dns_analytics/report\n@desc Table\n@required {zone_id: str}\n@optional {metrics: str, dimensions: str, since: str(date-time), until: str(date-time), limit: int, sort: str, filters: str}\n@returns(200) Table response\n@errors {4XX: Table response failure}\n\n@endpoint GET /zones/{zone_id}/dns_analytics/report/bytime\n@desc By Time\n@required {zone_id: str}\n@optional {metrics: str, dimensions: str, since: str(date-time), until: str(date-time), limit: int, sort: str, filters: str, time_delta: str}\n@returns(200) By Time response\n@errors {4XX: By Time response failure}\n\n@endpoint GET /zones/{zone_id}/dns_records\n@desc List DNS Records\n@required {zone_id: str}\n@optional {name: str, name.exact: str, name.contains: str, name.startswith: str, name.endswith: str, type: str, content: str, content.exact: str, content.contains: str, content.startswith: str, content.endswith: str, proxied: bool, match: str, comment: str, comment.present: str, comment.absent: str, comment.exact: str, comment.contains: str, comment.startswith: str, comment.endswith: str, tag: str, tag.present: str, tag.absent: str, tag.exact: str, tag.contains: str, tag.startswith: str, tag.endswith: str, search: str, tag_match: str, page: num, per_page: num, order: str, direction: str}\n@returns(200) List DNS Records response\n@errors {4XX: List DNS Records response failure}\n\n@endpoint POST /zones/{zone_id}/dns_records\n@desc Create DNS Record\n@required {zone_id: str}\n@returns(200) Create DNS Record response\n@errors {4XX: Create DNS Record response failure}\n\n@endpoint POST /zones/{zone_id}/dns_records/batch\n@desc Batch DNS Records\n@required {zone_id: str}\n@optional {deletes: [map], patches: [map{id!: str}], posts: [map], puts: [map{id!: str}]}\n@returns(200) Batch DNS Records response\n@errors {4XX: Batch DNS Records response failure}\n\n@endpoint GET /zones/{zone_id}/dns_records/export\n@desc Export DNS Records\n@required {zone_id: str}\n@returns(200) Export DNS Records response\n@errors {4XX: Export DNS Records response failure}\n\n@endpoint POST /zones/{zone_id}/dns_records/import\n@desc Import DNS Records\n@required {zone_id: str}\n@returns(200) Import DNS Records response\n@errors {4XX: Import DNS Records response failure}\n\n@endpoint POST /zones/{zone_id}/dns_records/scan\n@desc Scan DNS Records\n@required {zone_id: str}\n@returns(200) Scan DNS Records response\n@errors {4XX: Scan DNS Records response failure}\n\n@endpoint GET /zones/{zone_id}/dns_records/scan/review\n@desc List Scanned DNS Records\n@required {zone_id: str}\n@returns(200) List of discovered DNS records\n@errors {4XX: Scan review failure}\n\n@endpoint POST /zones/{zone_id}/dns_records/scan/review\n@desc Review Scanned DNS Records\n@required {zone_id: str}\n@optional {accepts: [map], rejects: [map]}\n@returns(200) Records reviewed successfully\n@errors {4XX: Review failure}\n\n@endpoint POST /zones/{zone_id}/dns_records/scan/trigger\n@desc Trigger DNS Record Scan\n@required {zone_id: str}\n@returns(200) Trigger DNS Records Scan Response\n@errors {4XX: Trigger DNS Records Scan response failure}\n\n@endpoint GET /zones/{zone_id}/dns_records/usage\n@desc Get DNS Record Usage\n@required {zone_id: str}\n@returns(200) Get DNS Record Usage response\n@errors {4XX: Get DNS Record Usage response failure}\n\n@endpoint DELETE /zones/{zone_id}/dns_records/{dns_record_id}\n@desc Delete DNS Record\n@required {dns_record_id: str, zone_id: str}\n@returns(200) {result: map{id: str}} # Delete DNS Record response\n@errors {4XX: Delete DNS Record response failure}\n\n@endpoint GET /zones/{zone_id}/dns_records/{dns_record_id}\n@desc DNS Record Details\n@required {dns_record_id: str, zone_id: str}\n@returns(200) DNS Record Details response\n@errors {4XX: DNS Record Details response failure}\n\n@endpoint PATCH /zones/{zone_id}/dns_records/{dns_record_id}\n@desc Update DNS Record\n@required {dns_record_id: str, zone_id: str}\n@returns(200) Patch DNS Record response\n@errors {4XX: Patch DNS Record response failure}\n\n@endpoint PUT /zones/{zone_id}/dns_records/{dns_record_id}\n@desc Overwrite DNS Record\n@required {dns_record_id: str, zone_id: str}\n@returns(200) Update DNS Record response\n@errors {4XX: Update DNS Record response failure}\n\n@endpoint GET /zones/{zone_id}/dns_settings\n@desc Show DNS Settings\n@required {zone_id: str}\n@returns(200) Show DNS Settings response\n@errors {4XX: Show DNS Settings response failure}\n\n@endpoint PATCH /zones/{zone_id}/dns_settings\n@desc Update DNS Settings\n@required {zone_id: str}\n@returns(200) Show DNS Settings response\n@errors {4XX: Show DNS Settings response failure}\n\n@endpoint DELETE /zones/{zone_id}/dnssec\n@desc Delete DNSSEC records\n@required {zone_id: str}\n@returns(200) Delete DNSSEC records response.\n@errors {4XX: Delete DNSSEC records response failure.}\n\n@endpoint GET /zones/{zone_id}/dnssec\n@desc DNSSEC Details\n@required {zone_id: str}\n@returns(200) DNSSEC Details response.\n@errors {4XX: DNSSEC Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}/dnssec\n@desc Edit DNSSEC Status\n@required {zone_id: str}\n@optional {dnssec_multi_signer: bool # If true, multi-signer DNSSEC is enabled on the zone, allowing multiple providers to serve a DNSSEC-signed zone at the same time. This is required for DNSKEY records (except those automatically generated by Cloudflare) to be added to the zone.  See [Multi-signer DNSSEC](https://developers.cloudflare.com/dns/dnssec/multi-signer-dnssec/) for details., dnssec_presigned: bool # If true, allows Cloudflare to transfer in a DNSSEC-signed zone including signatures from an external provider, without requiring Cloudflare to sign any records on the fly.  Note that this feature has some limitations. See [Cloudflare as Secondary](https://developers.cloudflare.com/dns/zone-setups/zone-transfers/cloudflare-as-secondary/setup/#dnssec) for details., dnssec_use_nsec3: bool # If true, enables the use of NSEC3 together with DNSSEC on the zone. Combined with setting dnssec_presigned to true, this enables the use of NSEC3 records when transferring in from an external provider. If dnssec_presigned is instead set to false (default), NSEC3 records will be generated and signed at request time.  See [DNSSEC with NSEC3](https://developers.cloudflare.com/dns/dnssec/enable-nsec3/) for details., status: str(active/disabled) # Status of DNSSEC, based on user-desired state and presence of necessary records.}\n@returns(200) Edit DNSSEC Status response.\n@errors {4XX: Edit DNSSEC Status response failure.}\n\n@endpoint GET /zones/{zone_id}/email/routing\n@desc Get Email Routing settings\n@required {zone_id: str}\n@returns(200) Get Email Routing settings response\n\n@endpoint POST /zones/{zone_id}/email/routing/disable\n@desc Disable Email Routing\n@required {zone_id: str}\n@returns(200) Disable Email Routing response\n\n@endpoint DELETE /zones/{zone_id}/email/routing/dns\n@desc Disable Email Routing\n@required {zone_id: str}\n@optional {name: str # Domain of your zone.}\n@returns(200) Disable Email Routing response\n\n@endpoint GET /zones/{zone_id}/email/routing/dns\n@desc Email Routing - DNS settings\n@required {zone_id: str}\n@optional {subdomain: str}\n@returns(200) Email Routing - DNS settings response\n\n@endpoint PATCH /zones/{zone_id}/email/routing/dns\n@desc Unlock Email Routing\n@required {zone_id: str}\n@optional {name: str # Domain of your zone.}\n@returns(200) Unlock Email Routing MX records\n\n@endpoint POST /zones/{zone_id}/email/routing/dns\n@desc Enable Email Routing\n@required {zone_id: str}\n@optional {name: str # Domain of your zone.}\n@returns(200) Enable Email Routing response\n\n@endpoint POST /zones/{zone_id}/email/routing/enable\n@desc Enable Email Routing\n@required {zone_id: str}\n@returns(200) Enable Email Routing response\n\n@endpoint GET /zones/{zone_id}/email/routing/rules\n@desc List routing rules\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20, enabled: bool(true/false)}\n@returns(200) List routing rules response\n\n@endpoint POST /zones/{zone_id}/email/routing/rules\n@desc Create routing rule\n@required {zone_id: str, actions: [map{type!: str, value: [str]}] # List actions patterns., matchers: [map{field: str, type!: str, value: str}] # Matching patterns to forward to your actions.}\n@optional {enabled: bool(true/false)=true # Routing rule status., name: str # Routing rule name., priority: num=0 # Priority of the routing rule.}\n@returns(200) Create routing rule response\n\n@endpoint GET /zones/{zone_id}/email/routing/rules/catch_all\n@desc Get catch-all rule\n@required {zone_id: str}\n@returns(200) Get catch-all rule response\n\n@endpoint PUT /zones/{zone_id}/email/routing/rules/catch_all\n@desc Update catch-all rule\n@required {zone_id: str, actions: [map{type!: str, value: [str]}] # List actions for the catch-all routing rule., matchers: [map{type!: str}] # List of matchers for the catch-all routing rule.}\n@optional {enabled: bool(true/false)=true # Routing rule status., name: str # Routing rule name.}\n@returns(200) Update catch-all rule response\n\n@endpoint DELETE /zones/{zone_id}/email/routing/rules/{rule_identifier}\n@desc Delete routing rule\n@required {rule_identifier: str, zone_id: str}\n@returns(200) Delete routing rule response\n\n@endpoint GET /zones/{zone_id}/email/routing/rules/{rule_identifier}\n@desc Get routing rule\n@required {rule_identifier: str, zone_id: str}\n@returns(200) Get routing rule response\n\n@endpoint PUT /zones/{zone_id}/email/routing/rules/{rule_identifier}\n@desc Update routing rule\n@required {rule_identifier: str, zone_id: str, actions: [map{type!: str, value: [str]}] # List actions patterns., matchers: [map{field: str, type!: str, value: str}] # Matching patterns to forward to your actions.}\n@optional {enabled: bool(true/false)=true # Routing rule status., name: str # Routing rule name., priority: num=0 # Priority of the routing rule.}\n@returns(200) Update routing rule response\n\n@endpoint GET /zones/{zone_id}/email/sending/subdomains\n@desc List sending subdomains\n@required {zone_id: str}\n@returns(200) List sending subdomains response\n\n@endpoint POST /zones/{zone_id}/email/sending/subdomains\n@desc Create a sending subdomain\n@required {zone_id: str, name: str # The subdomain name. Must be within the zone.}\n@returns(200) Create a sending subdomain response\n\n@endpoint POST /zones/{zone_id}/email/sending/subdomains/preview\n@desc Preview sending subdomain DNS\n@required {zone_id: str, name: str # The subdomain name. Must be within the zone.}\n@returns(200) Preview sending subdomain DNS response\n\n@endpoint DELETE /zones/{zone_id}/email/sending/subdomains/{subdomain_id}\n@desc Delete a sending subdomain\n@required {subdomain_id: str, zone_id: str}\n@returns(200) Delete a sending subdomain response\n\n@endpoint GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}\n@desc Get a sending subdomain\n@required {subdomain_id: str, zone_id: str}\n@returns(200) Get a sending subdomain response\n\n@endpoint GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}/dns\n@desc Get sending subdomain DNS records\n@required {subdomain_id: str, zone_id: str}\n@returns(200) Get sending subdomain DNS records response\n\n@endpoint GET /zones/{zone_id}/environments\n@desc List zone environments\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully listed zone environments.\n@errors {4XX: Client error response.}\n\n@endpoint PATCH /zones/{zone_id}/environments\n@desc Partially update zone environments\n@required {environments: [map{expression!: str, http_application_id: str, locked_on_deployment!: bool, name!: str, position!: map, ref!: str, version!: int(int64)}]}\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully updated zone environments.\n@errors {4XX: Client error response.}\n\n@endpoint POST /zones/{zone_id}/environments\n@desc Create zone environments\n@required {environments: [map{expression!: str, http_application_id: str, locked_on_deployment!: bool, name!: str, position!: map, ref!: str, version!: int(int64)}]}\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully created zone environments.\n@errors {4XX: Client error response.}\n\n@endpoint PUT /zones/{zone_id}/environments\n@desc Upsert zone environments\n@required {environments: [map{expression!: str, http_application_id: str, locked_on_deployment!: bool, name!: str, position!: map, ref!: str, version!: int(int64)}]}\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully upserted zone environments.\n@errors {4XX: Client error response.}\n\n@endpoint DELETE /zones/{zone_id}/environments/{environment_id}\n@desc Delete zone environment\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully deleted zone environment.\n@errors {4XX: Client error response.}\n\n@endpoint POST /zones/{zone_id}/environments/{environment_id}/rollback\n@desc Roll back zone environment\n@returns(200) {errors: [map], messages: [map], result: map{environments: [map]}, success: bool} # Successfully rolled back zone environment.\n@errors {4XX: Client error response.}\n\n@endpoint DELETE /zones/{zone_id}/filters\n@desc Delete filters\n@required {zone_id: str, id: [str]}\n@returns(200) Delete filters response\n@errors {4XX: Delete filters response failure}\n\n@endpoint GET /zones/{zone_id}/filters\n@desc List filters\n@required {zone_id: str}\n@optional {paused: any, expression: str, description: str, ref: str, page: num=1, per_page: num=25, id: str}\n@returns(200) List filters response\n@errors {4XX: List filters response failure}\n\n@endpoint POST /zones/{zone_id}/filters\n@desc Create filters\n@required {zone_id: str}\n@returns(200) Create filters response\n@errors {4XX: Create filters response failure}\n\n@endpoint PUT /zones/{zone_id}/filters\n@desc Update filters\n@required {zone_id: str}\n@returns(200) Update filters response\n@errors {4XX: Update filters response failure}\n\n@endpoint DELETE /zones/{zone_id}/filters/{filter_id}\n@desc Delete a filter\n@required {filter_id: str, zone_id: str}\n@returns(200) Delete a filter response\n@errors {4XX: Delete a filter response failure}\n\n@endpoint GET /zones/{zone_id}/filters/{filter_id}\n@desc Get a filter\n@required {filter_id: str, zone_id: str}\n@returns(200) Get a filter response\n@errors {4XX: Get a filter response failure}\n\n@endpoint PUT /zones/{zone_id}/filters/{filter_id}\n@desc Update a filter\n@required {filter_id: str, zone_id: str}\n@optional {description: str # An informative summary of the filter., expression: str # The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/)., id: str # The unique identifier of the filter., paused: bool # When true, indicates that the filter is currently paused., ref: str # A short reference tag. Allows you to select related filters.}\n@returns(200) Update a filter response\n@errors {4XX: Update a filter response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/access_rules/rules\n@desc List IP Access rules\n@required {zone_id: str}\n@optional {mode: str, configuration.target: str(ip/ip_range/asn/country), configuration.value: str, notes: str, match: str(any/all)=all, page: num, per_page: num, order: str(configuration.target/configuration.value/mode), direction: str(asc/desc)}\n@returns(200) List IP Access rules response.\n@errors {4XX: List IP Access rules response failure.}\n\n@endpoint POST /zones/{zone_id}/firewall/access_rules/rules\n@desc Create an IP Access rule\n@required {zone_id: str, configuration: map # The rule configuration., mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request.}\n@optional {notes: any}\n@returns(200) Create an IP Access rule response.\n@errors {4XX: Create an IP Access rule response failure.}\n\n@endpoint DELETE /zones/{zone_id}/firewall/access_rules/rules/{rule_id}\n@desc Delete an IP Access rule\n@required {zone_id: str, rule_id: str}\n@optional {cascade: str(none/basic/aggressive)=none # The level to attempt to delete similar rules defined for other zones with the same owner. The default value is `none`, which will only delete the current rule. Using `basic` will delete rules that match the same action (mode) and configuration, while using `aggressive` will delete rules that match the same configuration.}\n@returns(200) Delete an IP Access rule response.\n@errors {4XX: Delete an IP Access rule response failure.}\n\n@endpoint PATCH /zones/{zone_id}/firewall/access_rules/rules/{rule_id}\n@desc Update an IP Access rule\n@required {zone_id: str, rule_id: str}\n@optional {mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request., notes: str # An informative summary of the rule, typically used as a reminder or explanation.}\n@returns(200) Update an IP Access rule response.\n@errors {4XX: Update an IP Access rule response failure.}\n\n@endpoint GET /zones/{zone_id}/firewall/lockdowns\n@desc List Zone Lockdown rules\n@required {zone_id: str}\n@optional {page: num=1, description: any, modified_on: any, ip: any, priority: any, uri_search: any, ip_range_search: any, per_page: num=20, created_on: str(date-time), description_search: str, ip_search: str}\n@returns(200) List Zone Lockdown rules response\n@errors {4XX: List Zone Lockdown rules response failure}\n\n@endpoint POST /zones/{zone_id}/firewall/lockdowns\n@desc Create a Zone Lockdown rule\n@required {zone_id: str, configurations: [any] # A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of `ip` or `ip_range` configurations., urls: [str] # The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.}\n@optional {description: str # An informative summary of the rule. This value is sanitized and any tags will be removed., paused: bool # When true, indicates that the rule is currently paused., priority: num # The priority of the rule to control the processing order. A lower number indicates higher priority. If not provided, any rules with a configured priority will be processed before rules without a priority.}\n@returns(200) Create a Zone Lockdown rule response\n@errors {4XX: Create a Zone Lockdown rule response failure}\n\n@endpoint DELETE /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n@desc Delete a Zone Lockdown rule\n@required {lock_downs_id: str, zone_id: str}\n@returns(200) {result: map{id: str}} # Delete a Zone Lockdown rule response\n@errors {4XX: Delete a Zone Lockdown rule response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n@desc Get a Zone Lockdown rule\n@required {lock_downs_id: str, zone_id: str}\n@returns(200) Get a Zone Lockdown rule response\n@errors {4XX: Get a Zone Lockdown rule response failure}\n\n@endpoint PUT /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}\n@desc Update a Zone Lockdown rule\n@required {lock_downs_id: str, zone_id: str, configurations: [any] # A list of IP addresses or CIDR ranges that will be allowed to access the URLs specified in the Zone Lockdown rule. You can include any number of `ip` or `ip_range` configurations., urls: [str] # The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.}\n@returns(200) Update a Zone Lockdown rule response\n@errors {4XX: Update a Zone Lockdown rule response failure}\n\n@endpoint DELETE /zones/{zone_id}/firewall/rules\n@desc Delete firewall rules\n@required {zone_id: str, id: str # The unique identifier of the firewall rule.}\n@returns(200) Delete firewall rules response\n@errors {4XX: Delete firewall rules response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/rules\n@desc List firewall rules\n@required {zone_id: str}\n@optional {description: str, action: str, page: num=1, per_page: num=25, id: str, paused: bool}\n@returns(200) List firewall rules response\n@errors {4XX: List firewall rules response failure}\n\n@endpoint PATCH /zones/{zone_id}/firewall/rules\n@desc Update priority of firewall rules\n@required {zone_id: str}\n@returns(200) Update priority of firewall rules response\n@errors {4XX: Update priority of firewall rules response failure}\n\n@endpoint POST /zones/{zone_id}/firewall/rules\n@desc Create firewall rules\n@required {zone_id: str, action: map # The action to perform when the threshold of matched traffic within the configured period is exceeded., filter: map{description: str, expression: str, id: str, paused: bool, ref: str}}\n@returns(200) Create firewall rules response\n@errors {4XX: Create firewall rules response failure}\n\n@endpoint PUT /zones/{zone_id}/firewall/rules\n@desc Update firewall rules\n@required {zone_id: str}\n@returns(200) Update firewall rules response\n@errors {4XX: Update firewall rules response failure}\n\n@endpoint DELETE /zones/{zone_id}/firewall/rules/{rule_id}\n@desc Delete a firewall rule\n@required {rule_id: str, zone_id: str}\n@optional {delete_filter_if_unused: bool # When true, indicates that Cloudflare should also delete the associated filter if there are no other firewall rules referencing the filter.}\n@returns(200) Delete a firewall rule response\n@errors {4XX: Delete a firewall rule response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/rules/{rule_id}\n@desc Get a firewall rule\n@required {rule_id: str, zone_id: str}\n@optional {id: any}\n@returns(200) Get a firewall rule response\n@errors {4XX: Get a firewall rule response failure}\n\n@endpoint PATCH /zones/{zone_id}/firewall/rules/{rule_id}\n@desc Update priority of a firewall rule\n@required {rule_id: str, zone_id: str, id: str # The unique identifier of the resource.}\n@returns(200) Update priority of a firewall rule response\n@errors {4XX: Update priority of a firewall rule response failure}\n\n@endpoint PUT /zones/{zone_id}/firewall/rules/{rule_id}\n@desc Update a firewall rule\n@required {rule_id: str, zone_id: str, action: map # The action to perform when the threshold of matched traffic within the configured period is exceeded., filter: map{description: str, expression: str, id: str, paused: bool, ref: str}, id: str # The unique identifier of the resource.}\n@returns(200) Update a firewall rule response\n@errors {4XX: Update a firewall rule response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/ua_rules\n@desc List User Agent Blocking rules\n@required {zone_id: str}\n@optional {page: num=1, description: any, per_page: num=20, user_agent: str, paused: bool}\n@returns(200) List User Agent Blocking rules response\n@errors {4XX: List User Agent Blocking rules response failure}\n\n@endpoint POST /zones/{zone_id}/firewall/ua_rules\n@desc Create a User Agent Blocking rule\n@required {zone_id: str, configuration: map{target: str, value: str}, mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request.}\n@optional {description: str # An informative summary of the rule. This value is sanitized and any tags will be removed., paused: bool # When true, indicates that the rule is currently paused.}\n@returns(200) Create a User Agent Blocking rule response\n@errors {4XX: Create a User Agent Blocking rule response failure}\n\n@endpoint DELETE /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n@desc Delete a User Agent Blocking rule\n@required {ua_rule_id: str, zone_id: str}\n@returns(200) Delete a User Agent Blocking rule response\n@errors {4XX: Delete a User Agent Blocking rule response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n@desc Get a User Agent Blocking rule\n@required {ua_rule_id: str, zone_id: str}\n@returns(200) Get a User Agent Blocking rule response\n@errors {4XX: Get a User Agent Blocking rule response failure}\n\n@endpoint PUT /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}\n@desc Update a User Agent Blocking rule\n@required {ua_rule_id: str, zone_id: str, configuration: map # The rule configuration., id: str # The unique identifier of the resource., mode: str(block/challenge/whitelist/js_challenge/managed_challenge) # The action to apply to a matched request.}\n@optional {description: str # An informative summary of the rule. This value is sanitized and any tags will be removed., paused: bool # When true, indicates that the rule is currently paused.}\n@returns(200) Update a User Agent Blocking rule response\n@errors {4XX: Update a User Agent Blocking rule response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/overrides\n@desc List WAF overrides\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=50}\n@returns(200) List WAF overrides response\n@errors {4XX: List WAF overrides response failure}\n\n@endpoint POST /zones/{zone_id}/firewall/waf/overrides\n@desc Create a WAF override\n@required {zone_id: str, urls: [str] # The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.}\n@returns(200) Create a WAF override response\n@errors {4XX: Create a WAF override response failure}\n\n@endpoint DELETE /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n@desc Delete a WAF override\n@required {overrides_id: str, zone_id: str}\n@returns(200) {result: map{id: str}} # Delete a WAF override response\n@errors {4XX: Delete a WAF override response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n@desc Get a WAF override\n@required {overrides_id: str, zone_id: str}\n@returns(200) Get a WAF override response\n@errors {4XX: Get a WAF override response failure}\n\n@endpoint PUT /zones/{zone_id}/firewall/waf/overrides/{overrides_id}\n@desc Update WAF override\n@required {overrides_id: str, zone_id: str, id: str # Defines an identifier., rewrite_action: map{block: any, challenge: any, default: any, disable: any, simulate: any} # Specifies that, when a WAF rule matches, its configured action will be replaced by the action configured in this object., rules: map # An object that allows you to override the action of specific WAF rules. Each key of this object must be the ID of a WAF rule, and each value must be a valid WAF action. Unless you are disabling a rule, ensure that you also enable the rule group that this WAF rule belongs to. When creating a new URI-based WAF override, you must provide a `groups` object or a `rules` object., urls: [str] # The URLs to include in the current WAF override. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns.}\n@returns(200) Update WAF override response\n@errors {4XX: Update WAF override response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages\n@desc List WAF packages\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=50, order: str, direction: str(asc/desc), match: str(any/all)=all, name: str}\n@returns(200) List WAF packages response\n@errors {4XX: List WAF packages response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages/{package_id}\n@desc Get a WAF package\n@required {package_id: str, zone_id: str}\n@returns(200) Get a WAF package response\n@errors {4XX: Get a WAF package response failure}\n\n@endpoint PATCH /zones/{zone_id}/firewall/waf/packages/{package_id}\n@desc Update a WAF package\n@required {package_id: str, zone_id: str}\n@optional {action_mode: str(simulate/block/challenge)=challenge # The default action performed by the rules in the WAF package., sensitivity: str(high/medium/low/off)=high # The sensitivity of the WAF package.}\n@returns(200) Update a WAF package response\n@errors {4XX: Update a WAF package response failure}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages/{package_id}/groups\n@desc List WAF rule groups\n@required {package_id: str, zone_id: str}\n@optional {mode: any, page: num=1, per_page: num=50, order: str(mode/rules_count), direction: str(asc/desc), match: str(any/all)=all, name: str, rules_count: num=0}\n@returns(200) Defines the list WAF rule groups response.\n@errors {4XX: Defines the list WAF rule groups response failure.}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages/{package_id}/groups/{group_id}\n@desc Get a WAF rule group\n@required {group_id: str, package_id: str, zone_id: str}\n@returns(200) Get a WAF rule group response.\n@errors {4XX: Get a WAF rule group response failure.}\n\n@endpoint PATCH /zones/{zone_id}/firewall/waf/packages/{package_id}/groups/{group_id}\n@desc Update a WAF rule group\n@required {group_id: str, package_id: str, zone_id: str}\n@optional {mode: str(on/off)=on # Defines the state of the rules contained in the rule group. When `on`, the rules in the group are configurable/usable.}\n@returns(200) Update a WAF rule group response.\n@errors {4XX: Update a WAF rule group response failure.}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages/{package_id}/rules\n@desc List WAF rules\n@required {package_id: str, zone_id: str}\n@optional {mode: str(DIS/CHL/BLK/SIM), group_id: any, page: num=1, per_page: num=50, order: str(priority/group_id/description), direction: str(asc/desc), match: str(any/all)=all, description: str, priority: str}\n@returns(200) List WAF rules response.\n@errors {4XX: List WAF rules response failure.}\n\n@endpoint GET /zones/{zone_id}/firewall/waf/packages/{package_id}/rules/{rule_id}\n@desc Get a WAF rule\n@required {rule_id: str, package_id: str, zone_id: str}\n@returns(200) Get a WAF rule response.\n@errors {4XX: Get a WAF rule response failure.}\n\n@endpoint PATCH /zones/{zone_id}/firewall/waf/packages/{package_id}/rules/{rule_id}\n@desc Update a WAF rule\n@required {rule_id: str, package_id: str, zone_id: str}\n@optional {mode: str(default/disable/simulate/block/challenge/on/off) # Defines the mode/action of the rule when triggered. You must use a value from the `allowed_modes` array of the current rule.}\n@returns(200) Update a WAF rule response.\n@errors {4XX: Update a WAF rule response failure.}\n\n@endpoint GET /zones/{zone_id}/fraud_detection/settings\n@desc Get Fraud Detection Settings\n@required {zone_id: str}\n@returns(200) Fraud Detection settings response\n@errors {4XX: Fraud Detection settings response failure}\n\n@endpoint PUT /zones/{zone_id}/fraud_detection/settings\n@desc Update Fraud Detection Settings\n@required {zone_id: str}\n@optional {user_profiles: str(enabled/disabled) # Whether Fraud User Profiles is enabled for the zone., username_expressions: [str] # List of expressions to detect usernames in write HTTP requests.  - Maximum of 10 expressions. - Omit or set to null to leave unchanged on update. - Provide an empty array `[]` to clear all expressions on update. - Invalid expressions will result in a 10400 Bad Request with details in the `messages` array.}\n@returns(200) Updated Fraud Detection settings response\n@errors {4XX: Update Fraud Detection settings failure}\n@example_request {\"username_expressions\":[]}\n\n@endpoint GET /zones/{zone_id}/healthchecks\n@desc List Health Checks\n@required {zone_id: str}\n@optional {page: num=1 # Page number of paginated results., per_page: num=25 # Maximum number of results per page. Must be a multiple of 5.}\n@returns(200) List Health Checks response\n@errors {4XX: List Health Checks response failure.}\n\n@endpoint POST /zones/{zone_id}/healthchecks\n@desc Create Health Check\n@required {zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Create Health Check response.\n@errors {4XX: Create Health Check response failure.}\n\n@endpoint POST /zones/{zone_id}/healthchecks/preview\n@desc Create Preview Health Check\n@required {zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Create Preview Health Check response.\n@errors {4XX: Create Preview Health Check response failure.}\n\n@endpoint DELETE /zones/{zone_id}/healthchecks/preview/{healthcheck_id}\n@desc Delete Preview Health Check\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Delete Preview Health Check response.\n@errors {4XX: Delete Preview Health Check response failure.}\n\n@endpoint GET /zones/{zone_id}/healthchecks/preview/{healthcheck_id}\n@desc Health Check Preview Details\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Health Check Preview Details response.\n@errors {4XX: Health Check Preview Details response failure.}\n\n@endpoint DELETE /zones/{zone_id}/healthchecks/{healthcheck_id}\n@desc Delete Health Check\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Delete Health Check response.\n@errors {4XX: Delete Health Check response failure.}\n\n@endpoint GET /zones/{zone_id}/healthchecks/{healthcheck_id}\n@desc Health Check Details\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Health Check Details response.\n@errors {4XX: Health Check Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}/healthchecks/{healthcheck_id}\n@desc Patch Health Check\n@required {healthcheck_id: str, zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Patch Health Check response.\n@errors {4XX: Patch Health Check response failure.}\n\n@endpoint PUT /zones/{zone_id}/healthchecks/{healthcheck_id}\n@desc Update Health Check\n@required {healthcheck_id: str, zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Update Health Check response.\n@errors {4XX: Update Health Check response failure.}\n\n@endpoint DELETE /zones/{zone_id}/hold\n@desc Remove Zone Hold\n@required {zone_id: str # Zone ID}\n@optional {hold_after: str # If `hold_after` is provided, the hold will be temporarily disabled, then automatically re-enabled by the system at the time specified in this RFC3339-formatted timestamp. Otherwise, the hold will be disabled indefinitely.}\n@returns(200) Successful Response\n@errors {4XX: Client Error}\n\n@endpoint GET /zones/{zone_id}/hold\n@desc Get Zone Hold\n@required {zone_id: str # Zone ID}\n@returns(200) Successful Response\n@errors {4XX: Client Error}\n\n@endpoint PATCH /zones/{zone_id}/hold\n@desc Update Zone Hold\n@required {zone_id: str # Zone ID}\n@optional {hold_after: str= # If `hold_after` is provided and future-dated, the hold will be temporarily disabled, then automatically re-enabled by the system at the time specified in this RFC3339-formatted timestamp. A past-dated `hold_after` value will have no effect on an existing, enabled hold. Providing an empty string will set its value to the current time., include_subdomains: bool=false # If `true`, the zone hold will extend to block any subdomain of the given zone, as well as SSL4SaaS Custom Hostnames. For example, a zone hold on a zone with the hostname 'example.com' and include_subdomains=true will block 'example.com', 'staging.example.com', 'api.staging.example.com', etc.}\n@returns(200) Successful Response\n@errors {4XX: Client Error}\n\n@endpoint POST /zones/{zone_id}/hold\n@desc Create Zone Hold\n@required {zone_id: str # Zone ID}\n@optional {include_subdomains: bool # If provided, the zone hold will extend to block any subdomain of the given zone, as well as SSL4SaaS Custom Hostnames. For example, a zone hold on a zone with the hostname 'example.com' and include_subdomains=true will block 'example.com', 'staging.example.com', 'api.staging.example.com', etc.}\n@returns(200) Successful Response\n@errors {4XX: Client Error}\n\n@endpoint GET /zones/{zone_id}/hostnames/settings/{setting_id}\n@desc List TLS setting for hostnames\n@required {zone_id: str, setting_id: str}\n@returns(200) List per-hostname TLS settings response\n@errors {4XX: List per-hostname TLS settings response failure}\n\n@endpoint DELETE /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}\n@desc Delete TLS setting for hostname\n@required {zone_id: str, setting_id: str, hostname: str}\n@returns(200) Delete TLS setting for hostname response\n@errors {4XX: Delete TLS setting for hostname response failure}\n\n@endpoint GET /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}\n@desc Get TLS setting for hostname\n@required {zone_id: str, setting_id: str, hostname: str}\n@returns(200) Get TLS setting for hostname response\n@errors {4XX: Get TLS setting for hostname response failure}\n\n@endpoint PUT /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}\n@desc Edit TLS setting for hostname\n@required {zone_id: str, setting_id: str, hostname: str, value: any # The TLS setting value. The type depends on the `setting_id` used in the request path: - `ciphers`: an array of allowed cipher suite strings in BoringSSL format (e.g., `[\"ECDHE-RSA-AES128-GCM-SHA256\", \"AES128-GCM-SHA256\"]`) - `min_tls_version`: a string indicating the minimum TLS version — one of `\"1.0\"`, `\"1.1\"`, `\"1.2\"`, or `\"1.3\"` (e.g., `\"1.2\"`) - `http2`: a string indicating whether HTTP/2 is enabled — `\"on\"` or `\"off\"` (e.g., `\"on\"`)}\n@returns(200) Edit TLS setting for hostname response\n@errors {4XX: Edit TLS setting for hostname response failure}\n\n@endpoint GET /zones/{zone_id}/keyless_certificates\n@desc List Keyless SSL Configurations\n@required {zone_id: str}\n@returns(200) List Keyless SSL Configurations response\n@errors {4XX: List Keyless SSL Configurations response failure}\n\n@endpoint POST /zones/{zone_id}/keyless_certificates\n@desc Create Keyless SSL Configuration\n@required {zone_id: str, certificate: str # The zone's SSL certificate or SSL certificate and intermediate(s)., host: str(hostname) # The keyless SSL name., port: num=24008 # The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.}\n@optional {bundle_method: str(ubiquitous/optimal/force)=ubiquitous # A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it., name: str # The keyless SSL name., tunnel: map{private_ip!: str, vnet_id!: str} # Configuration for using Keyless SSL through a Cloudflare Tunnel}\n@returns(200) Create Keyless SSL Configuration response\n@errors {4XX: Create Keyless SSL Configuration response failure}\n\n@endpoint DELETE /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n@desc Delete Keyless SSL Configuration\n@required {keyless_certificate_id: str, zone_id: str}\n@returns(200) Delete Keyless SSL Configuration response\n@errors {4XX: Delete Keyless SSL Configuration response failure}\n\n@endpoint GET /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n@desc Get Keyless SSL Configuration\n@required {keyless_certificate_id: str, zone_id: str}\n@returns(200) Get Keyless SSL Configuration response\n@errors {4XX: Get Keyless SSL Configuration response failure}\n\n@endpoint PATCH /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}\n@desc Edit Keyless SSL Configuration\n@required {keyless_certificate_id: str, zone_id: str}\n@optional {enabled: bool # Whether or not the Keyless SSL is on or off., host: str(hostname) # The keyless SSL name., name: str # The keyless SSL name., port: num=24008 # The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server., tunnel: map{private_ip!: str, vnet_id!: str} # Configuration for using Keyless SSL through a Cloudflare Tunnel}\n@returns(200) Edit Keyless SSL Configuration response\n@errors {4XX: Edit Keyless SSL Configuration response failure}\n\n@endpoint GET /zones/{zone_id}/leaked-credential-checks\n@desc Get Leaked Credential Checks Status\n@required {zone_id: str}\n@returns(200) Get Leaked Credential Checks status response.\n@errors {4XX: Get Leaked Credential Checks status failure response.}\n\n@endpoint POST /zones/{zone_id}/leaked-credential-checks\n@desc Set Leaked Credential Checks Status\n@required {zone_id: str}\n@optional {enabled: bool # Determines whether or not Leaked Credential Checks are enabled.}\n@returns(200) Set Leaked Credential Checks status response.\n@errors {4XX: Set Leaked Credential Checks status failure response.}\n\n@endpoint GET /zones/{zone_id}/leaked-credential-checks/detections\n@desc List Leaked Credential Checks Custom Detections\n@required {zone_id: str}\n@returns(200) List Leaked Credential Checks custom detections response.\n@errors {4XX: List Leaked Credential Checks custom detections failure response.}\n\n@endpoint POST /zones/{zone_id}/leaked-credential-checks/detections\n@desc Create Leaked Credential Checks Custom Detection\n@required {zone_id: str}\n@optional {id: any # Defines the unique ID for this custom detection., password: str # Defines ehe ruleset expression to use in matching the password in a request., username: str # Defines the ruleset expression to use in matching the username in a request.}\n@returns(200) Create Leaked Credential Checks custom detection response.\n@errors {4XX: Create Leaked Credential Checks custom detection failure response.}\n\n@endpoint DELETE /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n@desc Delete Leaked Credential Checks Custom Detection\n@required {zone_id: str, detection_id: any}\n@returns(200) {errors: [map], messages: [map], result: any, success: bool} # Delete Leaked Credential Checks custom detection response.\n@errors {4XX: Delete Leaked Credential Checks custom detection failure response.}\n\n@endpoint GET /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n@desc Get Leaked Credential Checks Custom Detection\n@required {zone_id: str, detection_id: any}\n@returns(200) Get Leaked Credential Checks custom detection response.\n@errors {4XX: Update Leaked Credential Checks custom detection failure response.}\n\n@endpoint PUT /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}\n@desc Update Leaked Credential Checks Custom Detection\n@required {zone_id: str, detection_id: any}\n@optional {id: any # Defines the unique ID for this custom detection., password: str # Defines ehe ruleset expression to use in matching the password in a request., username: str # Defines the ruleset expression to use in matching the username in a request.}\n@returns(200) Update Leaked Credential Checks custom detection response.\n@errors {4XX: Update Leaked Credential Checks custom detection failure response.}\n\n@endpoint GET /zones/{zone_id}/load_balancers\n@desc List Load Balancers\n@required {zone_id: str}\n@returns(200) List Load Balancers response.\n@errors {4XX: List Load Balancers response failure.}\n\n@endpoint POST /zones/{zone_id}/load_balancers\n@desc Create Load Balancer\n@required {zone_id: str, default_pools: [str] # A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when region_pools are not configured for a given region., fallback_pool: str # The pool ID to use when all other pools are detected as unhealthy., name: str # The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.}\n@optional {adaptive_routing: map{failover_across_pools: bool} # Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin., country_pools: map # A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region_pool mapping if it exists else to default_pools., description: str # Object description., location_strategy: map{mode: str, prefer_ecs: str} # Controls location-based steering for non-proxied requests. See `steering_policy` to learn how steering is affected., networks: [str] # List of networks where Load Balancer or Pool is enabled., pop_pools: map # Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country_pool, then region_pool mapping if it exists else to default_pools., proxied: bool=false # Whether the hostname should be gray clouded (false) or orange clouded (true)., random_steering: map{default_weight: num, pool_weights: map} # Configures pool weights. - `steering_policy=\"random\"`: A random pool is selected with probability proportional to pool weights. - `steering_policy=\"least_outstanding_requests\"`: Use pool weights to scale each pool's outstanding requests. - `steering_policy=\"least_connections\"`: Use pool weights to scale each pool's open connections., region_pools: map # A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools., rules: [map{condition: str, disabled: bool, fixed_response: map, name: str, overrides: map, priority: int, terminates: bool}] # BETA Field Not General Access: A list of rules for this load balancer to execute., session_affinity: str(none/cookie/ip_cookie/header)=none # Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\"ip_cookie\"`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of `session_affinity_ttl` seconds or the origin server is unhealthy, then a new origin server is calculated and used. See `headers` in `session_affinity_attributes` for additional required configuration., session_affinity_attributes: map{drain_duration: num, headers: [str], require_all_headers: bool, samesite: str, secure: str, zero_downtime_failover: str} # Configures attributes for session affinity., session_affinity_ttl: num # Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per `session_affinity` policy are: - `\"cookie\"` / `\"ip_cookie\"`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified., steering_policy: str(off/geo/random/dynamic_latency/proximity/least_outstanding_requests/least_connections/)= # Steering Policy for this load balancer. - `\"off\"`: Use `default_pools`. - `\"geo\"`: Use `region_pools`/`country_pools`/`pop_pools`. For non-proxied requests, the country for `country_pools` is determined by `location_strategy`. - `\"random\"`: Select a pool randomly. - `\"dynamic_latency\"`: Use round trip time to select the closest pool in default_pools (requires pool health checks). - `\"proximity\"`: Use the pools' latitude and longitude to select the closest pool using the Cloudflare PoP location for proxied requests or the location determined by `location_strategy` for non-proxied requests. - `\"least_outstanding_requests\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of outstanding requests. Pools with more pending requests are weighted proportionately less relative to others. - `\"least_connections\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of open connections. Pools with more open connections are weighted proportionately less relative to others. Supported for HTTP/1 and HTTP/2 connections. - `\"\"`: Will map to `\"geo\"` if you use `region_pools`/`country_pools`/`pop_pools` otherwise `\"off\"`., ttl: num # Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.}\n@returns(200) Create Load Balancer response.\n@errors {4XX: Create Load Balancer response failure.}\n\n@endpoint DELETE /zones/{zone_id}/load_balancers/{load_balancer_id}\n@desc Delete Load Balancer\n@required {zone_id: str, load_balancer_id: str}\n@returns(200) Delete Load Balancer response.\n@errors {4XX: Delete Load Balancer response failure.}\n\n@endpoint GET /zones/{zone_id}/load_balancers/{load_balancer_id}\n@desc Load Balancer Details\n@required {zone_id: str, load_balancer_id: str}\n@returns(200) Load Balancer Details response.\n@errors {4XX: Load Balancer Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}/load_balancers/{load_balancer_id}\n@desc Patch Load Balancer\n@required {zone_id: str, load_balancer_id: str}\n@optional {adaptive_routing: map{failover_across_pools: bool} # Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin., country_pools: map # A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region_pool mapping if it exists else to default_pools., default_pools: [str] # A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when region_pools are not configured for a given region., description: str # Object description., enabled: bool=true # Whether to enable (the default) this load balancer., fallback_pool: str # The pool ID to use when all other pools are detected as unhealthy., location_strategy: map{mode: str, prefer_ecs: str} # Controls location-based steering for non-proxied requests. See `steering_policy` to learn how steering is affected., name: str # The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used., pop_pools: map # Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country_pool, then region_pool mapping if it exists else to default_pools., proxied: bool=false # Whether the hostname should be gray clouded (false) or orange clouded (true)., random_steering: map{default_weight: num, pool_weights: map} # Configures pool weights. - `steering_policy=\"random\"`: A random pool is selected with probability proportional to pool weights. - `steering_policy=\"least_outstanding_requests\"`: Use pool weights to scale each pool's outstanding requests. - `steering_policy=\"least_connections\"`: Use pool weights to scale each pool's open connections., region_pools: map # A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools., rules: [map{condition: str, disabled: bool, fixed_response: map, name: str, overrides: map, priority: int, terminates: bool}] # BETA Field Not General Access: A list of rules for this load balancer to execute., session_affinity: str(none/cookie/ip_cookie/header)=none # Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\"ip_cookie\"`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of `session_affinity_ttl` seconds or the origin server is unhealthy, then a new origin server is calculated and used. See `headers` in `session_affinity_attributes` for additional required configuration., session_affinity_attributes: map{drain_duration: num, headers: [str], require_all_headers: bool, samesite: str, secure: str, zero_downtime_failover: str} # Configures attributes for session affinity., session_affinity_ttl: num # Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per `session_affinity` policy are: - `\"cookie\"` / `\"ip_cookie\"`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified., steering_policy: str(off/geo/random/dynamic_latency/proximity/least_outstanding_requests/least_connections/)= # Steering Policy for this load balancer. - `\"off\"`: Use `default_pools`. - `\"geo\"`: Use `region_pools`/`country_pools`/`pop_pools`. For non-proxied requests, the country for `country_pools` is determined by `location_strategy`. - `\"random\"`: Select a pool randomly. - `\"dynamic_latency\"`: Use round trip time to select the closest pool in default_pools (requires pool health checks). - `\"proximity\"`: Use the pools' latitude and longitude to select the closest pool using the Cloudflare PoP location for proxied requests or the location determined by `location_strategy` for non-proxied requests. - `\"least_outstanding_requests\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of outstanding requests. Pools with more pending requests are weighted proportionately less relative to others. - `\"least_connections\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of open connections. Pools with more open connections are weighted proportionately less relative to others. Supported for HTTP/1 and HTTP/2 connections. - `\"\"`: Will map to `\"geo\"` if you use `region_pools`/`country_pools`/`pop_pools` otherwise `\"off\"`., ttl: num # Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.}\n@returns(200) Patch Load Balancer response.\n@errors {4XX: Patch Load Balancer response failure.}\n\n@endpoint PUT /zones/{zone_id}/load_balancers/{load_balancer_id}\n@desc Update Load Balancer\n@required {zone_id: str, load_balancer_id: str, default_pools: [str] # A list of pool IDs ordered by their failover priority. Pools defined here are used by default, or when region_pools are not configured for a given region., fallback_pool: str # The pool ID to use when all other pools are detected as unhealthy., name: str # The DNS hostname to associate with your Load Balancer. If this hostname already exists as a DNS record in Cloudflare's DNS, the Load Balancer will take precedence and the DNS record will not be used.}\n@optional {adaptive_routing: map{failover_across_pools: bool} # Controls features that modify the routing of requests to pools and origins in response to dynamic conditions, such as during the interval between active health monitoring requests. For example, zero-downtime failover occurs immediately when an origin becomes unavailable due to HTTP 521, 522, or 523 response codes. If there is another healthy origin in the same pool, the request is retried once against this alternate origin., country_pools: map # A mapping of country codes to a list of pool IDs (ordered by their failover priority) for the given country. Any country not explicitly defined will fall back to using the corresponding region_pool mapping if it exists else to default_pools., description: str # Object description., enabled: bool=true # Whether to enable (the default) this load balancer., location_strategy: map{mode: str, prefer_ecs: str} # Controls location-based steering for non-proxied requests. See `steering_policy` to learn how steering is affected., networks: [str] # List of networks where Load Balancer or Pool is enabled., pop_pools: map # Enterprise only: A mapping of Cloudflare PoP identifiers to a list of pool IDs (ordered by their failover priority) for the PoP (datacenter). Any PoPs not explicitly defined will fall back to using the corresponding country_pool, then region_pool mapping if it exists else to default_pools., proxied: bool=false # Whether the hostname should be gray clouded (false) or orange clouded (true)., random_steering: map{default_weight: num, pool_weights: map} # Configures pool weights. - `steering_policy=\"random\"`: A random pool is selected with probability proportional to pool weights. - `steering_policy=\"least_outstanding_requests\"`: Use pool weights to scale each pool's outstanding requests. - `steering_policy=\"least_connections\"`: Use pool weights to scale each pool's open connections., region_pools: map # A mapping of region codes to a list of pool IDs (ordered by their failover priority) for the given region. Any regions not explicitly defined will fall back to using default_pools., rules: [map{condition: str, disabled: bool, fixed_response: map, name: str, overrides: map, priority: int, terminates: bool}] # BETA Field Not General Access: A list of rules for this load balancer to execute., session_affinity: str(none/cookie/ip_cookie/header)=none # Specifies the type of session affinity the load balancer should use unless specified as `\"none\"`. The supported types are: - `\"cookie\"`: On the first request to a proxied load balancer, a cookie is generated, encoding information of which origin the request will be forwarded to. Subsequent requests, by the same client to the same load balancer, will be sent to the origin server the cookie encodes, for the duration of the cookie and as long as the origin server remains healthy. If the cookie has expired or the origin server is unhealthy, then a new origin server is calculated and used. - `\"ip_cookie\"`: Behaves the same as `\"cookie\"` except the initial origin selection is stable and based on the client's ip address. - `\"header\"`: On the first request to a proxied load balancer, a session key based on the configured HTTP headers (see `session_affinity_attributes.headers`) is generated, encoding the request headers used for storing in the load balancer session state which origin the request will be forwarded to. Subsequent requests to the load balancer with the same headers will be sent to the same origin server, for the duration of the session and as long as the origin server remains healthy. If the session has been idle for the duration of `session_affinity_ttl` seconds or the origin server is unhealthy, then a new origin server is calculated and used. See `headers` in `session_affinity_attributes` for additional required configuration., session_affinity_attributes: map{drain_duration: num, headers: [str], require_all_headers: bool, samesite: str, secure: str, zero_downtime_failover: str} # Configures attributes for session affinity., session_affinity_ttl: num # Time, in seconds, until a client's session expires after being created. Once the expiry time has been reached, subsequent requests may get sent to a different origin server. The accepted ranges per `session_affinity` policy are: - `\"cookie\"` / `\"ip_cookie\"`: The current default of 23 hours will be used unless explicitly set. The accepted range of values is between [1800, 604800]. - `\"header\"`: The current default of 1800 seconds will be used unless explicitly set. The accepted range of values is between [30, 3600]. Note: With session affinity by header, sessions only expire after they haven't been used for the number of seconds specified., steering_policy: str(off/geo/random/dynamic_latency/proximity/least_outstanding_requests/least_connections/)= # Steering Policy for this load balancer. - `\"off\"`: Use `default_pools`. - `\"geo\"`: Use `region_pools`/`country_pools`/`pop_pools`. For non-proxied requests, the country for `country_pools` is determined by `location_strategy`. - `\"random\"`: Select a pool randomly. - `\"dynamic_latency\"`: Use round trip time to select the closest pool in default_pools (requires pool health checks). - `\"proximity\"`: Use the pools' latitude and longitude to select the closest pool using the Cloudflare PoP location for proxied requests or the location determined by `location_strategy` for non-proxied requests. - `\"least_outstanding_requests\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of outstanding requests. Pools with more pending requests are weighted proportionately less relative to others. - `\"least_connections\"`: Select a pool by taking into consideration `random_steering` weights, as well as each pool's number of open connections. Pools with more open connections are weighted proportionately less relative to others. Supported for HTTP/1 and HTTP/2 connections. - `\"\"`: Will map to `\"geo\"` if you use `region_pools`/`country_pools`/`pop_pools` otherwise `\"off\"`., ttl: num # Time to live (TTL) of the DNS entry for the IP address returned by this load balancer. This only applies to gray-clouded (unproxied) load balancers.}\n@returns(200) Update Load Balancer response.\n@errors {4XX: Update Load Balancer response failure.}\n\n@endpoint GET /zones/{zone_id}/logpush/datasets/{dataset_id}/fields\n@desc List fields\n@required {dataset_id: str, zone_id: str}\n@returns(200) List fields response.\n@errors {4XX: List fields response failure.}\n\n@endpoint GET /zones/{zone_id}/logpush/datasets/{dataset_id}/jobs\n@desc List Logpush jobs for a dataset\n@required {dataset_id: str, zone_id: str}\n@returns(200) List Logpush jobs for a dataset response.\n@errors {4XX: List Logpush jobs for a dataset response failure.}\n\n@endpoint GET /zones/{zone_id}/logpush/edge/jobs\n@desc List Instant Logs jobs\n@required {zone_id: str}\n@returns(200) List Instant Logs jobs response.\n@errors {4XX: List Instant Logs jobs response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/edge/jobs\n@desc Create Instant Logs job\n@required {zone_id: str}\n@optional {fields: str # Comma-separated list of fields., filter: str # Filters to drill down into specific events., sample: int # The sample parameter is the sample rate of the records set by the client: \"sample\": 1 is 100% of records \"sample\": 10 is 10% and so on.}\n@returns(200) Create Instant Logs job response.\n@errors {4XX: Create Instant Logs job response failure.}\n\n@endpoint GET /zones/{zone_id}/logpush/jobs\n@desc List Logpush jobs\n@required {zone_id: str}\n@returns(200) List Logpush jobs response.\n@errors {4XX: List Logpush jobs response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/jobs\n@desc Create Logpush job\n@required {zone_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@optional {dataset: str(access_requests/audit_logs/audit_logs_v2/biso_user_actions/casb_findings/device_posture_results/dex_application_tests/dex_device_state_events/dlp_forensic_copies/dns_firewall_logs/dns_logs/email_security_alerts/firewall_events/gateway_dns/gateway_http/gateway_network/http_requests/ipsec_logs/magic_ids_detections/nel_reports/network_analytics_logs/page_shield_events/sinkhole_http_logs/spectrum_events/ssh_logs/warp_config_changes/warp_toggle_changes/workers_trace_events/zaraz_events/zero_trust_network_sessions)=http_requests # Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/)., enabled: bool=false # Flag that indicates if the job is enabled., filter: str # The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/)., frequency: str(high/low)=high # This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files., kind: str(/edge)= # The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset)., logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately., max_upload_bytes: int # The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or `0` to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size., max_upload_interval_seconds: int # The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or `0` to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this., max_upload_records: int # The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or `0` to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this., name: str # Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job., output_options: map{CVE-2021-44228: bool, batch_prefix: str, batch_suffix: str, field_delimiter: str, field_names: [str], merge_subrequests: bool, output_type: str, record_delimiter: str, record_prefix: str, record_suffix: str, record_template: str, sample_rate: num(float), timestamp_format: str} # The structured replacement for `logpull_options`. When including this field, the `logpull_option` field will be ignored., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Create Logpush job response.\n@errors {4XX: Create Logpush job response failure.}\n@example_request {\"dataset\":\"http_requests\",\"destination_conf\":\"s3://mybucket/logs?region=us-west-2\",\"enabled\":false,\"filter\":\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\"kind\":\"\",\"max_upload_bytes\":5000000,\"max_upload_interval_seconds\":30,\"max_upload_records\":1000,\"name\":\"example.com\",\"output_options\":{\"CVE-2021-44228\":false,\"batch_prefix\":\"\",\"batch_suffix\":\"\",\"field_delimiter\":\",\",\"field_names\":[\"RayID\",\"ClientIP\",\"EdgeStartTimestamp\"],\"output_type\":\"ndjson\",\"record_delimiter\":\"\",\"record_prefix\":\"{\",\"record_suffix\":\"}\\n\",\"sample_rate\":1,\"timestamp_format\":\"unixnano\"},\"ownership_challenge\":\"00000000000000000000\"}\n\n@endpoint DELETE /zones/{zone_id}/logpush/jobs/{job_id}\n@desc Delete Logpush job\n@required {job_id: int, zone_id: str}\n@returns(200) Delete Logpush job response.\n@errors {4XX: Delete Logpush job response failure.}\n\n@endpoint GET /zones/{zone_id}/logpush/jobs/{job_id}\n@desc Get Logpush job details\n@required {job_id: int, zone_id: str}\n@returns(200) Get Logpush job details response.\n@errors {4XX: Get Logpush job details response failure.}\n\n@endpoint PUT /zones/{zone_id}/logpush/jobs/{job_id}\n@desc Update Logpush job\n@required {job_id: int, zone_id: str}\n@optional {destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included., enabled: bool=false # Flag that indicates if the job is enabled., filter: str # The filters to select the events to include and/or remove from your logs. For more information, refer to [Filters](https://developers.cloudflare.com/logs/reference/filters/)., frequency: str(high/low)=high # This field is deprecated. Please use `max_upload_*` parameters instead. . The frequency at which Cloudflare sends batches of logs to your destination. Setting frequency to high sends your logs in larger quantities of smaller files. Setting frequency to low sends logs in smaller quantities of larger files., kind: str(/edge)= # The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset)., logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately., max_upload_bytes: int # The maximum uncompressed file size of a batch of logs. This setting value must be between `5 MB` and `1 GB`, or `0` to disable it. Note that you cannot set a minimum file size; this means that log files may be much smaller than this batch size., max_upload_interval_seconds: int # The maximum interval in seconds for log batches. This setting must be between 30 and 300 seconds (5 minutes), or `0` to disable it. Note that you cannot specify a minimum interval for log batches; this means that log files may be sent in shorter intervals than this., max_upload_records: int # The maximum number of log lines per batch. This setting must be between 1000 and 1,000,000 lines, or `0` to disable it. Note that you cannot specify a minimum number of log lines per batch; this means that log files may contain many fewer lines than this., name: str # Optional human readable job name. Not unique. Cloudflare suggests. that you set this to a meaningful string, like the domain name, to make it easier to identify your job., output_options: map{CVE-2021-44228: bool, batch_prefix: str, batch_suffix: str, field_delimiter: str, field_names: [str], merge_subrequests: bool, output_type: str, record_delimiter: str, record_prefix: str, record_suffix: str, record_template: str, sample_rate: num(float), timestamp_format: str} # The structured replacement for `logpull_options`. When including this field, the `logpull_option` field will be ignored., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Update Logpush job response.\n@errors {4XX: Update Logpush job response failure.}\n@example_request {\"destination_conf\":\"s3://mybucket/logs?region=us-west-2\",\"enabled\":false,\"filter\":\"{\\\"where\\\":{\\\"and\\\":[{\\\"key\\\":\\\"ClientRequestPath\\\",\\\"operator\\\":\\\"contains\\\",\\\"value\\\":\\\"/static\\\"},{\\\"key\\\":\\\"ClientRequestHost\\\",\\\"operator\\\":\\\"eq\\\",\\\"value\\\":\\\"example.com\\\"}]}}\",\"kind\":\"\",\"max_upload_bytes\":5000000,\"max_upload_interval_seconds\":30,\"max_upload_records\":1000,\"output_options\":{\"CVE-2021-44228\":false,\"batch_prefix\":\"\",\"batch_suffix\":\"\",\"field_delimiter\":\",\",\"field_names\":[\"RayID\",\"ClientIP\",\"EdgeStartTimestamp\"],\"output_type\":\"ndjson\",\"record_delimiter\":\"\",\"record_prefix\":\"{\",\"record_suffix\":\"}\\n\",\"sample_rate\":1,\"timestamp_format\":\"unixnano\"},\"ownership_challenge\":\"00000000000000000000\"}\n\n@endpoint POST /zones/{zone_id}/logpush/ownership\n@desc Get ownership challenge\n@required {zone_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Get ownership challenge response.\n@errors {4XX: Get ownership challenge response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/ownership/validate\n@desc Validate ownership challenge\n@required {zone_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included., ownership_challenge: str # Ownership challenge token to prove destination ownership.}\n@returns(200) Validate ownership challenge response.\n@errors {4XX: Validate ownership challenge response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/validate/destination\n@desc Validate destination\n@required {zone_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Validate destination response.\n@errors {4XX: Validate destination response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/validate/destination/exists\n@desc Check destination exists\n@required {zone_id: str, destination_conf: str(uri) # Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.}\n@returns(200) Check destination exists response.\n@errors {4XX: Check destination exists response failure.}\n\n@endpoint POST /zones/{zone_id}/logpush/validate/origin\n@desc Validate origin\n@required {zone_id: str, logpull_options: str(uri-reference) # This field is deprecated. Use `output_options` instead. Configuration string. It specifies things like requested fields and timestamp formats. If migrating from the logpull api, copy the url (full url or just the query string) of your call here, and logpush will keep on making this call for you, setting start and end times appropriately.}\n@returns(200) Validate origin response.\n@errors {4XX: Validate origin response failure.}\n\n@endpoint GET /zones/{zone_id}/logs/control/retention/flag\n@desc Get log retention flag\n@required {zone_id: str}\n@returns(200) Get log retention flag response\n@errors {4XX: Get log retention flag response failure}\n\n@endpoint POST /zones/{zone_id}/logs/control/retention/flag\n@desc Update log retention flag\n@required {zone_id: str}\n@optional {flag: bool # The log retention flag for Logpull API.}\n@returns(200) Update log retention flag response\n@errors {4XX: Update log retention flag response failure}\n\n@endpoint GET /zones/{zone_id}/logs/rayids/{ray_id}\n@desc Get logs RayIDs\n@required {zone_id: str, ray_id: str}\n@optional {fields: str, timestamps: str}\n@returns(200) Get logs RayIDs response\n@errors {4XX: Get logs RayIDs response failure}\n\n@endpoint GET /zones/{zone_id}/logs/received\n@desc Get logs received\n@required {zone_id: str, end: any}\n@optional {start: any, fields: str, sample: num, count: int, timestamps: str}\n@returns(200) Get logs received response\n@errors {4XX: Get logs received response failure}\n\n@endpoint GET /zones/{zone_id}/logs/received/fields\n@desc List fields\n@required {zone_id: str}\n@returns(200) {key: str} # List fields response\n@errors {4XX: List fields response failure}\n\n@endpoint DELETE /zones/{zone_id}/managed_headers\n@desc Delete Managed Transforms\n@required {zone_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/managed_headers\n@desc List Managed Transforms\n@required {zone_id: str}\n@returns(200) A Managed Transforms response.\n@errors {4XX: A failure response.}\n\n@endpoint PATCH /zones/{zone_id}/managed_headers\n@desc Update Managed Transforms\n@required {zone_id: str, managed_request_headers: [any] # The list of Managed Request Transforms., managed_response_headers: [any] # The list of Managed Response Transforms.}\n@returns(200) A Managed Transforms response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth\n@desc List Certificates\n@required {zone_id: str}\n@returns(200) List Certificates response\n@errors {4XX: List Certificates response failure}\n\n@endpoint POST /zones/{zone_id}/origin_tls_client_auth\n@desc Upload Certificate\n@required {zone_id: str, certificate: str # The zone's leaf certificate., private_key: str # The zone's private key.}\n@returns(200) Upload Certificate response\n@errors {4XX: Upload Certificate response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/hostnames\n@desc List Hostname Associations\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=50, status: str(active/pending_deployment/pending_deletion/deleted/deployment_timed_out/deletion_timed_out/all)}\n@returns(200) List Hostname Associations response\n@errors {4XX: List Hostname Associations response failure}\n\n@endpoint PUT /zones/{zone_id}/origin_tls_client_auth/hostnames\n@desc Enable or Disable a Hostname for Client Authentication\n@required {zone_id: str, config: [map{cert_id: str, enabled: bool, hostname: str}]}\n@returns(200) Enable or Disable a Hostname for Client Authentication response\n@errors {4XX: Enable or Disable a Hostname for Client Authentication response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates\n@desc List Certificates\n@required {zone_id: str}\n@returns(200) List Certificates response\n@errors {4XX: List Certificates response failure}\n\n@endpoint POST /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates\n@desc Upload a Hostname Client Certificate\n@required {zone_id: str, certificate: str # The hostname certificate., private_key: str # The hostname certificate's private key.}\n@returns(200) Upload a Hostname Client Certificate response\n@errors {4XX: Upload a Hostname Client Certificate response failure}\n\n@endpoint DELETE /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id}\n@desc Delete Hostname Client Certificate\n@required {certificate_id: str, zone_id: str}\n@returns(200) Delete Hostname Client Certificate response\n@errors {4XX: Delete Hostname Client Certificate response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id}\n@desc Get the Hostname Client Certificate\n@required {certificate_id: str, zone_id: str}\n@returns(200) Get the Hostname Client Certificate response\n@errors {4XX: Get the Hostname Client Certificate response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/hostnames/{hostname}\n@desc Get the Hostname Status for Client Authentication\n@required {hostname: str, zone_id: str}\n@returns(200) Get the Hostname Status for Client Authentication response\n@errors {4XX: Get the Hostname Status for Client Authentication response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/settings\n@desc Get Enablement Setting for Zone\n@required {zone_id: str}\n@returns(200) Get Enablement Setting for Zone response\n@errors {4XX: Get Enablement Setting for Zone response failure}\n\n@endpoint PUT /zones/{zone_id}/origin_tls_client_auth/settings\n@desc Set Enablement for Zone\n@required {zone_id: str, enabled: bool # Indicates whether zone-level authenticated origin pulls is enabled.}\n@returns(200) Set Enablement for Zone response\n@errors {4XX: Set Enablement for Zone response failure}\n\n@endpoint DELETE /zones/{zone_id}/origin_tls_client_auth/{certificate_id}\n@desc Delete Certificate\n@required {certificate_id: str, zone_id: str}\n@returns(200) Delete Certificate response\n@errors {4XX: Delete Certificate response failure}\n\n@endpoint GET /zones/{zone_id}/origin_tls_client_auth/{certificate_id}\n@desc Get Certificate Details\n@required {certificate_id: str, zone_id: str}\n@returns(200) Get Certificate Details response\n@errors {4XX: Get Certificate Details response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield\n@desc Get Page Shield settings\n@required {zone_id: str}\n@returns(200) Get Page Shield settings response\n@errors {4XX: Get Page Shield settings response failure}\n\n@endpoint PUT /zones/{zone_id}/page_shield\n@desc Update Page Shield settings\n@required {zone_id: str}\n@optional {enabled: bool # When true, indicates that Page Shield is enabled., use_cloudflare_reporting_endpoint: bool # When true, CSP reports will be sent to https://csp-reporting.cloudflare.com/cdn-cgi/script_monitor/report, use_connection_url_path: bool # When true, the paths associated with connections URLs will also be analyzed.}\n@returns(200) Update Page Shield settings response\n@errors {4XX: Update Page Shield settings response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/connections\n@desc List Page Shield connections\n@required {zone_id: str}\n@optional {exclude_urls: str, urls: str, hosts: str, page: str, per_page: num, order_by: str(first_seen_at/last_seen_at), direction: str(asc/desc), prioritize_malicious: bool, exclude_cdn_cgi: bool, status: str, page_url: str, export: str}\n@returns(200) List Page Shield connections response\n@errors {4XX: List Page Shield connections response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/connections/{connection_id}\n@desc Get a Page Shield connection\n@required {zone_id: str, connection_id: str}\n@returns(200) Get a Page Shield connection response\n@errors {4XX: Get a Page Shield connection response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/cookies\n@desc List Page Shield Cookies\n@required {zone_id: str}\n@optional {hosts: str, page: str, per_page: num, order_by: str(first_seen_at/last_seen_at), direction: str(asc/desc), page_url: str, export: str, name: str, secure: bool, http_only: bool, same_site: str(lax/strict/none), type: str(first_party/unknown), path: str, domain: str}\n@returns(200) List Page Shield cookies response\n@errors {4XX: List Page Shield cookies response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/cookies/{cookie_id}\n@desc Get a Page Shield cookie\n@required {zone_id: str, cookie_id: str}\n@returns(200) Get a Page Shield cookie response\n@errors {4XX: Get a Page Shield cookie response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/policies\n@desc List Page Shield policies\n@required {zone_id: str}\n@returns(200) List Page Shield policies response\n@errors {4XX: List Page Shield policies response failure}\n\n@endpoint POST /zones/{zone_id}/page_shield/policies\n@desc Create a Page Shield policy\n@required {zone_id: str, action: str(allow/log/add_reporting_directives) # The action to take if the expression matches, description: str # A description for the policy, enabled: bool # Whether the policy is enabled, expression: str # The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax, value: str # The policy which will be applied}\n@returns(200) Create a Page Shield policy response\n@errors {4XX: Create a Page Shield policy response failure}\n\n@endpoint DELETE /zones/{zone_id}/page_shield/policies/{policy_id}\n@desc Delete a Page Shield policy\n@required {zone_id: str, policy_id: str}\n@returns(204) Delete a Page Shield policy response\n@errors {4XX: Delete a Page Shield policy response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/policies/{policy_id}\n@desc Get a Page Shield policy\n@required {zone_id: str, policy_id: str}\n@returns(200) Get a Page Shield policy response\n@errors {4XX: Get a Page Shield policy response failure}\n\n@endpoint PUT /zones/{zone_id}/page_shield/policies/{policy_id}\n@desc Update a Page Shield policy\n@required {zone_id: str, policy_id: str}\n@optional {action: str(allow/log/add_reporting_directives) # The action to take if the expression matches, description: str # A description for the policy, enabled: bool # Whether the policy is enabled, expression: str # The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax, value: str # The policy which will be applied}\n@returns(200) Update a Page Shield policy response\n@errors {4XX: Update a Page Shield policy response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/scripts\n@desc List Page Shield scripts\n@required {zone_id: str}\n@optional {exclude_urls: str, urls: str, hosts: str, page: str, per_page: num, order_by: str(first_seen_at/last_seen_at), direction: str(asc/desc), prioritize_malicious: bool, exclude_cdn_cgi: bool=true, exclude_duplicates: bool=true, status: str, page_url: str, export: str}\n@returns(200) List Page Shield scripts response\n@errors {4XX: List Page Shield scripts response failure}\n\n@endpoint GET /zones/{zone_id}/page_shield/scripts/{script_id}\n@desc Get a Page Shield script\n@required {zone_id: str, script_id: str}\n@returns(200) Get a Page Shield script response\n@errors {4XX: Get a Page Shield script response failure}\n\n@endpoint GET /zones/{zone_id}/pagerules\n@desc List Page Rules\n@required {zone_id: str}\n@optional {order: str(status/priority)=priority, direction: str(asc/desc)=desc, match: str(any/all)=all, status: str(active/disabled)=disabled}\n@returns(200) List Page Rules response\n@errors {4XX: List Page Rules response failure}\n\n@endpoint POST /zones/{zone_id}/pagerules\n@desc Create a Page Rule\n@required {zone_id: str, actions: [any] # The set of actions to perform if the targets of this rule match the request. Actions can redirect to another URL or override settings, but not both., targets: [any] # The rule targets to evaluate on each request.}\n@optional {priority: int=1 # The priority of the rule, used to define which Page Rule is processed over another. A higher number indicates a higher priority. For example, if you have a catch-all Page Rule (rule A: `/images/*`) but want a more specific Page Rule to take precedence (rule B: `/images/special/*`), specify a higher priority for rule B so it overrides rule A., status: str(active/disabled)=disabled # The status of the Page Rule.}\n@returns(200) Create a Page Rule response\n@errors {4XX: Create a Page Rule response failure}\n\n@endpoint GET /zones/{zone_id}/pagerules/settings\n@desc List available Page Rules settings\n@required {zone_id: str}\n@returns(200) List available Page Rules settings response\n@errors {4XX: List available Page Rules settings response failure}\n\n@endpoint DELETE /zones/{zone_id}/pagerules/{pagerule_id}\n@desc Delete a Page Rule\n@required {pagerule_id: str, zone_id: str}\n@returns(200) Delete a Page Rule response\n@errors {4XX: Delete a Page Rule response failure}\n\n@endpoint GET /zones/{zone_id}/pagerules/{pagerule_id}\n@desc Get a Page Rule\n@required {pagerule_id: str, zone_id: str}\n@returns(200) Get a Page Rule response\n@errors {4XX: Get a Page Rule response failure}\n\n@endpoint PATCH /zones/{zone_id}/pagerules/{pagerule_id}\n@desc Edit a Page Rule\n@required {pagerule_id: str, zone_id: str}\n@optional {actions: [any] # The set of actions to perform if the targets of this rule match the request. Actions can redirect to another URL or override settings, but not both., priority: int=1 # The priority of the rule, used to define which Page Rule is processed over another. A higher number indicates a higher priority. For example, if you have a catch-all Page Rule (rule A: `/images/*`) but want a more specific Page Rule to take precedence (rule B: `/images/special/*`), specify a higher priority for rule B so it overrides rule A., status: str(active/disabled)=disabled # The status of the Page Rule., targets: [any] # The rule targets to evaluate on each request.}\n@returns(200) Edit a Page Rule response\n@errors {4XX: Edit a Page Rule response failure}\n\n@endpoint PUT /zones/{zone_id}/pagerules/{pagerule_id}\n@desc Update a Page Rule\n@required {pagerule_id: str, zone_id: str, actions: [any] # The set of actions to perform if the targets of this rule match the request. Actions can redirect to another URL or override settings, but not both., targets: [any] # The rule targets to evaluate on each request.}\n@optional {priority: int=1 # The priority of the rule, used to define which Page Rule is processed over another. A higher number indicates a higher priority. For example, if you have a catch-all Page Rule (rule A: `/images/*`) but want a more specific Page Rule to take precedence (rule B: `/images/special/*`), specify a higher priority for rule B so it overrides rule A., status: str(active/disabled)=disabled # The status of the Page Rule.}\n@returns(200) Update a Page Rule response\n@errors {4XX: Update a Page Rule response failure}\n\n@endpoint GET /zones/{zone_id}/pay-per-crawl/configuration\n@desc Get the pay-per-crawl config\n@required {zone_id: str # zone id}\n@returns(200) {errors: [map], messages: [map], result: map{bot_overrides: map, enabled: bool, price_usd_microcents: int}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint PATCH /zones/{zone_id}/pay-per-crawl/configuration\n@desc Changes pay-per-crawl config for a zone\n@required {zone_id: str # zone id}\n@optional {bot_overrides: map, enabled: bool, price_usd_microcents: int}\n@returns(200) {errors: [map], messages: [map], result: map{bot_overrides: map, enabled: bool, price_usd_microcents: int}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint POST /zones/{zone_id}/pay-per-crawl/configuration\n@desc Creates pay-per-crawl config for a zone\n@required {zone_id: str # zone id}\n@optional {bot_overrides: map, enabled: bool, price_usd_microcents: int}\n@returns(200) {errors: [map], messages: [map], result: map{bot_overrides: map, enabled: bool, price_usd_microcents: int}, result_info: map{count: int, page: int, per_page: int, total_count: int, total_pages: int}, success: bool} # OK\n@errors {400: Bad Request}\n\n@endpoint POST /zones/{zone_id}/purge_cache\n@desc Purge Cached Content\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: map?{id: str}, success: bool} # Request to purge cached content successfull.\n@errors {4XX: Request to purge cached content failed.}\n@example_request {\"hosts\":[\"www.example.com\",\"images.example.com\"]}\n\n@endpoint GET /zones/{zone_id}/rate_limits\n@desc List rate limits\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20}\n@returns(200) List rate limits response.\n@errors {4XX: List rate limits response failure.}\n\n@endpoint POST /zones/{zone_id}/rate_limits\n@desc Create a rate limit\n@required {zone_id: str, action: map # The action to perform when the threshold of matched traffic within the configured period is exceeded., match: map # Determines which traffic the rate limit counts towards the threshold., period: num # The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action., threshold: num # The threshold that will trigger the configured mitigation action. Configure this value along with the `period` property to establish a threshold per period.}\n@returns(200) Create a rate limit response.\n@errors {4XX: Create a rate limit response failure.}\n\n@endpoint DELETE /zones/{zone_id}/rate_limits/{rate_limit_id}\n@desc Delete a rate limit\n@required {rate_limit_id: str, zone_id: str}\n@returns(200) Delete a rate limit response.\n@errors {4XX: Delete a rate limit response failure.}\n\n@endpoint GET /zones/{zone_id}/rate_limits/{rate_limit_id}\n@desc Get a rate limit\n@required {rate_limit_id: str, zone_id: str}\n@returns(200) Get a rate limit response.\n@errors {4XX: Get a rate limit response failure.}\n\n@endpoint PUT /zones/{zone_id}/rate_limits/{rate_limit_id}\n@desc Update a rate limit\n@required {rate_limit_id: str, zone_id: str, action: map # The action to perform when the threshold of matched traffic within the configured period is exceeded., match: map # Determines which traffic the rate limit counts towards the threshold., period: num # The time in seconds (an integer value) to count matching traffic. If the count exceeds the configured threshold within this period, Cloudflare will perform the configured action., threshold: num # The threshold that will trigger the configured mitigation action. Configure this value along with the `period` property to establish a threshold per period.}\n@returns(200) Update a rate limit response.\n@errors {4XX: Update a rate limit response failure.}\n\n@endpoint GET /zones/{zone_id}/rulesets\n@desc List zone rulesets\n@required {zone_id: str}\n@optional {cursor: str, per_page: int}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint POST /zones/{zone_id}/rulesets\n@desc Create a zone ruleset\n@required {zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint\n@desc Get a zone entry point ruleset\n@required {ruleset_phase: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PUT /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint\n@desc Update a zone entry point ruleset\n@required {ruleset_phase: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions\n@desc List a zone entry point ruleset's versions\n@required {ruleset_phase: str, zone_id: str}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}\n@desc Get a zone entry point ruleset version\n@required {ruleset_version: str, ruleset_phase: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /zones/{zone_id}/rulesets/{ruleset_id}\n@desc Delete a zone ruleset\n@required {ruleset_id: str, zone_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/{ruleset_id}\n@desc Get a zone ruleset\n@required {ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PUT /zones/{zone_id}/rulesets/{ruleset_id}\n@desc Update a zone ruleset\n@required {ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint POST /zones/{zone_id}/rulesets/{ruleset_id}/rules\n@desc Create a zone ruleset rule\n@required {ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /zones/{zone_id}/rulesets/{ruleset_id}/rules/{rule_id}\n@desc Delete a zone ruleset rule\n@required {rule_id: str, ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint PATCH /zones/{zone_id}/rulesets/{ruleset_id}/rules/{rule_id}\n@desc Update a zone ruleset rule\n@required {rule_id: str, ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/{ruleset_id}/versions\n@desc List a zone ruleset's versions\n@required {ruleset_id: str, zone_id: str}\n@returns(200) A rulesets response.\n@errors {4XX: A failure response.}\n\n@endpoint DELETE /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}\n@desc Delete a zone ruleset version\n@required {ruleset_version: str, ruleset_id: str, zone_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}\n@desc Get a zone ruleset version\n@required {ruleset_version: str, ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}\n@desc List a zone ruleset version's rules by tag\n@required {rule_tag: str, ruleset_version: str, ruleset_id: str, zone_id: str}\n@returns(200) A ruleset response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/schema_validation/schemas\n@desc List all uploaded schemas\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., omit_source: bool=false # Omit the source-files of schemas and only retrieve their meta-data., validation_enabled: bool # Filter for enabled schemas}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/schema_validation/schemas\n@desc Upload a schema\n@required {kind: str # The kind of the schema, name: str # A human-readable name for the schema, source: str # The raw schema, e.g., the OpenAPI schema, either as JSON or YAML, validation_enabled: bool # An indicator if this schema is enabled}\n@returns(200) Successfully uploaded the schema\n@errors {4XX: Failed uploaded the schema}\n\n@endpoint GET /zones/{zone_id}/schema_validation/schemas/hosts\n@desc List hosts covered by uploaded schemas\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page.}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint DELETE /zones/{zone_id}/schema_validation/schemas/{schema_id}\n@desc Delete a schema\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/schema_validation/schemas/{schema_id}\n@desc Get details of a schema\n@optional {omit_source: bool=false # Omit the source-files of schemas and only retrieve their meta-data.}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/schema_validation/schemas/{schema_id}\n@desc Edit details of a schema to enable validation\n@optional {validation_enabled: bool # Flag whether schema is enabled for validation.}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/schema_validation/schemas/{schema_id}/operations\n@desc Retrieve all operations from the schema.\n@optional {feature: [str] # Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning., host: [str], method: [str], endpoint: str, page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page., operation_status: str(new/existing) # Filter results by whether operations exist in Web Asset Management or not. `new` will just return operations from the schema that do not exist otherwise. `existing` will just return operations from the schema that already exist.}\n@returns(200) All operations in the schema\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/schema_validation/settings\n@desc Get global schema validation settings\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/schema_validation/settings\n@desc Edit global schema validation settings\n@optional {validation_default_mitigation_action: str(none/log/block) # The default mitigation action used Mitigation actions are as follows:    - `\"log\"` - log request when request does not conform to schema   - `\"block\"` - deny access to the site when request does not conform to schema   - `\"none\"` - skip running schema validation, validation_override_mitigation_action: str # When set, this overrides both zone level and operation level mitigation actions.    - `\"none\"` - skip running schema validation entirely for the request   - `null` - clears any existing override}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint PUT /zones/{zone_id}/schema_validation/settings\n@desc Update global schema validation settings\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/schema_validation/settings/operations\n@desc List per-operation schema validation settings\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page.}\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/schema_validation/settings/operations\n@desc Bulk edit per-operation schema validation settings\n@returns(200) Update multiple operation-level schema validation settings response\n@errors {4XX: Failure}\n\n@endpoint DELETE /zones/{zone_id}/schema_validation/settings/operations/{operation_id}\n@desc Delete per-operation schema validation setting\n@returns(200) Successfully deleted\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/schema_validation/settings/operations/{operation_id}\n@desc Get per-operation schema validation setting\n@returns(200) Success\n@errors {4XX: Failure}\n\n@endpoint PUT /zones/{zone_id}/schema_validation/settings/operations/{operation_id}\n@desc Update per-operation schema validation setting\n@returns(200) Successfully updated\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/force_axfr\n@desc Force AXFR\n@required {zone_id: str}\n@returns(200) Force AXFR response.\n@errors {4XX: Force AXFR response failure.}\n\n@endpoint DELETE /zones/{zone_id}/secondary_dns/incoming\n@desc Delete Secondary Zone Configuration\n@required {zone_id: str}\n@returns(200) Delete Secondary Zone Configuration response.\n@errors {4XX: Delete Secondary Zone Configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/secondary_dns/incoming\n@desc Secondary Zone Configuration Details\n@required {zone_id: str}\n@returns(200) Secondary Zone Configuration Details response.\n@errors {4XX: Secondary Zone Configuration Details response failure.}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/incoming\n@desc Create Secondary Zone Configuration\n@required {zone_id: str, auto_refresh_seconds: num=86400 # How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones., id: str, name: str # Zone name., peers: [str] # A list of peer tags.}\n@returns(200) Create Secondary Zone Configuration response.\n@errors {4XX: Create Secondary Zone Configuration response failure.}\n\n@endpoint PUT /zones/{zone_id}/secondary_dns/incoming\n@desc Update Secondary Zone Configuration\n@required {zone_id: str, auto_refresh_seconds: num=86400 # How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones., id: str, name: str # Zone name., peers: [str] # A list of peer tags.}\n@returns(200) Update Secondary Zone Configuration response.\n@errors {4XX: Update Secondary Zone Configuration response failure.}\n\n@endpoint DELETE /zones/{zone_id}/secondary_dns/outgoing\n@desc Delete Primary Zone Configuration\n@required {zone_id: str}\n@returns(200) Delete Primary Zone Configuration response.\n@errors {4XX: Delete Primary Zone Configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/secondary_dns/outgoing\n@desc Primary Zone Configuration Details\n@required {zone_id: str}\n@returns(200) Primary Zone Configuration Details response.\n@errors {4XX: Primary Zone Configuration Details response failure.}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/outgoing\n@desc Create Primary Zone Configuration\n@required {zone_id: str, id: str, name: str # Zone name., peers: [str] # A list of peer tags.}\n@returns(200) Create Primary Zone Configuration response.\n@errors {4XX: Create Primary Zone Configuration response failure.}\n\n@endpoint PUT /zones/{zone_id}/secondary_dns/outgoing\n@desc Update Primary Zone Configuration\n@required {zone_id: str, id: str, name: str # Zone name., peers: [str] # A list of peer tags.}\n@returns(200) Update Primary Zone Configuration response.\n@errors {4XX: Update Primary Zone Configuration response failure.}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/outgoing/disable\n@desc Disable Outgoing Zone Transfers\n@required {zone_id: str}\n@returns(200) Disable Outgoing Zone Transfers response.\n@errors {4XX: Disable Outgoing Zone Transfers response failure.}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/outgoing/enable\n@desc Enable Outgoing Zone Transfers\n@required {zone_id: str}\n@returns(200) Enable Outgoing Zone Transfers response.\n@errors {4XX: Enable Outgoing Zone Transfers response failure.}\n\n@endpoint POST /zones/{zone_id}/secondary_dns/outgoing/force_notify\n@desc Force DNS NOTIFY\n@required {zone_id: str}\n@returns(200) Force DNS NOTIFY response.\n@errors {4XX: Force DNS NOTIFY response failure.}\n\n@endpoint GET /zones/{zone_id}/secondary_dns/outgoing/status\n@desc Get Outgoing Zone Transfer Status\n@required {zone_id: str}\n@returns(200) Get Outgoing Zone Transfer Status response.\n@errors {4XX: Get Outgoing Zone Transfer Status response failure.}\n\n@endpoint GET /zones/{zone_id}/security-center/insights\n@desc Retrieves Zone Security Center Insights\n@required {zone_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str], page: any=1, per_page: any=25}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /zones/{zone_id}/security-center/insights/class\n@desc Retrieves Zone Security Center Insight Counts by Class\n@required {zone_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /zones/{zone_id}/security-center/insights/severity\n@desc Retrieves Zone Security Center Insight Counts by Severity\n@required {zone_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /zones/{zone_id}/security-center/insights/type\n@desc Retrieves Zone Security Center Insight Counts by Type\n@required {zone_id: str}\n@optional {dismissed: bool, issue_class: [str], issue_type: [str], product: [str], severity: [str], subject: [str], issue_class~neq: [str], issue_type~neq: [str], product~neq: [str], severity~neq: [str], subject~neq: [str]}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint PUT /zones/{zone_id}/security-center/insights/{issue_id}/dismiss\n@desc Archives Zone Security Center Insight\n@required {zone_id: str, issue_id: str}\n@optional {dismiss: bool=true}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint DELETE /zones/{zone_id}/security-center/securitytxt\n@desc Deletes security.txt\n@required {zone_id: str}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /zones/{zone_id}/security-center/securitytxt\n@desc Retrieves security.txt\n@required {zone_id: str}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint PUT /zones/{zone_id}/security-center/securitytxt\n@desc Updates security.txt\n@required {zone_id: str}\n@optional {acknowledgments: [str(uri)], canonical: [str(uri)], contact: [str(uri)], enabled: bool, encryption: [str(uri)], expires: str(date-time), hiring: [str(uri)], policy: [str(uri)], preferred_languages: str}\n@returns(200) The request was successful.\n@errors {4XX: A client error occurred.}\n\n@endpoint GET /zones/{zone_id}/settings\n@desc Get all zone settings\n@required {zone_id: str}\n@returns(200) Get all Zone settings response\n@errors {4XX: Get all Zone settings response failure}\n\n@endpoint PATCH /zones/{zone_id}/settings\n@desc Edit multiple zone settings\n@required {zone_id: str}\n@returns(200) Edit zone settings info response\n@errors {4XX: Edit zone settings info response failure}\n\n@endpoint GET /zones/{zone_id}/settings/aegis\n@desc Get aegis setting\n@required {zone_id: str}\n@returns(200) Get aegis setting response.\n@errors {4XX: Get aegis setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/aegis\n@desc Change aegis setting\n@required {zone_id: str, value: map{enabled: bool, pool_id: str} # Value of the zone setting.}\n@returns(200) Change aegis setting response.\n@errors {4XX: Change aegis setting response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/fonts\n@desc Get Cloudflare Fonts setting\n@required {zone_id: str}\n@returns(200) Get Cloudflare Fonts setting response.\n@errors {4XX: Get Cloudflare Fonts setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/fonts\n@desc Change Cloudflare Fonts setting\n@required {zone_id: str, value: str(on/off)=off # Whether the feature is enabled or disabled.}\n@returns(200) Change Cloudflare Fonts setting response.\n@errors {4XX: Change Cloudflare Fonts setting response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/google-tag-gateway/config\n@desc Get Google Tag Gateway configuration\n@required {zone_id: str}\n@returns(200) Get Google Tag Gateway configuration response.\n@errors {4XX: Get Google Tag Gateway configuration response failure.}\n\n@endpoint PUT /zones/{zone_id}/settings/google-tag-gateway/config\n@desc Update Google Tag Gateway configuration\n@required {zone_id: str, enabled: bool # Enables or disables Google Tag Gateway for this zone., endpoint: str # Specifies the endpoint path for proxying Google Tag Manager requests. Use an absolute path starting with '/', with no nested paths and alphanumeric characters only (e.g. /metrics)., hideOriginalIp: bool # Hides the original client IP address from Google when enabled., measurementId: str # Specify the Google Tag Manager container or measurement ID (e.g. GTM-XXXXXXX or G-XXXXXXXXXX).}\n@optional {setUpTag: bool # Set up the associated Google Tag on the zone automatically when enabled.}\n@returns(200) Update Google Tag Gateway configuration response.\n@errors {4XX: Update Google Tag Gateway configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/origin_h2_max_streams\n@desc Get Origin H2 Max Streams Setting\n@required {zone_id: str}\n@returns(200) Get Origin H2 Max Streams setting response.\n@errors {4XX: Get Origin H2 Max Streams setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/origin_h2_max_streams\n@desc Change Origin H2 Max Streams Setting\n@required {zone_id: str, value: int # Value of the Origin H2 Max Streams Setting.}\n@returns(200) Change Origin H2 Max Streams setting response.\n@errors {4XX: Change Origin H2 Max Streams response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/origin_max_http_version\n@desc Get Origin Max HTTP Version Setting\n@required {zone_id: str}\n@returns(200) Get Origin Max HTTP Version setting response.\n@errors {4XX: Get Origin Max HTTP Version setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/origin_max_http_version\n@desc Change Origin Max HTTP Version Setting\n@required {zone_id: str, value: str(2/1) # Value of the Origin Max HTTP Version Setting.}\n@returns(200) Change Origin Max HTTP Version setting response.\n@errors {4XX: Change Origin Max HTTP Version response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/rum\n@desc Get RUM status for a zone\n@required {zone_id: str}\n@returns(200) Rum Status.\n@errors {4XX: Failure response.}\n\n@endpoint PATCH /zones/{zone_id}/settings/rum\n@desc Toggle RUM on/off for a zone\n@required {zone_id: str}\n@optional {value: str # Value can either be On or Off.}\n@returns(200) Rum toggled on/off for an existing zone.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/settings/speed_brain\n@desc Get Cloudflare Speed Brain setting\n@required {zone_id: str}\n@returns(200) Get Cloudflare Speed Brain setting response.\n@errors {4XX: Get Cloudflare Speed Brain setting response failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/speed_brain\n@desc Change Cloudflare Speed Brain setting\n@required {zone_id: str, value: str(on/off) # Whether the feature is enabled or disabled.}\n@returns(200) Cloudflare Speed Brain setting response.\n@errors {4XX: Change Cloudflare Speed Brain setting response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/ssl_automatic_mode\n@desc Get Automatic SSL/TLS enrollment status for the given zone\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{editable: bool, id: str, modified_on: str(date-time), next_scheduled_scan: str(date-time)?, value: str}, success: bool} # Get Automatic SSL/TLS Enrollment status response.\n@errors {4XX: Get Automatic SSL/TLS Enrollment status failure.}\n\n@endpoint PATCH /zones/{zone_id}/settings/ssl_automatic_mode\n@desc Patch Automatic SSL/TLS Enrollment status for given zone\n@required {zone_id: str, value: str(auto/custom) # Controls enablement of Automatic SSL/TLS.}\n@returns(200) {errors: [map], messages: [map], result: map{editable: bool, id: str, modified_on: str(date-time), next_scheduled_scan: str(date-time)?, value: str}, success: bool} # Patch Automatic SSL/TLS Enrollment status response.\n@errors {4XX: Patch Automatic SSL/TLS Enrollment status failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/config\n@desc Get Zaraz configuration\n@required {zone_id: str}\n@returns(200) Get Zaraz configuration response.\n@errors {4XX: Get Zaraz configuration response failure.}\n\n@endpoint PUT /zones/{zone_id}/settings/zaraz/config\n@desc Update Zaraz configuration\n@required {zone_id: str}\n@returns(200) Update Zaraz configuration response.\n@errors {4XX: Update Zaraz configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/default\n@desc Get default Zaraz configuration\n@required {zone_id: str}\n@returns(200) Get Zaraz default configuration response.\n@errors {4XX: Get Zaraz default configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/export\n@desc Export Zaraz configuration\n@required {zone_id: str}\n@returns(200) Get Zaraz configuration response.\n@errors {4XX: Get Zaraz configuration response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/history\n@desc List Zaraz historical configuration records\n@required {zone_id: str}\n@optional {offset: int # Ordinal number to start listing the results with. Default value is 0., limit: int # Maximum amount of results to list. Default value is 10., sortField: str(id/user_id/description/created_at/updated_at) # The field to sort by. Default is updated_at., sortOrder: str(DESC/ASC) # Sorting order. Default is DESC.}\n@returns(200) List Zaraz historical configuration records response.\n@errors {4XX: List Zaraz historical configuration records failure.}\n\n@endpoint PUT /zones/{zone_id}/settings/zaraz/history\n@desc Restore Zaraz historical configuration by ID\n@required {zone_id: str}\n@returns(200) Restore Zaraz historical configuration by ID response.\n@errors {4XX: Restore Zaraz historical configuration by ID failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/history/configs\n@desc Get Zaraz historical configurations by ID(s)\n@required {zone_id: str, ids: [int] # Comma separated list of Zaraz configuration IDs.}\n@returns(200) Get Zaraz historical configurations by ID(s) response.\n@errors {4XX: Get Zaraz historical configurations by ID(s) failure.}\n\n@endpoint POST /zones/{zone_id}/settings/zaraz/publish\n@desc Publish Zaraz preview configuration\n@required {zone_id: str}\n@returns(200) Update Zaraz workflow response.\n@errors {4XX: Update Zaraz workflow response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/zaraz/workflow\n@desc Get Zaraz workflow\n@required {zone_id: str}\n@returns(200) Get Zaraz workflow response.\n@errors {4XX: Get Zaraz workflow response failure.}\n\n@endpoint PUT /zones/{zone_id}/settings/zaraz/workflow\n@desc Update Zaraz workflow\n@required {zone_id: str}\n@returns(200) Update Zaraz workflow response.\n@errors {4XX: Update Zaraz workflow response failure.}\n\n@endpoint GET /zones/{zone_id}/settings/{setting_id}\n@desc Get zone setting\n@required {zone_id: str, setting_id: str}\n@returns(200) Get zone setting response\n@errors {4XX: Get zone setting response failure}\n\n@endpoint PATCH /zones/{zone_id}/settings/{setting_id}\n@desc Edit zone setting\n@required {zone_id: str, setting_id: str}\n@returns(200) Edit zone setting response\n@errors {4XX: Edit zone settings info response failure}\n\n@endpoint GET /zones/{zone_id}/smart_shield\n@desc Get Smart Shield Settings\n@required {zone_id: str}\n@returns(200) Smart Shield Settings response.\n@errors {500: Get Smart Shield Settings response failure., 502: Get Smart Shield Settings response failure., 4XX: Patch Smart Shield Settings response failure.}\n\n@endpoint PATCH /zones/{zone_id}/smart_shield\n@desc Patch Smart Shield Settings\n@required {zone_id: str}\n@optional {cache_reserve: map{value: str}, regional_tiered_cache: map{value: str}, smart_routing: map{value: str}, smart_tiered_cache: map{value: str}}\n@returns(200) Smart Shield Settings response.\n@errors {500: Get Smart Shield Settings response failure., 502: Smart Shield Settings response failure., 4XX: Patch Smart Shield Settings response failure.}\n\n@endpoint GET /zones/{zone_id}/smart_shield/cache_reserve_clear\n@desc Get Cache Reserve Clear\n@required {zone_id: str}\n@returns(200) Get Cache Reserve Clear response.\n@errors {4XX: Get Cache Reserve Clear failure response.}\n\n@endpoint POST /zones/{zone_id}/smart_shield/cache_reserve_clear\n@desc Start Cache Reserve Clear\n@required {zone_id: str}\n@returns(200) Start Cache Reserve Clear response.\n@errors {4XX: Start Cache Reserve Clear failure response.}\n@example_request \"{}\"\n\n@endpoint GET /zones/{zone_id}/smart_shield/healthchecks\n@desc List Health Checks\n@required {zone_id: str}\n@optional {page: num=1 # Page number of paginated results., per_page: num=25 # Maximum number of results per page. Must be a multiple of 5.}\n@returns(200) List Health Checks response\n@errors {4XX: List Health Checks response failure.}\n\n@endpoint POST /zones/{zone_id}/smart_shield/healthchecks\n@desc Create Health Check\n@required {zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Create Health Check response.\n@errors {4XX: Create Health Check response failure.}\n\n@endpoint DELETE /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}\n@desc Delete Health Check\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Delete Health Check response.\n@errors {4XX: Delete Health Check response failure.}\n\n@endpoint GET /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}\n@desc Health Check Details\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Health Check Details response.\n@errors {4XX: Health Check Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}\n@desc Patch Health Check\n@required {healthcheck_id: str, zone_id: str, address: str # The hostname or IP address of the origin server to run health checks on., name: str # A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {check_regions: [str] # A list of regions from which to run health checks. Null means Cloudflare will pick a default region., consecutive_fails: int=1 # The number of consecutive fails required from a health check before changing the health to unhealthy., consecutive_successes: int=1 # The number of consecutive successes required from a health check before changing the health to healthy., description: str # A human-readable description of the health check., http_config: map{allow_insecure: bool, expected_body: str, expected_codes: [str], follow_redirects: bool, header: map, method: str, path: str, port: int} # Parameters specific to an HTTP or HTTPS health check., interval: int=60 # The interval between each health check. Shorter intervals may give quicker notifications if the origin status changes, but will increase load on the origin as we check from multiple locations., retries: int=2 # The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately., suspended: bool=false # If suspended, no health checks are sent to the origin., tcp_config: map{method: str, port: int} # Parameters specific to TCP health check., timeout: int=5 # The timeout (in seconds) before marking the health check as failed., type: str=HTTP # The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.}\n@returns(200) Patch Health Check response.\n@errors {4XX: Patch Health Check response failure.}\n\n@endpoint PUT /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}\n@desc Update Health Check\n@required {healthcheck_id: str, zone_id: str}\n@returns(200) Update Health Check response.\n@errors {4XX: Update Health Check response failure.}\n\n@endpoint GET /zones/{zone_id}/snippets\n@desc List zone snippets\n@required {zone_id: str}\n@optional {page: int, per_page: int}\n@returns(200) A snippets response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint DELETE /zones/{zone_id}/snippets/snippet_rules\n@desc Delete zone snippet rules\n@required {zone_id: str}\n@returns(200) A snippet rules response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint GET /zones/{zone_id}/snippets/snippet_rules\n@desc List zone snippet rules\n@required {zone_id: str}\n@returns(200) A snippet rules response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint PUT /zones/{zone_id}/snippets/snippet_rules\n@desc Update zone snippet rules\n@required {zone_id: str, rules: [map{description: str, enabled: bool, expression!: str, id!: str, last_updated!: str(date-time), snippet_name!: str}] # Lists snippet rules.}\n@returns(200) A snippet rules response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint DELETE /zones/{zone_id}/snippets/{snippet_name}\n@desc Delete a zone snippet\n@required {zone_id: str, snippet_name: str}\n@returns(200) Return a null response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint GET /zones/{zone_id}/snippets/{snippet_name}\n@desc Get a zone snippet\n@required {zone_id: str, snippet_name: str}\n@returns(200) Return a snippet response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint PUT /zones/{zone_id}/snippets/{snippet_name}\n@desc Update a zone snippet\n@required {zone_id: str, snippet_name: str}\n@returns(200) Return a snippet response.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint GET /zones/{zone_id}/snippets/{snippet_name}/content\n@desc Get a zone snippet content\n@required {zone_id: str, snippet_name: str}\n@returns(200) Return snippet content.\n@errors {4XX: Return a failure response., 5XX: Return a failure response.}\n\n@endpoint GET /zones/{zone_id}/spectrum/analytics/aggregate/current\n@desc Get current aggregated analytics\n@required {zone_id: str}\n@optional {appID: str, colo_name: str}\n@returns(200) Get current aggregated analytics response\n@errors {4xx: Get current aggregated analytics response failure}\n\n@endpoint GET /zones/{zone_id}/spectrum/analytics/events/bytime\n@desc Get analytics by time\n@required {zone_id: str, time_delta: str(year/quarter/month/week/day/hour/dekaminute/minute)}\n@optional {dimensions: [str], sort: [str], until: any, metrics: [str], filters: str, since: any}\n@returns(200) Get analytics by time response\n@errors {4xx: Get analytics by time response failure}\n\n@endpoint GET /zones/{zone_id}/spectrum/analytics/events/summary\n@desc Get analytics summary\n@required {zone_id: str}\n@optional {dimensions: [str], sort: [str], until: any, metrics: [str], filters: str, since: any}\n@returns(200) Get analytics summary response\n@errors {4xx: Get analytics summary response failure}\n\n@endpoint GET /zones/{zone_id}/spectrum/apps\n@desc List Spectrum applications\n@required {zone_id: any}\n@optional {page: num, per_page: num=20, direction: str(asc/desc)=asc, order: str(protocol/app_id/created_on/modified_on/dns)=dns}\n@returns(200) List Spectrum applications response.\n@errors {4XX: List Spectrum applications response failure.}\n\n@endpoint POST /zones/{zone_id}/spectrum/apps\n@desc Create Spectrum application using a name for the origin\n@required {zone_id: any}\n@returns(200) Create Spectrum application using a name for the origin response.\n@errors {4XX: Create Spectrum application using a name for the origin response failure.}\n\n@endpoint DELETE /zones/{zone_id}/spectrum/apps/{app_id}\n@desc Delete Spectrum application\n@required {app_id: any, zone_id: any}\n@returns(200) Delete Spectrum application response.\n@errors {4XX: Delete Spectrum application response failure.}\n\n@endpoint GET /zones/{zone_id}/spectrum/apps/{app_id}\n@desc Get Spectrum application configuration\n@required {app_id: any, zone_id: any}\n@returns(200) Get Spectrum application configuration response.\n@errors {4XX: Get Spectrum application configuration response failure.}\n\n@endpoint PUT /zones/{zone_id}/spectrum/apps/{app_id}\n@desc Update Spectrum application configuration using a name for the origin\n@required {app_id: any, zone_id: any}\n@returns(200) Update Spectrum application configuration using a name for the origin response.\n@errors {4XX: Update Spectrum application configuration using a name for the origin response failure.}\n\n@endpoint GET /zones/{zone_id}/speed_api/availabilities\n@desc Get quota and availability\n@required {zone_id: str}\n@returns(200) Page test availability.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/speed_api/pages\n@desc List tested webpages\n@required {zone_id: str}\n@returns(200) List of pages.\n@errors {4XX: Failure response.}\n\n@endpoint DELETE /zones/{zone_id}/speed_api/pages/{url}/tests\n@desc Delete all page tests\n@required {zone_id: str, url: str}\n@optional {region: any}\n@returns(200) Number of deleted tests.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/speed_api/pages/{url}/tests\n@desc List page test history\n@required {zone_id: str, url: str}\n@optional {page: int=1, per_page: int=20, region: any}\n@returns(200) List of test history for a page.\n@errors {4XX: Failure response.}\n\n@endpoint POST /zones/{zone_id}/speed_api/pages/{url}/tests\n@desc Start page test\n@required {zone_id: str, url: str}\n@optional {region: any}\n@returns(200) Page test details.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/speed_api/pages/{url}/tests/{test_id}\n@desc Get a page test result\n@required {zone_id: str, url: str, test_id: str}\n@returns(200) Page test result.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/speed_api/pages/{url}/trend\n@desc List core web vital metrics trend\n@required {zone_id: str, url: str, region: str, deviceType: str, start: str(date-time), tz: str # The timezone of the start and end timestamps., metrics: str # A comma-separated list of metrics to include in the results.}\n@optional {end: str(date-time)}\n@returns(200) Page trend.\n@errors {4XX: Failure response.}\n\n@endpoint DELETE /zones/{zone_id}/speed_api/schedule/{url}\n@desc Delete scheduled page test\n@required {zone_id: str, url: str}\n@optional {region: any}\n@returns(200) Number of deleted tests.\n@errors {4XX: Failure response.}\n\n@endpoint GET /zones/{zone_id}/speed_api/schedule/{url}\n@desc Get a page test schedule\n@required {zone_id: str, url: str}\n@optional {region: any}\n@returns(200) Page test schedule.\n@errors {4XX: Failure response.}\n\n@endpoint POST /zones/{zone_id}/speed_api/schedule/{url}\n@desc Create scheduled page test\n@required {zone_id: str, url: str}\n@optional {region: any, frequency: str # The frequency of the scheduled test. Defaults to WEEKLY for free plans, DAILY for paid plans.}\n@returns(200) Page test schedule.\n@errors {4XX: Failure response.}\n\n@endpoint POST /zones/{zone_id}/ssl/analyze\n@desc Analyze Certificate\n@required {zone_id: str}\n@optional {bundle_method: str(ubiquitous/optimal/force)=ubiquitous # A ubiquitous bundle has the highest probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle uses the shortest chain and newest intermediates. And the force bundle verifies the chain, but does not otherwise modify it., certificate: str # The zone's SSL certificate or certificate and the intermediate(s).}\n@returns(200) Analyze Certificate response\n@errors {4XX: Analyze Certificate response failure}\n\n@endpoint GET /zones/{zone_id}/ssl/certificate_packs\n@desc List Certificate Packs\n@required {zone_id: str}\n@optional {page: num=1, per_page: num=20, status: any, deploy: any(staging/production)}\n@returns(200) List Certificate Packs response\n@errors {4XX: List Certificate Packs response failure}\n\n@endpoint POST /zones/{zone_id}/ssl/certificate_packs/order\n@desc Order Advanced Certificate Manager Certificate Pack\n@required {zone_id: str, certificate_authority: str(google/lets_encrypt/ssl_com) # Certificate Authority selected for the order.  For information on any certificate authority specific details or restrictions [see this page for more details.](https://developers.cloudflare.com/ssl/reference/certificate-authorities), hosts: [str] # Comma separated list of valid host names for the certificate packs. Must contain the zone apex, may not contain more than 50 hosts, and may not be empty., type: str # Type of certificate pack., validation_method: str(txt/http/email) # Validation Method selected for the order., validity_days: int(14/30/90/365) # Validity Days selected for the order.}\n@optional {cloudflare_branding: bool # Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.}\n@returns(200) Order Advanced Certificate Manager Certificate Pack response\n@errors {4XX: Order Advanced Certificate Manager Certificate Pack response failure}\n\n@endpoint GET /zones/{zone_id}/ssl/certificate_packs/quota\n@desc Get Certificate Pack Quotas\n@required {zone_id: str}\n@returns(200) Get Certificate Pack Quotas response\n@errors {4XX: Get Certificate Pack Quotas response failure}\n\n@endpoint DELETE /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n@desc Delete Advanced Certificate Manager Certificate Pack\n@required {certificate_pack_id: str, zone_id: str}\n@returns(200) Delete Advanced Certificate Manager Certificate Pack response\n@errors {4XX: Delete Advanced Certificate Manager Certificate Pack response failure}\n\n@endpoint GET /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n@desc Get Certificate Pack\n@required {certificate_pack_id: str, zone_id: str}\n@returns(200) Get Certificate Pack response\n@errors {4XX: Get Certificate Pack response failure}\n\n@endpoint PATCH /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}\n@desc Restart Validation or Update Advanced Certificate Manager Certificate Pack\n@required {certificate_pack_id: str, zone_id: str}\n@optional {cloudflare_branding: bool # Whether or not to add Cloudflare Branding for the order.  This will add a subdomain of sni.cloudflaressl.com as the Common Name if set to true.}\n@returns(200) Restart Validation for Advanced Certificate Manager Certificate Pack response\n@errors {4XX: Restart Validation for Advanced Certificate Manager Certificate Pack response failure}\n\n@endpoint GET /zones/{zone_id}/ssl/recommendation\n@desc SSL/TLS Recommendation\n@required {zone_id: str}\n@returns(200) {errors: [map], messages: [map], result: map{editable: bool, id: str, modified_on: str(date-time), next_scheduled_scan: str(date-time)?, value: str}, success: bool} # SSL/TLS Recommendation response.\n@errors {4XX: SSL/TLS Recommendation response failure.}\n\n@endpoint GET /zones/{zone_id}/ssl/universal/settings\n@desc Universal SSL Settings Details\n@required {zone_id: str}\n@returns(200) Universal SSL Settings Details response\n@errors {4XX: Universal SSL Settings Details response failure}\n\n@endpoint PATCH /zones/{zone_id}/ssl/universal/settings\n@desc Edit Universal SSL Settings\n@required {zone_id: str}\n@optional {enabled: bool # Disabling Universal SSL removes any currently active Universal SSL certificates for your zone from the edge and prevents any future Universal SSL certificates from being ordered. If there are no advanced certificates or custom certificates uploaded for the domain, visitors will be unable to access the domain over HTTPS.  By disabling Universal SSL, you understand that the following Cloudflare settings and preferences will result in visitors being unable to visit your domain unless you have uploaded a custom certificate or purchased an advanced certificate.  * HSTS * Always Use HTTPS * Opportunistic Encryption * Onion Routing * Any Page Rules redirecting traffic to HTTPS  Similarly, any HTTP redirect to HTTPS at the origin while the Cloudflare proxy is enabled will result in users being unable to visit your site without a valid certificate at Cloudflare's edge.  If you do not have a valid custom or advanced certificate at Cloudflare's edge and are unsure if any of the above Cloudflare settings are enabled, or if any HTTP redirects exist at your origin, we advise leaving Universal SSL enabled for your domain.}\n@returns(200) Edit Universal SSL Settings response\n@errors {4XX: Edit Universal SSL Settings response failure}\n\n@endpoint GET /zones/{zone_id}/ssl/verification\n@desc SSL Verification Details\n@required {zone_id: str}\n@optional {retry: any}\n@returns(200) SSL Verification Details response\n@errors {4XX: SSL Verification Details response failure}\n\n@endpoint PATCH /zones/{zone_id}/ssl/verification/{certificate_pack_id}\n@desc Edit SSL Certificate Pack Validation Method\n@required {certificate_pack_id: str, zone_id: str, validation_method: str(http/cname/txt/email) # Desired validation method.}\n@returns(200) Edit SSL Certificate Pack Validation Method response\n@errors {4XX: Edit SSL Certificate Pack Validation Method response failure}\n\n@endpoint GET /zones/{zone_id}/subscription\n@desc Zone Subscription Details\n@required {zone_id: str}\n@returns(200) Zone Subscription Details response\n@errors {4XX: Zone Subscription Details response failure}\n\n@endpoint POST /zones/{zone_id}/subscription\n@desc Create Zone Subscription\n@required {zone_id: str}\n@optional {app: any, component_values: [map{default: num, name: str, price: num, value: num}] # The list of add-ons subscribed to., currency: str # The monetary unit in which pricing information is displayed., current_period_end: str(date-time) # The end of the current period and also when the next billing is due., current_period_start: str(date-time) # When the current billing period started. May match initial_period_start if this is the first period., frequency: str(weekly/monthly/quarterly/yearly) # How often the subscription is renewed automatically., id: str # Subscription identifier tag., price: num # The price of the subscription that will be billed, in US dollars., rate_plan: map{currency: str, externally_managed: bool, id: str, is_contract: bool, public_name: str, scope: str, sets: [str]} # The rate plan applied to the subscription., state: str(Trial/Provisioned/Paid/AwaitingPayment/Cancelled/Failed/Expired) # The state that the subscription is in., zone: map{id: str, name: str} # A simple zone object. May have null properties if not a zone subscription.}\n@returns(200) Create Zone Subscription response\n@errors {4XX: Create Zone Subscription response failure}\n\n@endpoint PUT /zones/{zone_id}/subscription\n@desc Update Zone Subscription\n@required {zone_id: str}\n@optional {app: any, component_values: [map{default: num, name: str, price: num, value: num}] # The list of add-ons subscribed to., currency: str # The monetary unit in which pricing information is displayed., current_period_end: str(date-time) # The end of the current period and also when the next billing is due., current_period_start: str(date-time) # When the current billing period started. May match initial_period_start if this is the first period., frequency: str(weekly/monthly/quarterly/yearly) # How often the subscription is renewed automatically., id: str # Subscription identifier tag., price: num # The price of the subscription that will be billed, in US dollars., rate_plan: map{currency: str, externally_managed: bool, id: str, is_contract: bool, public_name: str, scope: str, sets: [str]} # The rate plan applied to the subscription., state: str(Trial/Provisioned/Paid/AwaitingPayment/Cancelled/Failed/Expired) # The state that the subscription is in., zone: map{id: str, name: str} # A simple zone object. May have null properties if not a zone subscription.}\n@returns(200) Update Zone Subscription response\n@errors {4XX: Update Zone Subscription response failure}\n\n@endpoint DELETE /zones/{zone_id}/tags\n@desc Delete tags from a zone-level resource\n@required {zone_id: any}\n@optional {If-Match: str # ETag value for optimistic concurrency control. When provided, the server will verify the current resource ETag matches before applying the write. Returns 412 Precondition Failed if the resource has been modified since the ETag was obtained. Omit this header for unconditional writes.}\n@returns(204) Tags successfully deleted (no content).\n@errors {412: Precondition failed. The resource has been modified since the provided ETag was obtained., 4XX: Delete tags response failure., 5XX: Delete tags response failure.}\n\n@endpoint GET /zones/{zone_id}/tags\n@desc Get tags for a zone-level resource\n@required {zone_id: any, resource_id: str # The ID of the resource to retrieve tags for., resource_type: str # The type of the resource.}\n@optional {access_application_id: str(uuid) # Access application ID identifier. Required for access_application_policy resources.}\n@returns(200) Get tags for single resource response.\n@errors {4XX: Get tags for single resource response failure., 5XX: Get tags for single resource response failure.}\n\n@endpoint PUT /zones/{zone_id}/tags\n@desc Set tags for a zone-level resource\n@required {zone_id: any}\n@optional {If-Match: str # ETag value for optimistic concurrency control. When provided, the server will verify the current resource ETag matches before applying the write. Returns 412 Precondition Failed if the resource has been modified since the ETag was obtained. Omit this header for unconditional writes.}\n@returns(200) Set tags response.\n@errors {412: Precondition failed. The resource has been modified since the provided ETag was obtained., 4XX: Set tags response failure., 5XX: Set tags response failure.}\n\n@endpoint GET /zones/{zone_id}/token_validation/config\n@desc List token validation configurations\n@optional {page: int=1 # Page number of paginated results., per_page: int=20 # Maximum number of results per page.}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/token_validation/config\n@desc Create a new Token Validation configuration\n@required {credentials: map{keys!: [map]}, description: str, title: str, token_sources: [any], token_type: str}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint DELETE /zones/{zone_id}/token_validation/config/{config_id}\n@desc Delete Token Configuration\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/token_validation/config/{config_id}\n@desc Get a single Token Configuration\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/token_validation/config/{config_id}\n@desc Edit an existing Token Configuration\n@optional {description: str, title: str, token_sources: [any]}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint PUT /zones/{zone_id}/token_validation/config/{config_id}/credentials\n@desc Update Token Configuration credentials\n@required {keys: [map]}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/token_validation/rules\n@desc List token validation rules\n@optional {per_page: int=20 # Maximum number of results per page., page: int=1 # Page number of paginated results., token_configuration: [any] # Select rules using any of these token configurations., action: str, enabled: bool, id: any # Select rules with these IDs., rule_id: any # Select rules with these IDs., host: str(hostname) # Select rules with this host in `include`., hostname: str(hostname) # Select rules with this host in `include`.}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/token_validation/rules\n@desc Create a token validation rule\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/token_validation/rules/bulk\n@desc Bulk edit token validation rules\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/token_validation/rules/bulk\n@desc Bulk create token validation rules\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint POST /zones/{zone_id}/token_validation/rules/preview\n@desc Preview operations covered by a Token Validation rule\n@optional {per_page: int=20 # Maximum number of results per page., page: int=1 # Page number of paginated results., state: [str], host: [str(hostname)] # Filter operations by host., hostname: [str(hostname)] # Filter operations by host., method: [str] # Filter operations by method., endpoint: [str(uri-template)] # Filter operations by endpoint. Allows substring matching., exclude: [map{operation_ids: [any]}] # Ignore operations that were otherwise included by `include`., include: [map{host: [str(hostname)]}] # Select all matching operations.}\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint DELETE /zones/{zone_id}/token_validation/rules/{rule_id}\n@desc Delete a zone token validation rule\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint GET /zones/{zone_id}/token_validation/rules/{rule_id}\n@desc Get a zone token validation rule\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint PATCH /zones/{zone_id}/token_validation/rules/{rule_id}\n@desc Edit a zone token validation rule\n@returns(200) OK\n@errors {4XX: Failure}\n\n@endpoint DELETE /zones/{zone_id}/url_normalization\n@desc Delete URL Normalization settings\n@required {zone_id: str}\n@returns(204) An empty response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/url_normalization\n@desc Get URL Normalization settings\n@required {zone_id: str}\n@returns(200) A URL Normalization response.\n@errors {4XX: A failure response.}\n\n@endpoint PUT /zones/{zone_id}/url_normalization\n@desc Update URL Normalization settings\n@required {zone_id: str, scope: str(incoming/both/none) # The scope of the URL normalization., type: str(cloudflare/rfc3986) # The type of URL normalization performed by Cloudflare.}\n@returns(200) A URL Normalization response.\n@errors {4XX: A failure response.}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms\n@desc List waiting rooms for zone\n@required {zone_id: str}\n@optional {page: num=1 # Page number of paginated results., per_page: num=25 # Maximum number of results per page. Must be a multiple of 5.}\n@returns(200) List waiting rooms for zone response\n@errors {4XX: List waiting rooms for zone response failure}\n\n@endpoint POST /zones/{zone_id}/waiting_rooms\n@desc Create waiting room\n@required {zone_id: str, host: str # The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique., name: str # A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed., new_users_per_minute: int # Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world., total_active_users: int # Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.}\n@optional {additional_routes: [map{host: str, path: str}] # Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms., cookie_attributes: map{samesite: str, secure: str} # Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position., cookie_suffix: str # Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(__cf_waitingroom). If `cookie_suffix` is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using `additional_routes`., custom_page_html: str= # Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom_page_html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge: 1. {{`waitTimeKnown`}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue_all is **true**. 2. {{`waitTimeFormatted`}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use: 3. {{`waitTime`}} Number of minutes of estimated wait for a user. 4. {{`waitTimeHours`}} Number of hours of estimated wait for a user (`Math.floor(waitTime/60)`). 5. {{`waitTimeHourMinutes`}} Number of minutes above the `waitTimeHours` value (`waitTime%60`). 6. {{`queueIsFull`}} Changes to **true** when no more people can be added to the queue.  To view the full list of variables, look at the `cfWaitingRoom` object described under the `json_response_enabled` property in other Waiting Room API calls., default_template_language: str(en-US/es-ES/de-DE/fr-FR/it-IT/ja-JP/ko-KR/pt-BR/zh-CN/zh-TW/nl-NL/pl-PL/id-ID/tr-TR/ar-EG/ru-RU/fa-IR/bg-BG/hr-HR/cs-CZ/da-DK/fi-FI/lt-LT/ms-MY/nb-NO/ro-RO/el-GR/he-IL/hi-IN/hu-HU/sr-BA/sk-SK/sl-SI/sv-SE/tl-PH/th-TH/uk-UA/vi-VN)=en-US # The language of the default page template. If no default_template_language is provided, then `en-US` (English) will be used., description: str= # A note that you can use to add more details about the waiting room., disable_session_renewal: bool=false # Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If `true`, an accepted user will have session_duration minutes to browse the site. After that, they will have to go through the waiting room again. If `false`, a user's session cookie will be automatically renewed on every request., enabled_origin_commands: [str]= # A list of enabled origin commands., json_response_enabled: bool=false # Only available for the Waiting Room Advanced subscription. If `true`, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields: 1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**). 2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available. 3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`. 4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile). 5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it. 6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile). 7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**. 8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment. 9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website. 10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change. 11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is `reject`, there is no specified refresh time —\\_it will always be **zero**. 12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**. 13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue. 14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly. 15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin. 16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue. 17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties `prequeue_start_time`, `event_start_time`, and `event_end_time` in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists. 18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts. 19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts. 20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**. 21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends. 22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**. 23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts. 24. `turnstile`: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the `custom_html` template to ensure the Turnstile widget appears. 25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.  An example cURL to a waiting room could be:  \tcurl -X GET \"https://example.com/waitingroom\" \\ \t\t-H \"Accept: application/json\"  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 0, \t\t\t\"waitTime50Percentile\": 0, \t\t\t\"waitTime75Percentile\": 0, \t\t\t\"waitTimeFormatted\": \"10 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"fifo\", \t\t\t\"isFIFOQueue\": true, \t\t\t\"isRandomQueue\": false, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": false, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 0, \t\t\t\"timeUntilEventEndFormatted\": \"unavailable\", \t\t\t\"shuffleAtEventStart\": false \t\t} \t}  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 5, \t\t\t\"waitTime50Percentile\": 10, \t\t\t\"waitTime75Percentile\": 15, \t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"random\", \t\t\t\"isFIFOQueue\": false, \t\t\t\"isRandomQueue\": true, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": true, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 15, \t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\", \t\t\t\"shuffleAtEventStart\": true \t\t} \t}, path: str=/ # Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported., queue_all: bool=false # If queue_all is `true`, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable., queueing_method: str(fifo/random/passthrough/reject)=fifo # Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if `queue_all` is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are: 1. `fifo` **(default)**: First-In-First-Out queue where customers gain access in the order they arrived. 2. `random`: Random queue where customers gain access randomly, regardless of arrival time. 3. `passthrough`: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with `suspended`) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa. 4. `reject`: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses `reject`, and its events override this with `fifo`, `random`, or `passthrough`. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**., queueing_status_code: int(200/202/429)=200 # HTTP status code returned to a user while in the queue., session_duration: int=5 # Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route., suspended: bool=false # Suspends or allows traffic going to the waiting room. If set to `true`, the traffic will not go to the waiting room., turnstile_action: str(log/infinite_queue)=log # Which action to take when a bot is detected using Turnstile. `log` will have no impact on queueing behavior, simply keeping track of how many bots are detected in Waiting Room Analytics. `infinite_queue` will send bots to a false queueing state, where they will never reach your origin. `infinite_queue` requires Advanced Waiting Room., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed)=invisible # Which Turnstile widget type to use for detecting bot traffic. See [the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types) for the definitions of these widget types. Set to `off` to disable the Turnstile integration entirely. Setting this to anything other than `off` or `invisible` requires Advanced Waiting Room.}\n@returns(200) Create waiting room response\n@errors {4XX: Create waiting room response failure}\n\n@endpoint POST /zones/{zone_id}/waiting_rooms/preview\n@desc Create a custom waiting room page preview\n@required {zone_id: str, custom_html: str= # Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom_page_html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge: 1. {{`waitTimeKnown`}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue_all is **true**. 2. {{`waitTimeFormatted`}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use: 3. {{`waitTime`}} Number of minutes of estimated wait for a user. 4. {{`waitTimeHours`}} Number of hours of estimated wait for a user (`Math.floor(waitTime/60)`). 5. {{`waitTimeHourMinutes`}} Number of minutes above the `waitTimeHours` value (`waitTime%60`). 6. {{`queueIsFull`}} Changes to **true** when no more people can be added to the queue.  To view the full list of variables, look at the `cfWaitingRoom` object described under the `json_response_enabled` property in other Waiting Room API calls.}\n@returns(200) Create a custom waiting room page preview response\n@errors {4XX: Create a custom waiting room page preview response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/settings\n@desc Get zone-level Waiting Room settings\n@required {zone_id: str}\n@returns(200) The current zone-level Waiting Room settings\n@errors {4XX: The current zone-level Waiting Room settings response failure}\n\n@endpoint PATCH /zones/{zone_id}/waiting_rooms/settings\n@desc Patch zone-level Waiting Room settings\n@required {zone_id: str}\n@optional {search_engine_crawler_bypass: bool=false # Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone. Verified search engine crawlers will not be tracked or counted by the waiting room system, and will not appear in waiting room analytics.}\n@returns(200) The updated zone-level Waiting Room settings\n@errors {4XX: The zone-level Waiting Room settings response failure}\n\n@endpoint PUT /zones/{zone_id}/waiting_rooms/settings\n@desc Update zone-level Waiting Room settings\n@required {zone_id: str}\n@optional {search_engine_crawler_bypass: bool=false # Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone. Verified search engine crawlers will not be tracked or counted by the waiting room system, and will not appear in waiting room analytics.}\n@returns(200) The updated zone-level Waiting Room settings\n@errors {4XX: The zone-level Waiting Room settings response failure}\n\n@endpoint DELETE /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n@desc Delete waiting room\n@required {waiting_room_id: str, zone_id: str}\n@returns(200) Delete waiting room response\n@errors {4XX: Delete waiting room response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n@desc Waiting room details\n@required {waiting_room_id: str, zone_id: str}\n@returns(200) Waiting room details response\n@errors {4XX: Waiting room details response failure}\n\n@endpoint PATCH /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n@desc Patch waiting room\n@required {waiting_room_id: str, zone_id: str, host: str # The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique., name: str # A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed., new_users_per_minute: int # Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world., total_active_users: int # Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.}\n@optional {additional_routes: [map{host: str, path: str}] # Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms., cookie_attributes: map{samesite: str, secure: str} # Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position., cookie_suffix: str # Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(__cf_waitingroom). If `cookie_suffix` is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using `additional_routes`., custom_page_html: str= # Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom_page_html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge: 1. {{`waitTimeKnown`}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue_all is **true**. 2. {{`waitTimeFormatted`}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use: 3. {{`waitTime`}} Number of minutes of estimated wait for a user. 4. {{`waitTimeHours`}} Number of hours of estimated wait for a user (`Math.floor(waitTime/60)`). 5. {{`waitTimeHourMinutes`}} Number of minutes above the `waitTimeHours` value (`waitTime%60`). 6. {{`queueIsFull`}} Changes to **true** when no more people can be added to the queue.  To view the full list of variables, look at the `cfWaitingRoom` object described under the `json_response_enabled` property in other Waiting Room API calls., default_template_language: str(en-US/es-ES/de-DE/fr-FR/it-IT/ja-JP/ko-KR/pt-BR/zh-CN/zh-TW/nl-NL/pl-PL/id-ID/tr-TR/ar-EG/ru-RU/fa-IR/bg-BG/hr-HR/cs-CZ/da-DK/fi-FI/lt-LT/ms-MY/nb-NO/ro-RO/el-GR/he-IL/hi-IN/hu-HU/sr-BA/sk-SK/sl-SI/sv-SE/tl-PH/th-TH/uk-UA/vi-VN)=en-US # The language of the default page template. If no default_template_language is provided, then `en-US` (English) will be used., description: str= # A note that you can use to add more details about the waiting room., disable_session_renewal: bool=false # Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If `true`, an accepted user will have session_duration minutes to browse the site. After that, they will have to go through the waiting room again. If `false`, a user's session cookie will be automatically renewed on every request., enabled_origin_commands: [str]= # A list of enabled origin commands., json_response_enabled: bool=false # Only available for the Waiting Room Advanced subscription. If `true`, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields: 1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**). 2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available. 3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`. 4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile). 5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it. 6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile). 7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**. 8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment. 9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website. 10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change. 11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is `reject`, there is no specified refresh time —\\_it will always be **zero**. 12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**. 13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue. 14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly. 15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin. 16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue. 17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties `prequeue_start_time`, `event_start_time`, and `event_end_time` in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists. 18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts. 19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts. 20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**. 21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends. 22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**. 23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts. 24. `turnstile`: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the `custom_html` template to ensure the Turnstile widget appears. 25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.  An example cURL to a waiting room could be:  \tcurl -X GET \"https://example.com/waitingroom\" \\ \t\t-H \"Accept: application/json\"  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 0, \t\t\t\"waitTime50Percentile\": 0, \t\t\t\"waitTime75Percentile\": 0, \t\t\t\"waitTimeFormatted\": \"10 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"fifo\", \t\t\t\"isFIFOQueue\": true, \t\t\t\"isRandomQueue\": false, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": false, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 0, \t\t\t\"timeUntilEventEndFormatted\": \"unavailable\", \t\t\t\"shuffleAtEventStart\": false \t\t} \t}  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 5, \t\t\t\"waitTime50Percentile\": 10, \t\t\t\"waitTime75Percentile\": 15, \t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"random\", \t\t\t\"isFIFOQueue\": false, \t\t\t\"isRandomQueue\": true, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": true, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 15, \t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\", \t\t\t\"shuffleAtEventStart\": true \t\t} \t}, path: str=/ # Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported., queue_all: bool=false # If queue_all is `true`, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable., queueing_method: str(fifo/random/passthrough/reject)=fifo # Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if `queue_all` is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are: 1. `fifo` **(default)**: First-In-First-Out queue where customers gain access in the order they arrived. 2. `random`: Random queue where customers gain access randomly, regardless of arrival time. 3. `passthrough`: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with `suspended`) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa. 4. `reject`: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses `reject`, and its events override this with `fifo`, `random`, or `passthrough`. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**., queueing_status_code: int(200/202/429)=200 # HTTP status code returned to a user while in the queue., session_duration: int=5 # Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route., suspended: bool=false # Suspends or allows traffic going to the waiting room. If set to `true`, the traffic will not go to the waiting room., turnstile_action: str(log/infinite_queue)=log # Which action to take when a bot is detected using Turnstile. `log` will have no impact on queueing behavior, simply keeping track of how many bots are detected in Waiting Room Analytics. `infinite_queue` will send bots to a false queueing state, where they will never reach your origin. `infinite_queue` requires Advanced Waiting Room., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed)=invisible # Which Turnstile widget type to use for detecting bot traffic. See [the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types) for the definitions of these widget types. Set to `off` to disable the Turnstile integration entirely. Setting this to anything other than `off` or `invisible` requires Advanced Waiting Room.}\n@returns(200) Patch waiting room response\n@errors {4XX: Patch waiting room response failure}\n\n@endpoint PUT /zones/{zone_id}/waiting_rooms/{waiting_room_id}\n@desc Update waiting room\n@required {waiting_room_id: str, zone_id: str, host: str # The host name to which the waiting room will be applied (no wildcards). Please do not include the scheme (http:// or https://). The host and path combination must be unique., name: str # A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed., new_users_per_minute: int # Sets the number of new users that will be let into the route every minute. This value is used as baseline for the number of users that are let in per minute. So it is possible that there is a little more or little less traffic coming to the route based on the traffic patterns at that time around the world., total_active_users: int # Sets the total number of active user sessions on the route at a point in time. A route is a combination of host and path on which a waiting room is available. This value is used as a baseline for the total number of active user sessions on the route. It is possible to have a situation where there are more or less active users sessions on the route based on the traffic patterns at that time around the world.}\n@optional {additional_routes: [map{host: str, path: str}] # Only available for the Waiting Room Advanced subscription. Additional hostname and path combinations to which this waiting room will be applied. There is an implied wildcard at the end of the path. The hostname and path combination must be unique to this and all other waiting rooms., cookie_attributes: map{samesite: str, secure: str} # Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position., cookie_suffix: str # Appends a '_' + a custom suffix to the end of Cloudflare Waiting Room's cookie name(__cf_waitingroom). If `cookie_suffix` is \"abcd\", the cookie name will be `__cf_waitingroom_abcd`. This field is required if using `additional_routes`., custom_page_html: str= # Only available for the Waiting Room Advanced subscription. This is a template html file that will be rendered at the edge. If no custom_page_html is provided, the default waiting room will be used. The template is based on mustache ( https://mustache.github.io/ ). There are several variables that are evaluated by the Cloudflare edge: 1. {{`waitTimeKnown`}} Acts like a boolean value that indicates the behavior to take when wait time is not available, for instance when queue_all is **true**. 2. {{`waitTimeFormatted`}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use: 3. {{`waitTime`}} Number of minutes of estimated wait for a user. 4. {{`waitTimeHours`}} Number of hours of estimated wait for a user (`Math.floor(waitTime/60)`). 5. {{`waitTimeHourMinutes`}} Number of minutes above the `waitTimeHours` value (`waitTime%60`). 6. {{`queueIsFull`}} Changes to **true** when no more people can be added to the queue.  To view the full list of variables, look at the `cfWaitingRoom` object described under the `json_response_enabled` property in other Waiting Room API calls., default_template_language: str(en-US/es-ES/de-DE/fr-FR/it-IT/ja-JP/ko-KR/pt-BR/zh-CN/zh-TW/nl-NL/pl-PL/id-ID/tr-TR/ar-EG/ru-RU/fa-IR/bg-BG/hr-HR/cs-CZ/da-DK/fi-FI/lt-LT/ms-MY/nb-NO/ro-RO/el-GR/he-IL/hi-IN/hu-HU/sr-BA/sk-SK/sl-SI/sv-SE/tl-PH/th-TH/uk-UA/vi-VN)=en-US # The language of the default page template. If no default_template_language is provided, then `en-US` (English) will be used., description: str= # A note that you can use to add more details about the waiting room., disable_session_renewal: bool=false # Only available for the Waiting Room Advanced subscription. Disables automatic renewal of session cookies. If `true`, an accepted user will have session_duration minutes to browse the site. After that, they will have to go through the waiting room again. If `false`, a user's session cookie will be automatically renewed on every request., enabled_origin_commands: [str]= # A list of enabled origin commands., json_response_enabled: bool=false # Only available for the Waiting Room Advanced subscription. If `true`, requests to the waiting room with the header `Accept: application/json` will receive a JSON response object with information on the user's status in the waiting room as opposed to the configured static HTML page. This JSON response object has one property `cfWaitingRoom` which is an object containing the following fields: 1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**). 2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available. 3. `waitTime`: Valid only when `waitTimeKnown` is **true**. Integer indicating the current estimated time in minutes the user will wait in the waiting room. When `queueingMethod` is **random**, this is set to `waitTime50Percentile`. 4. `waitTime25Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 25% of users that gain entry the fastest (25th percentile). 5. `waitTime50Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 50% of users that gain entry the fastest (50th percentile). In other words, half of the queued users are expected to let into the origin website before `waitTime50Percentile` and half are expected to be let in after it. 6. `waitTime75Percentile`: Valid only when `queueingMethod` is **random** and `waitTimeKnown` is **true**. Integer indicating the current estimated maximum wait time for the 75% of users that gain entry the fastest (75th percentile). 7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**. 8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment. 9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website. 10. `lastUpdated`: String displaying the timestamp as an ISO 8601 string of the user's last attempt to leave the waiting room and be let into the origin website. The user is able to make another attempt after `refreshIntervalSeconds` past this time. If the user makes a request too soon, it will be ignored and `lastUpdated` will not change. 11. `refreshIntervalSeconds`: Integer indicating the number of seconds after `lastUpdated` until the user is able to make another attempt to leave the waiting room and be let into the origin website. When the `queueingMethod` is `reject`, there is no specified refresh time —\\_it will always be **zero**. 12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**. 13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue. 14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly. 15. `isPassthroughQueue`: Boolean indicating if the waiting room uses a passthrough queue. Keep in mind that when passthrough is enabled, this JSON response will only exist when `queueAll` is **true** or `isEventPrequeueing` is **true** because in all other cases requests will go directly to the origin. 16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue. 17. `isEventActive`: Boolean indicating if an event is currently occurring. Events are able to change a waiting room's behavior during a specified period of time. For additional information, look at the event properties `prequeue_start_time`, `event_start_time`, and `event_end_time` in the documentation for creating waiting room events. Events are considered active between these start and end times, as well as during the prequeueing period if it exists. 18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts. 19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts. 20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**. 21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends. 22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**. 23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts. 24. `turnstile`: Empty when turnstile isn't enabled. String displaying an html tag to display the Turnstile widget. Please add the `{{{turnstile}}}` tag to the `custom_html` template to ensure the Turnstile widget appears. 25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.  An example cURL to a waiting room could be:  \tcurl -X GET \"https://example.com/waitingroom\" \\ \t\t-H \"Accept: application/json\"  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **fifo** and no event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 0, \t\t\t\"waitTime50Percentile\": 0, \t\t\t\"waitTime75Percentile\": 0, \t\t\t\"waitTimeFormatted\": \"10 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"fifo\", \t\t\t\"isFIFOQueue\": true, \t\t\t\"isRandomQueue\": false, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": false, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 0, \t\t\t\"timeUntilEventEndFormatted\": \"unavailable\", \t\t\t\"shuffleAtEventStart\": false \t\t} \t}  If `json_response_enabled` is **true** and the request hits the waiting room, an example JSON response when `queueingMethod` is **random** and an event is active could be:  \t{ \t\t\"cfWaitingRoom\": { \t\t\t\"inWaitingRoom\": true, \t\t\t\"waitTimeKnown\": true, \t\t\t\"waitTime\": 10, \t\t\t\"waitTime25Percentile\": 5, \t\t\t\"waitTime50Percentile\": 10, \t\t\t\"waitTime75Percentile\": 15, \t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\", \t\t\t\"queueIsFull\": false, \t\t\t\"queueAll\": false, \t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\", \t\t\t\"refreshIntervalSeconds\": 20, \t\t\t\"queueingMethod\": \"random\", \t\t\t\"isFIFOQueue\": false, \t\t\t\"isRandomQueue\": true, \t\t\t\"isPassthroughQueue\": false, \t\t\t\"isRejectQueue\": false, \t\t\t\"isEventActive\": true, \t\t\t\"isEventPrequeueing\": false, \t\t\t\"timeUntilEventStart\": 0, \t\t\t\"timeUntilEventStartFormatted\": \"unavailable\", \t\t\t\"timeUntilEventEnd\": 15, \t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\", \t\t\t\"shuffleAtEventStart\": true \t\t} \t}, path: str=/ # Sets the path within the host to enable the waiting room on. The waiting room will be enabled for all subpaths as well. If there are two waiting rooms on the same subpath, the waiting room for the most specific path will be chosen. Wildcards and query parameters are not supported., queue_all: bool=false # If queue_all is `true`, all the traffic that is coming to a route will be sent to the waiting room. No new traffic can get to the route once this field is set and estimated time will become unavailable., queueing_method: str(fifo/random/passthrough/reject)=fifo # Sets the queueing method used by the waiting room. Changing this parameter from the **default** queueing method is only available for the Waiting Room Advanced subscription. Regardless of the queueing method, if `queue_all` is enabled or an event is prequeueing, users in the waiting room will not be accepted to the origin. These users will always see a waiting room page that refreshes automatically. The valid queueing methods are: 1. `fifo` **(default)**: First-In-First-Out queue where customers gain access in the order they arrived. 2. `random`: Random queue where customers gain access randomly, regardless of arrival time. 3. `passthrough`: Users will pass directly through the waiting room and into the origin website. As a result, any configured limits will not be respected while this is enabled. This method can be used as an alternative to disabling a waiting room (with `suspended`) so that analytics are still reported. This can be used if you wish to allow all traffic normally, but want to restrict traffic during a waiting room event, or vice versa. 4. `reject`: Users will be immediately rejected from the waiting room. As a result, no users will reach the origin website while this is enabled. This can be used if you wish to reject all traffic while performing maintenance, block traffic during a specified period of time (an event), or block traffic while events are not occurring. Consider a waiting room used for vaccine distribution that only allows traffic during sign-up events, and otherwise blocks all traffic. For this case, the waiting room uses `reject`, and its events override this with `fifo`, `random`, or `passthrough`. When this queueing method is enabled and neither `queueAll` is enabled nor an event is prequeueing, the waiting room page **will not refresh automatically**., queueing_status_code: int(200/202/429)=200 # HTTP status code returned to a user while in the queue., session_duration: int=5 # Lifetime of a cookie (in minutes) set by Cloudflare for users who get access to the route. If a user is not seen by Cloudflare again in that time period, they will be treated as a new user that visits the route., suspended: bool=false # Suspends or allows traffic going to the waiting room. If set to `true`, the traffic will not go to the waiting room., turnstile_action: str(log/infinite_queue)=log # Which action to take when a bot is detected using Turnstile. `log` will have no impact on queueing behavior, simply keeping track of how many bots are detected in Waiting Room Analytics. `infinite_queue` will send bots to a false queueing state, where they will never reach your origin. `infinite_queue` requires Advanced Waiting Room., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed)=invisible # Which Turnstile widget type to use for detecting bot traffic. See [the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types) for the definitions of these widget types. Set to `off` to disable the Turnstile integration entirely. Setting this to anything other than `off` or `invisible` requires Advanced Waiting Room.}\n@returns(200) Update waiting room response\n@errors {4XX: Update waiting room response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events\n@desc List events\n@required {waiting_room_id: str, zone_id: str}\n@optional {page: num=1 # Page number of paginated results., per_page: num=25 # Maximum number of results per page. Must be a multiple of 5.}\n@returns(200) List events response\n@errors {4XX: List events response failure}\n\n@endpoint POST /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events\n@desc Create event\n@required {waiting_room_id: str, zone_id: str, event_end_time: str # An ISO 8601 timestamp that marks the end of the event., event_start_time: str # An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before `event_end_time`., name: str # A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {custom_page_html: str # If set, the event will override the waiting room's `custom_page_html` property while it is active. If null, the event will inherit it., description: str= # A note that you can use to add more details about the event., disable_session_renewal: bool # If set, the event will override the waiting room's `disable_session_renewal` property while it is active. If null, the event will inherit it., new_users_per_minute: int # If set, the event will override the waiting room's `new_users_per_minute` property while it is active. If null, the event will inherit it. This can only be set if the event's `total_active_users` property is also set., prequeue_start_time: str # An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before `event_start_time`., queueing_method: str # If set, the event will override the waiting room's `queueing_method` property while it is active. If null, the event will inherit it., session_duration: int # If set, the event will override the waiting room's `session_duration` property while it is active. If null, the event will inherit it., shuffle_at_event_start: bool=false # If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary., suspended: bool=false # Suspends or allows an event. If set to `true`, the event is ignored and traffic will be handled based on the waiting room configuration., total_active_users: int # If set, the event will override the waiting room's `total_active_users` property while it is active. If null, the event will inherit it. This can only be set if the event's `new_users_per_minute` property is also set., turnstile_action: str(log/infinite_queue) # If set, the event will override the waiting room's `turnstile_action` property while it is active. If null, the event will inherit it., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed) # If set, the event will override the waiting room's `turnstile_mode` property while it is active. If null, the event will inherit it.}\n@returns(200) Create event response\n@errors {4XX: Create event response failure}\n\n@endpoint DELETE /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n@desc Delete event\n@required {event_id: str, waiting_room_id: str, zone_id: str}\n@returns(200) Delete event response\n@errors {4XX: Delete event response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n@desc Event details\n@required {event_id: str, waiting_room_id: str, zone_id: str}\n@returns(200) Event details response\n@errors {4XX: Event details response failure}\n\n@endpoint PATCH /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n@desc Patch event\n@required {event_id: str, waiting_room_id: str, zone_id: str, event_end_time: str # An ISO 8601 timestamp that marks the end of the event., event_start_time: str # An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before `event_end_time`., name: str # A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {custom_page_html: str # If set, the event will override the waiting room's `custom_page_html` property while it is active. If null, the event will inherit it., description: str= # A note that you can use to add more details about the event., disable_session_renewal: bool # If set, the event will override the waiting room's `disable_session_renewal` property while it is active. If null, the event will inherit it., new_users_per_minute: int # If set, the event will override the waiting room's `new_users_per_minute` property while it is active. If null, the event will inherit it. This can only be set if the event's `total_active_users` property is also set., prequeue_start_time: str # An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before `event_start_time`., queueing_method: str # If set, the event will override the waiting room's `queueing_method` property while it is active. If null, the event will inherit it., session_duration: int # If set, the event will override the waiting room's `session_duration` property while it is active. If null, the event will inherit it., shuffle_at_event_start: bool=false # If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary., suspended: bool=false # Suspends or allows an event. If set to `true`, the event is ignored and traffic will be handled based on the waiting room configuration., total_active_users: int # If set, the event will override the waiting room's `total_active_users` property while it is active. If null, the event will inherit it. This can only be set if the event's `new_users_per_minute` property is also set., turnstile_action: str(log/infinite_queue) # If set, the event will override the waiting room's `turnstile_action` property while it is active. If null, the event will inherit it., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed) # If set, the event will override the waiting room's `turnstile_mode` property while it is active. If null, the event will inherit it.}\n@returns(200) Patch event response\n@errors {4XX: Patch event response failure}\n\n@endpoint PUT /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}\n@desc Update event\n@required {event_id: str, waiting_room_id: str, zone_id: str, event_end_time: str # An ISO 8601 timestamp that marks the end of the event., event_start_time: str # An ISO 8601 timestamp that marks the start of the event. At this time, queued users will be processed with the event's configuration. The start time must be at least one minute before `event_end_time`., name: str # A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.}\n@optional {custom_page_html: str # If set, the event will override the waiting room's `custom_page_html` property while it is active. If null, the event will inherit it., description: str= # A note that you can use to add more details about the event., disable_session_renewal: bool # If set, the event will override the waiting room's `disable_session_renewal` property while it is active. If null, the event will inherit it., new_users_per_minute: int # If set, the event will override the waiting room's `new_users_per_minute` property while it is active. If null, the event will inherit it. This can only be set if the event's `total_active_users` property is also set., prequeue_start_time: str # An ISO 8601 timestamp that marks when to begin queueing all users before the event starts. The prequeue must start at least five minutes before `event_start_time`., queueing_method: str # If set, the event will override the waiting room's `queueing_method` property while it is active. If null, the event will inherit it., session_duration: int # If set, the event will override the waiting room's `session_duration` property while it is active. If null, the event will inherit it., shuffle_at_event_start: bool=false # If enabled, users in the prequeue will be shuffled randomly at the `event_start_time`. Requires that `prequeue_start_time` is not null. This is useful for situations when many users will join the event prequeue at the same time and you want to shuffle them to ensure fairness. Naturally, it makes the most sense to enable this feature when the `queueing_method` during the event respects ordering such as **fifo**, or else the shuffling may be unnecessary., suspended: bool=false # Suspends or allows an event. If set to `true`, the event is ignored and traffic will be handled based on the waiting room configuration., total_active_users: int # If set, the event will override the waiting room's `total_active_users` property while it is active. If null, the event will inherit it. This can only be set if the event's `new_users_per_minute` property is also set., turnstile_action: str(log/infinite_queue) # If set, the event will override the waiting room's `turnstile_action` property while it is active. If null, the event will inherit it., turnstile_mode: str(off/invisible/visible_non_interactive/visible_managed) # If set, the event will override the waiting room's `turnstile_mode` property while it is active. If null, the event will inherit it.}\n@returns(200) Update event response\n@errors {4XX: Update event response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}/details\n@desc Preview active event details\n@required {event_id: str, waiting_room_id: str, zone_id: str}\n@returns(200) Preview active event details response\n@errors {4XX: Preview active event details response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules\n@desc List Waiting Room Rules\n@required {waiting_room_id: str, zone_id: str}\n@returns(200) List Waiting Room Rules response\n@errors {4XX: List Waiting Room Rules response failure}\n\n@endpoint POST /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules\n@desc Create Waiting Room Rule\n@required {waiting_room_id: str, zone_id: str, action: str # The action to take when the expression matches., expression: str # Criteria defining when there is a match for the current rule.}\n@optional {description: str= # The description of the rule., enabled: bool=true # When set to true, the rule is enabled.}\n@returns(200) Create Waiting Room Rule response\n@errors {4XX: Create Waiting Room Rule response failure}\n\n@endpoint PUT /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules\n@desc Replace Waiting Room Rules\n@required {waiting_room_id: str, zone_id: str}\n@returns(200) Replace Waiting Room Rules response\n@errors {4XX: Replace Waiting Room Rules response failure}\n\n@endpoint DELETE /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules/{rule_id}\n@desc Delete Waiting Room Rule\n@required {rule_id: str, waiting_room_id: str, zone_id: str}\n@returns(200) Delete Waiting Room Rule response\n@errors {4XX: Delete Waiting Room Rule response failure}\n\n@endpoint PATCH /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules/{rule_id}\n@desc Patch Waiting Room Rule\n@required {rule_id: str, waiting_room_id: str, zone_id: str, action: str # The action to take when the expression matches., expression: str # Criteria defining when there is a match for the current rule.}\n@optional {description: str= # The description of the rule., enabled: bool=true # When set to true, the rule is enabled., position: map # Reorder the position of a rule}\n@returns(200) Patch Waiting Room Rule response\n@errors {4XX: Patch Waiting Room Rule response failure}\n\n@endpoint GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/status\n@desc Get waiting room status\n@required {waiting_room_id: str, zone_id: str}\n@returns(200) Get waiting room status response\n@errors {4XX: Get waiting room status response failure}\n\n@endpoint GET /zones/{zone_id}/web3/hostnames\n@desc List Web3 Hostnames\n@required {zone_id: str}\n@returns(200) List Web3 Hostnames response.\n@errors {4XX: List Web3 Hostnames error response (4XX)., 5XX: List Web3 Hostnames response failure.}\n\n@endpoint POST /zones/{zone_id}/web3/hostnames\n@desc Create Web3 Hostname\n@required {zone_id: str, name: str # Specify the hostname that points to the target gateway via CNAME., target: str(ethereum/ipfs/ipfs_universal_path) # Specify the target gateway of the hostname.}\n@optional {description: str # Specify an optional description of the hostname., dnslink: str # Specify the DNSLink value used if the target is ipfs.}\n@returns(200) Create Web3 Hostname response.\n@errors {4XX: Create Web3 Hostname error response (4XX)., 5XX: Create Web3 Hostname response failure.}\n\n@endpoint DELETE /zones/{zone_id}/web3/hostnames/{identifier}\n@desc Delete Web3 Hostname\n@required {identifier: str, zone_id: str}\n@returns(200) Delete Web3 Hostname response.\n@errors {4XX: Delete Web3 Hostname error response (4XX)., 5XX: Delete Web3 Hostname response failure.}\n\n@endpoint GET /zones/{zone_id}/web3/hostnames/{identifier}\n@desc Web3 Hostname Details\n@required {identifier: str, zone_id: str}\n@returns(200) Web3 Hostname Details response.\n@errors {4XX: Web3 Hostname Details error response (4XX)., 5XX: Web3 Hostname Details response failure.}\n\n@endpoint PATCH /zones/{zone_id}/web3/hostnames/{identifier}\n@desc Edit Web3 Hostname\n@required {identifier: str, zone_id: str}\n@optional {description: str # Specify an optional description of the hostname., dnslink: str # Specify the DNSLink value used if the target is ipfs.}\n@returns(200) Edit Web3 Hostname response.\n@errors {4XX: Edit Web3 Hostname error response (4XX)., 5XX: Edit Web3 Hostname response failure.}\n\n@endpoint GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list\n@desc IPFS Universal Path Gateway Content List Details\n@required {identifier: str, zone_id: str}\n@returns(200) IPFS Universal Path Gateway Content List Details response.\n@errors {4XX: IPFS Universal Path Gateway Content List Details error response (4XX)., 5XX: IPFS Universal Path Gateway Content List Details response failure.}\n\n@endpoint PUT /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list\n@desc Update IPFS Universal Path Gateway Content List\n@required {identifier: str, zone_id: str, action: str # Behavior of the content list., entries: [map{content: str, created_on: str(date-time), description: str, id: str, modified_on: str(date-time), type: str}] # Provides content list entries.}\n@returns(200) Update IPFS Universal Path Gateway Content List response.\n@errors {4XX: Update IPFS Universal Path Gateway Content List error response (4XX)., 5XX: Update IPFS Universal Path Gateway Content List response failure.}\n\n@endpoint GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries\n@desc List IPFS Universal Path Gateway Content List Entries\n@required {identifier: str, zone_id: str}\n@returns(200) List IPFS Universal Path Gateway Content List Entries response.\n@errors {4XX: List IPFS Universal Path Gateway Content List Entries error response (4XX)., 5XX: List IPFS Universal Path Gateway Content List Entries response failure.}\n\n@endpoint POST /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries\n@desc Create IPFS Universal Path Gateway Content List Entry\n@required {identifier: str, zone_id: str, content: str # Specify the CID or content path of content to block., type: str(cid/content_path) # Specify the type of content list entry to block.}\n@optional {description: str # Specify an optional description of the content list entry.}\n@returns(200) Create IPFS Universal Path Gateway Content List Entry response.\n@errors {4XX: Create IPFS Universal Path Gateway Content List Entry error response (4XX)., 5XX: Create IPFS Universal Path Gateway Content List Entry response failure.}\n\n@endpoint DELETE /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier}\n@desc Delete IPFS Universal Path Gateway Content List Entry\n@required {content_list_entry_identifier: str, identifier: str, zone_id: str}\n@returns(200) Delete IPFS Universal Path Gateway Content List Entry response.\n@errors {4XX: Delete IPFS Universal Path Gateway Content List Entry error response (4XX)., 5XX: Delete IPFS Universal Path Gateway Content List Entry response failure.}\n\n@endpoint GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier}\n@desc IPFS Universal Path Gateway Content List Entry Details\n@required {content_list_entry_identifier: str, identifier: str, zone_id: str}\n@returns(200) IPFS Universal Path Gateway Content List Entry Details response.\n@errors {4XX: IPFS Universal Path Gateway Content List Entry Details error response (4XX)., 5XX: IPFS Universal Path Gateway Content List Entry Details response failure.}\n\n@endpoint PUT /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier}\n@desc Edit IPFS Universal Path Gateway Content List Entry\n@required {content_list_entry_identifier: str, identifier: str, zone_id: str, content: str # Specify the CID or content path of content to block., type: str(cid/content_path) # Specify the type of content list entry to block.}\n@optional {description: str # Specify an optional description of the content list entry.}\n@returns(200) Edit IPFS Universal Path Gateway Content List Entry response.\n@errors {4XX: Edit IPFS Universal Path Gateway Content List Entry error response (4XX)., 5XX: Edit IPFS Universal Path Gateway Content List Entry response failure.}\n\n@endpoint GET /zones/{zone_id}/workers/routes\n@desc List Routes\n@required {zone_id: str}\n@returns(200) List Routes response.\n@errors {4XX: List Routes response failure.}\n\n@endpoint POST /zones/{zone_id}/workers/routes\n@desc Create Route\n@required {zone_id: str, id: any, pattern: str # Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).}\n@optional {script: str # Name of the script to run if the route matches.}\n@returns(200) Create Route response.\n@errors {4XX: Create Route response failure.}\n\n@endpoint DELETE /zones/{zone_id}/workers/routes/{route_id}\n@desc Delete Route\n@required {route_id: str, zone_id: str}\n@returns(200) Delete Route response.\n@errors {4XX: Delete Route response failure.}\n\n@endpoint GET /zones/{zone_id}/workers/routes/{route_id}\n@desc Get Route\n@required {route_id: str, zone_id: str}\n@returns(200) Get Route response.\n@errors {4XX: Get Route response failure.}\n\n@endpoint PUT /zones/{zone_id}/workers/routes/{route_id}\n@desc Update Route\n@required {route_id: str, zone_id: str, id: any, pattern: str # Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).}\n@optional {script: str # Name of the script to run if the route matches.}\n@returns(200) Update Route response.\n@errors {4XX: Update Route response failure.}\n\n@endgroup\n\n@end\n"}}